Certificação Profissional



Uma das premissas básicas de gestão rege que, para se avaliar algo, este algo deve ser, de alguma forma, mensurável. Portanto, para se determinar o nível de conhecimento de um profssional, é necessário que esse conhecimento seja medido e balizado, para então poder ser comparado e verifcado. As certifcações profssionais de TI têm exatamente essa função:
servir como uma métrica padronizada que permita mensurar a quantidade e a qualidade de conhecimentos e habilidades específcas que um determinado profssional possui e,com base nessas métricas, atestar para o mundo se o profssional em questão é ou não versado em uma
determinada tecnologia. Existe hoje uma infnidade de certifcações específcas para TI à dispo-
sição dos profssionais que queiram comprovar suas habilidades para o mercado. A questão aqui é saber separar “o joio do trigo”. O profssional precisa ser extremamente criterioso
na escolha da certifcação, levando em conta fatores como aceitação e
respeitabilidade pelo mercado, custo e tempo para obtenção, além do retorno do investimento, entre outros. De uma forma geral, o mais importante é verifcar o que determinada certificação trará de benefícios verifcáveis para o profssional
que a obtiver.


Read More

Maddog inicia projeto para criar 3 milhões de empregos com Linux no Brasil‏




O diretor-executivo da Linux International garante que o Brasil é o melhor país para o Linux e inicia projeto para criação de pelo menos 3 milhões de empregos.

O diretor da Linux International pretende implantar o projeto-piloto no país em abril do ano que vem. “E, depois de três meses de piloto, se obtivermos sucesso, então começaremos a abri-lo, para que as pessoas sejam capazes de obter a informação e gerar seus próprios serviços”, destacou.

Maddog acredita ser possível, ainda, “dobrar o número de programadores de software livre no mundo, melhorar a educação de forma geral, permitir que o mundo todo economize cerca de R$ 10 bilhões por dia e, acima de tudo, conseguir tudo isso sem nenhum dinheiro dos contribuintes”. Para ele, “tudo é possível. Só depende do quão arduamente nós tentarmos”.

O Projeto baseia-se em três pilares: hardware, rede e empreendedorismo. John Maddog Hall garante que com o uso de vários computadores de baixíssimo custo (ThinClient), com Linux e um servidor, ele pretende conectar todos os computadores de forma a criar uma grande bolha de rede sem fio. Cada ThinClient também será um roteador e compartilhará parte da sua banda de rede para os demais usuários.

Imagine a demanda por profissionais preparados para instalar e configurar o servidor, vender o serviço em prédios e vizinhança, instalar os ThinClients, treinar os clientes usuários, agregar novos serviços, como construção de websites, firewall, prestar serviços de pós-vendas e manter a rede operacional.

E VOCÊ, ESTÁ PREPARADO??

Garanta-se no mercado. Comprove seus conhecimentos. Certifique-se!
Read More

RODA VIVA - JON 'MADDOG' HALL





Entrevista com o Jon Maddog Hall, na TV cultura, você que não pode assistir ao programa, assista aqui e veja o guru do software livre em ação.


Mais video relacionados: clique aqui
Read More

Linux Professional Institute (LPI) exam prep


Para quem busca maiores referências para estudar para as provas LPI. O site da ibm.com disponibiliza uma serie de matériais para estudo. Eles disponibilizam um treinamento das provas LPIC-I até LPIC-3. Embora o contéudo ainda está desatualizado com os antigos objetivos das provas, ainda continua sendo uma referência para estudos, pois tem contéudos que eles abrangem muito.


Para você pode visualizar os arquivos em pdf, você precisa criar um ID da IBM, com o seu e-mail e uma senha. E logo depois você já conseguirá visualizar os matérias.

Vale a pena conférir.

clique aqui visualizar
Read More

Treinamento a distância, Certificação Linux LPI - Material



O Treinamento Certificação Linux LPI, está tendo muito sucesso por isso não pode parar, divulgue aqui o seu comentário se você já participou, e de o seu recado para quem quer participar.

Se você está participando do treinamento, comente aqui =)
Read More

Certificação Ubuntu - UCP Ubuntu Certified Professional



O Ubuntu Certified Professional (UCP) é uma certificação de formação com base no nível da Certificação LPI-I. Para ganhar a UCP, os candidatos são obrigados a passar na LPI 101, LPI 102 e os exame UCP-199 do Ubuntu. Os exames podem ser realizados em qualquer ordem. Esta certificação proporciona os participantes as habilidades necessárias para implementar e configurar o Ubuntu desktops e servidores em um ambiente empresarial. Ela apresenta aos participantes as competências básicas exigidas dos administradores do sistema Ubuntu. Baseadas em cenários, os participantes irão responder sobre como selecionar as soluções adequadas e ferramentas adequadas para resolver problemas no dia-dia de uma empresa.

Pré-requisitos

Os canditados devem ter um bom conhecimento geral de informática e administração de sistema de outros sistmas operacionais. Eles também devem ter uma compreensão básica:

Como o sistema Linux funciona e interage com o usuário.

Interface de linha de comando, tal como o Dos ou UnixShell

Experiência em Unix é uma vantagem.


Exames

Para se tornar um Ubuntu Certified Professional, os participantes devem completar com sucesso a LPI101, Ubuntu 199 e LPI 102. Estas provas podem ser feitas em qualquer ordem e os participantes não precisa se inscrever em nenhum curso, para participar dos exames. Um candidato que já possui uma certificação LPI-1 válida precisa apenas passa no exame Ubuntu 199.


A Certificação Professional Ubuntu, Ubuntu 199, ( como os exames pré-requisito LPI) estão disponiveis em todos centros de testes do mundo: www.prometric.com ou www.vue.com. Os candidatos precisa se registrar e obter uma LPI ID, www.lpi.org antes de fazer o exame Ubuntu ou o exame LPI pela primeira vez.

Preço da prova UCP-199 cerca de $155,oo.

Veja aqui os objetivos do exame detalhado.

Por favor, fique atento a seguinte política dos exames Ubuntu e LPI.

Se você fez a prova Ubuntu 199 pela primeira vez, e reprovou, você precisa esperar pelo menos uma semana para fazer ela novamente.

Se você fez a prova ubuntu 188 pela segunda vez, e reprovou, você precisa esperar 90 dias para fazer a prova novamente.

Qualquer participante que não obedecer por essa política ficará suspenso, e não poderá fazer as provas novamente no período de dois anos.

fonte: www.ubuntu.com


Read More

LPI ganha novo site em português




LPI – Linux Professional Institute, recebeu o site totalmente traduzido para o português pela Linux New Media.

O novo link é www.lpi-brasil.org e nele você encontra todas as anotações oficiais LPI.
Read More

Apresentação da certificação Linux



Apresentação da Certificação Linux, falando das principais mudanças da prova, que foi completamente modificada apartir do mês de abril/2009.


Como fazer as provas da LPI - parte 2


Trecho do Livro Certificação Linux LPI-2



Read More

RAID - Redundant Array of Inexpensive Disks


Objetivos

  • Entender os principais niveis de RAID;
  • Configurar RAID-1;
  • Verificar o estado do RAID;
  • Simular falhas no RAID;

Introdução teórica

Redundant Array of Inexpensive Disks

O RAID foi desenvolvido em 1988 como uma solução barata para garantir a disponibilidade da informação armazenada em discos, utilizando para isso uma configuração especial de discos rígidos, que podem oferecer redundancia em caso de falhas e ganhos de performance em escrita ou leitura, dependendo da configuração do conjunto RAID. Como principais vantagens, o RAID oferece:

  • Ganho de desempenho no acesso a leitura ou gravação.
  • Redundancia em caso de falha em um dos discos.
  • Um múltiplo de várias unidades de discos.
  • Facilidade em recuperação de contéudo perdido.


Existem duas formas de criarmos um RAID.

Via software: Feito por aplicativos e módulos do sistema operacional, o RAID via software só entra em funcionamento depois que o kernel é carregado na memória do computador. A principal vantagem é a facilidade de configuração e a flexibilidade, já que podemos trabalhar com vários discos diferentes. A principal desvantagem é a dependencia da correta configuração do sistema operacional.

Via hardware: Feito por uma placa controladora que conecta um disco ou outro. A principal vantagem é o desempenho, já que um RAID via hardware é mais rápido e independe do sistema operacional. A principal desvantagem, é que a placa controladora se torna um Single Point of Failure, ou seja, é necessário ter uma controladora de disco igual ou compatível com a que você possui para o caso de falhas neste hardware.

Niveis de RAID

Raid 0:O RAID 0 é utlizado quando o intuito é simplesmente colocar dois discos rígidos para trabalhar como um único volume, o que torna o acesso a leitura e gravação mais eficiente. O RAID0 não implementa nenhum tipo de redundância, ou seka, os dados serão perdidos se um ou mais discos falharem.



RAID 1 : O RAID 1 é utilizado quando o intuito é colocar dois discos rígidos para trabalharem como um único volume, porém, com espelhamento. Isso quer dizer que, se um dos meus volumes físicos falharem, os dados continuarão sendo acessados até que um técnico efetue a troca do disco defeituoso.



RAID 5 – O Raid 5 utiliza o conceito de paridade para garantir a disponibilidade dos dados. A cada gravação, uma parte a informação segue para o DISCO A, a outra metade para o DISCO B, e o resultado da paridade para o disco C. Na próxima gravação, a paridade é alternada, de forma que, ao perder qualquer um dos discos, a informação pode ser recuperada a partir dos discos restantes.




RAID 10 - Raid 10 e a junção de dois volumes RAID1 em um volume RAID0. Com isso, dobramos a velocidade de leitura e gravação, além de tolerância a falhas de até dois discos, um disco para cada volume RAID1.




Pratica dirigida

1 – Abra o particionador e crie 3 partições sendo do tipo “Raid autodetect”:

# cfdisk /dev/sda

2 – Verifique se o pacote mdadm já está instalado, e instale-o se necessário:

# dpkg -l mdadm

# aptitude install mdadm

3 – Depois de instalar o pacote mdadm, vá a um segundo terminal visualize o estado do RAID no kernel:

# watch cat /proc/mdadmstat

Criando um RAID

1 – Vamos criar o RAID utilizando o nível 1 utilizando “dois discos” e um “spare”:

# mdadm –create /dev/md0 –level=1 –raid-devices=2 –spare-devices=1 /dev/sda11 /dev/sda12 /dev/sda13

2 – No segundo terminal, verifique a sincronização do RAID

3 – Depois de criarmos o RAID, é necessário editar o arquivo /dev/mdadm/mdadm.conf, que será utilizado durante a administração do RAID:

# vim /etc/mdadm/mdadm.conf

4 -Modifique o arquivo, adicionando o seguinte contéudo:

DEVICE /dev/sda11 /dev/sda12 /dev/sda13

ARRAY /dev/md0 devices=/dev/sda11,/dev/sda12,/dev/sda13

5 – Depois de criarmos o RAID, aplique o sistema de arquivos ext3 no dispositivo /dev/md0:

# mkfs.ext3 /dev/md0

6 – Crie um ponto de montagem em /mnt/raid

# mkdir /mnt/raid

7 – Montando o RAID:

# mount -t ext3 /dev/md0 /mnt/raid

Verificando o funcionamento do RAID

1 – Verificando os dispositivos individualmente:

# mdadm -E /dev/sda11

# mdadm -E /dev/sda12

# mdadm -E /dev/sda13

2 – Para testar a redundância, vamos criar um script chamado “testeRaid.sh” que escreve em um arquivo de 3 em 3 segundos.

Vim /root/raidTest.sh

#!/bin/bash
while true ; do
date >> /mnt/raid/dados.txt
sleep 3
done

chmod +x raidTest.sh

/root/raidTest.sh

Administrando o RAID

Vamos aprender a adicionar, remover e simular uma falha em um dos discos do RAID.

1 – Provocando uma falha:

# mdadm /dev/md0 –fail /dev/sda11

2 – Verificando os detalhes do RAID após a falha:

# mdadm –detail /dev/md0

3 – Removendo o dísco defeituoso:

# mdadm /dev/md0 –remove /dev/sda11

# mdadm –detail /dev/md0

4 – Adicionando um disco ao RAID:

# mdadm /dev/md0 –add /dev/sda11

# mdadm –detail /dev/md0

5 – Para parar o RAID:

# mdadm -S /dev/md0

6 – Reiniciando o RAID

# mdadm -As /dev/md0

7 – Removendo o Raid:

# mdadm -S /dev/md0

# mdadm –manage –remove /dev/md0

DICA LPI: Ao prestar a prova, esteja familiarizado com o comando mdadm e suas funções básicas, como criar e remover um volume RAID.

As provas podem perguntar conceitos de RAID.


Read More

Logical Volume Manager



objetivos

  • Com o LVM podemos gerenciar, criar, aumentar tamanho, diminuir tamanho entre as partições existentes no LVM.
  • O LVM é bastante utilizado em sistemas virtualizados, onde há grande necessidade de várias partições.

Introdução teórica.

A sigla LVM significa: Logical Volume Manager. Ele é um gerenciador de discos que trabalha com camadas lógicas, que podem ser redimensionadas, aumentando ou diminuindo sem prejudicar o funcionamento do sistema.
A necessidade de se usar LVM é para que possamos aproveitar ao máximo o tamanho do HD ou de vários HD's.


Como funciona o LVM

O LVM é usado para agrupar vários discos de forma que o gerenciamento dos mesmos seja viável em um servidor de produção que não pode ficar desligado.
Vamos imaginar que temos 3 HD's em nossa máquina, e gostariamos de aproveitar ao máximo de seus tamanhos.

Para não ter que se preocupar com o tamanho das partições logo de imediato, iremos usar o LVM para que possamos gerenciar os tamanhos das partições sem precisar fazer as famosas “gambiarras”. Para trabalhar com LVM as partições precisam estar formatadas com o tipo LVM. O LVM Físico do LVM. Esses volumes físicos serão divididos em vários Volumes lógicos como se fossem uma divisão de um disco (partição) para alocar o determinado ponto de montagem, e isso vai trazer a flexibilidade para redimensionar a determinada partição.
Com mais detalhes vejamos as seguintes camadas que o LVM trabalha:

PV Physical Volume (Volume Físico): Os PV's são as partições que serão usadas para compor um disco no formato LVM, eles servem para dar um UUID, que é número de identificação de cada disco.

VG Volume Group (Grupo de Volume): Os VG's são um agrupamento de PV's, podemos ter vários VG's. Um exemplo é que podemos pegar a partições hd3 e hdb4 que estão declaradas como PV's e dizer que eles são o VG01, nisso podemos dividir esse grupo em vários pedaços com tamanhos específicos para ser associados a um diretório. Podemos utilizar todo o tamanho ou podemos deixar um espaço sobrando para quando precisar, aumentar os pedaços.

LV Logical Volume (Volume Lógico): Os Lvs são os pedaços que falamos agora pouco, podemos classifica-los como sendo as partições de um disco, e VG sendo o disco. Eles são as partes que podem ser acessadas pelos usuários e que serão associados a um ponto de montagem específicos. Um exemplo é falar que o PV01 será montado no diretório /home.


PE Physical (Extensão Fisica): Quando um PV é inserido em um VG o LVM o divide em várias partes de igual tamanho e essas partes são associadas a uma LE (Logical Extent), o menor valor de alocação dentro de um VG ( do ponto de vista do LVM). No AIX são conhecidos como PP (Physical Partition) e LP (Logical Partition), respectivamente.


VGDA (Volume Group Descriptor Area): Essa área é uma tabela de alocação do VG. Nela há todos os dados do VG. É dividida em quatro partes básicas: descritor de PV, descritor de VG, descritor de LV e vários descritores de PE e LE.

Definindo as Partições
Antes de criamos as partições LVM, temos que ter em mente nossa tabela de particionamento:

# cat /etc/fstab

Agora iremos ver nossas partições:

# cat /proc/partitions

Partições Livres:


1 – Nas partições para realização deste trabalho, defina o tipo das partições como 8E, e utilize o cfdisk para realização desta tarefa. Não esqueça de reiniciar o computador.

# cfdisk /dev/hda


Pratica Dirigida


1 – Verifique os pacotes necessários ao LVM.

# dpkg -l Lvm2

Caso não tenha:

# aptitude install lvm2

2 – Gere o arquivo de configuração do LVM, utilize o comando vgscan.

# vgscan

3 – Defina as novas partições como o PV (Phisical Volume ou Volume Físico).

# pvcreate /dev/sda11

# pvcreate /dev/sda12

4 – Verifique que as novas partições já estão utilizando LVM com sucesso:


# pvscan

O pvscan, vai mostrar o dispositivo, o tamanho de cada partição, e a soma das duas partições:

5 – Defina um Grupo de Volumes com os volumes físicos criados, nosso caso será o vg001:

# vgcreate vg001 /dev/sda11 /dev/sda12

6 – Consultando o Grupo de Volumes (VG).

# vgdisplay

# vgdisplay -v vg001

7 – Criando um Volume Lógico (LV) denominando teste:

# lvcreate -L 512 -n lv01 vg001

8 – Listando informações do Volume Lógico (LV):

# vgdisplay -v /dev/vg001/lv01

9 – Consultando o Grupo de Volumes (VG), Repare que agora também temos os detalhe do “LV teste”:

# vgdisplay -v vg001

10 – Listando o device do LV criado:

# ls -l /dev/vg001/lv01

11 – Verificando os Lvs criados:

# lvs

12 – Criando um sistema de arquivo EXT3 no Volume Lógico:

# mkfs -t ext3 /dev/vg001/lv01


Usando o LVM

1 – Criando um ponto de montagem para o LVM (caso seja necessário):

# mkdir /lvm

2 – Montando manualmente o sistema LVM criado:

# mount -t ext3 /dev/vg001/lv01 /lvm

3 – Verificando se o dispositivo está montado:

# df -h
# mount

Administrando o LVM

1 – Desmonte o LVM:

# umount /lvm

2 – Redimensione o Volume Lógico (LV)>

# lvextend -L +256mb /dev/vg001/lv01

3 – Verifique o volume:

# e2fsck -f /dev/vg001/lv01

Essa verificação é muito importante, faz a verificação no disco. Caso houver algum erro, é necessário fazer um “restauração”.

Caso aconteça isso, podemos re-estruturar a partição:

4 – Reestruturando o sistema de arquivos do Volume Lógico (LV):

# resize2fs /dev/vg001/lv01

5 – Montando o LV:

# mount -t ext3 /dev/vg001/lv01 /lvm

6 – Verificando a tabela de partições montadas:

# df -h

7 – Desmonte o volume LVM:

# umount /lvm

Troubleshooting

Troubleshooting é a forma com a qual iremos resolver o problema,

1 – Reduzindo o LV. Em toda redução de espaço, há risco de perda de dados. Se quiser, para executar este procedimento, execute um backup da área de disco:

# lvreduce – L -256mb /dev/vg001/lv01

2 – Reestruturando o sistema de arquivos do Volume Lógico (LV):

# resize2fs /dev/vg001/lv01

3 – Montando o LV:

# mount -t ext3 /dev/vg001/kv01 /lvm

4 – Verificando a tabela de partições montadas:

# df -h

Você ira perceber que o tamanho da partição realmente diminui:

5 – Desmonte o volume LVM:

# umount /lvm

6 – Removendo o LV:

# lvremove /dev/vg001/lv01

Caso a partição esteja montada, não vai ser possível remover.

7 – Após a remoção, verifique que não à mais o LV teste:

# lvs

8 – Removendo o grupo:

# vgremove vg001

9 – O comando vgdisplay não ira mostrar mais nada:

# vgdisplay

Exercicios teóricos

Como eu faço para extender uma partição?
Como eu faço para remover uma partição?
Eu posso formatar a partição da LVM, mesmo que ela contenha dados já criados nela?

Read More

Ajustes Iniciais




Objetivos
  • Configurar a rede;
  • Configurar hostname;
  • Desativar serviços desnecessários;
  • Configurar repositório de rede.

Introdução teórica.

Antes de iniciar o trabalho de instalação e configuração de serviços, é necessário checar se algumas configurações são válidas.

Todo Administrador de Sistemas tem, ou deveria ter ciência de que um servidor deve executar somente os softwares necessários, eliminando assim riscos de segurança e ajudando a melhorar a performance.


Configurando a rede

Vamos nos certificar que o arquivo /etc/network/interfaces está corretamente configurado:

# vim /etc/network/interfaces

# interface loopback

auto lo

iface lo inet loopback

# interfaces de rede primária

auto eth0

iface eth0 inet static
address 192.168.1.x
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.254

No RedHat o arquivo é:

# vim /etc/sysconfig/network/ifcfg-eth0

Configurando a resolução de nomes

1 – Edite o arquivo /etc/resolv.conf:

# vim /etc/resolv.conf

2 – Adicione o endereço IP do servidor DNS:

nameserver 4.2.2.2

Configurando o hostname

# vim /etc/hostname

2 – Adicione o nome do computador:

phoenix_server

3 – Por ultimo, edite o arquivo de /etc/hosts:

# vim /etc/hosts

127.0.0.1 localhost.localdomain locahost
192.168.1.x phoenix_server.com.br phoenix_server

Remover serviços desnecessários

1 – Verificando serviços de rede com netstat:

# netstat -putan

2 – Encerrando os serviços encontrados

# invoke-rc.d exim4 stop
# invoke-rc.d nsf-common stop
# invoke-rc.d portmap stop
#invoke-rc.d openbsd-inetd stop

3 – Removendo serviços de inicialização

# update-rc.d -f exim4 remove

# update-rc.d -f nsf-common remove

# update-rc.d -f portmap remove

# update-rc.d -f openbsd-inetd remove

Configurando o repositório de rede

Para instalar programas no Debian GNU/Linux, é necessário que o repositório de rede corretamente configurado.

1 – Abra o arquivo responsável pela configuração do repositório:

# vim /etc/apt/sources.list

2 – Edite apontando para o repositório do debian:

deb http://ftp.br.debian.org/debian/ lenny main
deb http://security.debian.org/ lenny/updates main

3 – Depois de configurado, faça o update do banco de dados do aptitude:

# aptitude update

4 – Vamos aproveitar e fazer a atualização do sistema operacional para a versão mais recente dos pacotes:

# aptitude dist-upgrade

Editor de Textos Vim

Vamos instalar e configurar o nosso editor de textos habilitando destaque de sintaxe e linhas numeradas.

1 – Instale o pacote vim-full:

# aptitude install vim-full

2 – Configure o VIM para que ele inicie já linhas numeradas e destaque de sintaxe:

# echo “syntax on” >> /etc/vim/vimrc

# echo “set number” >> /etc/vim/vimrc

O arquivo login.defs

O arquivo /etc/login.defs é utilizado para controlar alguns aspectos relacionados a logins, contas de usuários e número mínimo e máximo de uid's e gid's.

Vamos habilitar uma função chamada “SULOG_FILE”, que permite registrar as tentativas de uso do comando su:

1 – Abra o arquivo /etc/login.defs

# vim /etc/login.defs

2 – Localize e descomente a variavél “SULOG_FILE:

SULOG_FILE /var/log/sulog

Agora, todas as tentativas de uso do comando “su” serão registrados no arquivo /var/log/sulog.


Exercício teórico

Qual é a importância dos procedimentos pós instalação?

DICA LPI: A prova poderá perguntar a finalidade do arquivo /etc/login.defs.
Read More

Tráfego TCP/IP

Read More

Brazil's Lottery and the use of Free Software

Read More

Certificacao Linux LPI - twitter



Agora o certificação linux lpi, também está no twitter participe, e ajude a divulgar o blog, que tem melhor contéudo sobre a certificação mais reconhecida no mundo.
Read More

Grupo de estudo LPIC



Participe da lista de discução sobre a certificação linux LPI. Quem estiver estudando, precisa trocar informações, vamos criar grupo de estudos e buscar a certificação linux LPI. clique aqui 

O grupo de estudo é mantido pela blog certificação linux lpi. 
Read More

Guia + Material de estudo



Pessoal mais matérial de estudo pra você comer os livros...ehehu

Segue o link

http://www.esnips.com/web/saitam1985-Linux

Indicado pelo Reginaldo do Orkut...


Quem tiver algum matérial ou contéudo pra compartilhar com o pessoal, a comunidade agradece.
Read More

Banco de dados



Objetivos
- Instalar o mysql no Ubuntu.
- Principais comandos de linguagem sql.

Em resumo SQL é uma linguagem, um conjunto de instruções, para se comunicar com um banco de dados. As consultas em grande maioria são feitas em tabelas. E basicamente consiste em localizar, alterar, apagar e inserir.

MySQL é um SGBD (Sistema Gerenciador de Banco de Dados) SQL amplamente divulgado, utilizado principalmente em projetos LAMP (Linux / Apache / MySQL / PHP).
Para utilizar um banco de dados, é necessário:
* Criar um novo banco de dados.
* Dar, a um usuário do banco de dados, a permissão de acesso a um servidor de banco de dados.
* Conceder, a este usuário, todos os direitos para utilizar este banco de dados específico.
Este tutorial explica como criar um novo banco de dados e conceder a um usuário as permissões adequadas.
O que faremos:
* Criaremos um um banco de dados chamado alunodb
* um usuário chamado jose
* com senha ninguem
* e que poderá acessar o banco a partir da própria máquina (localhost).

Passos:
1) Instalar um servidor mysql
$ sudo apt-get install mysql-server
2) O MySQL na configuração padrão traz um usuário root que não precisa de senha para autenticação no localhost. Neste caso, logue-se no servidor mysql utilizando:
$ mysql -u root
3) Caso já tenha sido atribuída um senha para o usuário root, utilize o parâmetro extra -p, assim:
$ mysql -u root -p
Será exibido um prompt para inserir a senha:
Enter password:
O interpretador de comandos do mysql exibirá seu prompt:
mysql>
4) Após ter se logado, o próximo passo é criar um banco de dados:
mysql> create database alunodb;
Query OK, 1 row affected (0.00 sec)
5) Dê permissão ao usuário jose para conectar ao servidor a partir de localhost utilizando a senha ninguem:
mysql> grant usage on *.* to jose@localhost identified by ‘ninguem’;
Query OK, 0 rows affected (0.00 sec)
6) Conceda todos os privilégios no banco de dados alunodb para este usuário:
mysql> grant all privileges on alunodb.* to jose@localhost ;
Query OK, 0 rows affected (0.00 sec)
Digite exit para sair do prompt do mysql e retornar ao prompt do sistema ou então, em outro terminal, para se conectar ao servidor mysql, utilize este comando:
$ mysql -u jose -p’ninguem’ alunodb
O mysql exibirá uma mensagem semelhante a esta abaixo e disponibilizará seu prompt.
Your MySQL connection id is 2
Server version: 5.0.38-Ubuntu_0ubuntu1-log Ubuntu 7.04 distribution
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.
mysql>
Pronto. MySQL instalado e pronto para a utilização.

Em resumo SQL é uma linguagem, um conjunto de instruções, para se comunicar com um banco de dados. As consultas em grande maioria são feitas em tabelas. E basicamente consiste em localizar, alterar, apagar e inserir.
São estes quatro comandos que vou listar aqui. Os comandos mais simples em geral são interpretados em qualquer banco de dados, seja ele MySQL, Access, Oracle, SQL Server.
Inserir dados:
INSERT INTO nome_da_tabela (nome_da_coluna_1,nome_da_coluna_2) VALUES(15,'valores');
Você começa dizendo o que vai fazer INSERT INTO, ou seja, inserir em “nome_da_tabela“. Em seguida diz quais colunas da tabela receberão valores, e para terminar mostra quais serão os valores VALUES.
Atualizar dados:
UPDATE nome_da_tabela SET nome_da_coluna_1 = 22, nome_da_coluna_2 = 'novos valores';
Aqui também começamos informando o que iremos fazer UPDATE e o nome da tabela que será atualizada. Em seguida informamos quais campos receberão novos valores através do SET.
Apagar dados:
DELETE FROM nome_da_tabela;
Mesma coisa dos anteriores, começa informando o que irá fazer DELETE FROM e o nome da tabela que terá seus dados apagados.
Localizar dados:
SELECT nome_da_coluna_1, nome_da_columa_2 FROM nome_da_tabela;
Este começa um pouco diferente, e quando analisarmos suas funções mais a fundo veremos que este comando oferece muito mais recursos que os anteriores.
Se começa informando quais colunas você quer encontrar resultados. SELECT e o nome das colunas, ou caso deseje todas use o atributo (*). Logo após o nome das colunas informe de qual tabela vem os dados FROM tabela.
O básico é isso. Nos próximos posts quero apresentar mais a fundo cada uma delas. E um recurso muito importante, a cláusura WHERE, que pode ser usada nos comandos UPDATE, DELETE e SELECT.


Read More

Acessibilidade


O "leitor de tela básico em braille" foi adicionado recentemente ao kernel do Linux e, com ele, um subdiretório drivers/accessibility e a opção CONFIG_ACCESSIBILITY correspondente. Vale destacar que as primeiras reações foram do tipo "que raios é essa tal de acessibilidade?". Isso mostra como a idéia é pouco conhecida entre os desenvolvedores.
E olha que a acessibilidade no GNU/Linux, ou seja, a usabilidade do GNU/Linux por portadores de deficiência (como cegos, por exemplo), obviamente não é nova. Já há trabalho nessa área faz tempo: a versão 0.07 do leitor de tela speakup foi lançada para o kernel 2.2.7 em 1999, e o leitor de tela em braille brltty foi iniciado em 1995. O leitor de tela básico em braille que acaba de ser adicionado ao kernel do Linux é apenas a parte visível desse trabalho que já está em andamento há anos.



Com a popularização do GNU/Linux entre o público não-técnico, tem havido um interesse renovado por um suporte mais mainstream à acessibilidade: o desktop GNOME, o OpenOffice.org e o Firefox 3 agora podem ser renderizados por sintetizadores de voz e braille graças ao framework AT-SPI e ao leitor de tela Orca. Assim que essas tecnologias forem adaptadas ao D-BUS, o KDE também vai aderir. Além disso, começaram a aparecer menus de acessibilidade nas distribuições.
Uma das maiores preocupações dos portadores de deficiência costumava ser a falta de suporte ao Javascript nos navegadores em modo texto e a falta de suporte das suítes de escritório. Conforme mais e mais empresas e governos migram para o Linux, especialmente devido à exigência de alguns estados por acessibilidade nas ferramentas usadas pelo governo, um esforço renovado no desenvolvimento foi se tornando cada vez mais uma necessidade. Em Massachusetts, o povo chegou a fazer um abaixo-assinado contra a migração para o software livre porque, na época, ele não oferecia as ferramentas de acessibilidade necessárias!

O que é acessibilidade?

Acessibilidade, também abreviada como a11y, é fazer com que um software possa ser utilizado por pessoas portadoras de deficiência. Isso inclui os cegos, é claro, mas também pessoas com pouca visão, surdos, daltônicos, pessoas que só têm uma das mãos ou que só podem mover alguns dedos ou apenas os olhos. Pessoas com problemas cognitivos (ainda que leves) ou não familiarizadas com a linguagem também estão incluídas. Por último, mas não menos importantes, os idosos, que têm um pouco de todas essas deficiências. Sim, isso quer dizer que, um dia, todo mundo vai estar incluído nesse grupo. Isso implica em suporte a dispositivos especiais, mas também em precaução no desenvolvimento, evitando presumir que um alarme sonoro será ouvido, ou que uma breve mensagem será lida.
Talvez uma das técnicas de acessibilidade mais óbvias sejam os sintetizadores de voz, que transformam texto em áudio que pode ser enviado aos alto-falantes e fones de ouvido. Já houve sintetizadores de voz baseados em hardware (suportados pelos drivers do speakup), mas a maioria deles vem sendo substituída pelos sintetizadores de voz baseados em software. Embora a qualidade do software comercial para sintetizar voz seja muito boa hoje em dia, a qualidade das alternativas livres varia bastante. Existem sintetizadores de voz livres muito bons para a língua inglesa, mas o suporte a outros idiomas varia. Por exemplo, os engines Festival e eSpeak suportam vários idiomas, mas o som é robótico demais. Há bibliotecas de fonemas melhores, como o mbrola, mas elas geralmente não são 100% livres. Para lidar de maneira mais eficiente com esses backends de sintetização de voz, o daemon de voz precisa escolher automaticamente a sintetização apropriada, de acordo com o idioma e o estilo desejados.
Outro tipo de dispositivo muito popular é o terminal braille. Ele "exibe" o texto levantando e abaixando pequenos pinos que formam os padrões do braille. O terminal braile custa caro, e geralmente tem espaço para apenas 40 caracteres, ou mesmo por volta de 12 ou 20. Ele tem teclas para navegação pela tela, e com isso o usuário vai lendo em partes. Comparado aos sintetizadores de voz, o terminal braille é muito mais preciso, mas nem todo mundo pode ler em braille, e o preço é muito alto (em torno de 5.000 dólares). O suporte aos vários dispositivos existentes é muito bom: dentre os leitores de tela, tanto o brltty quanto o suseblinux suportam uma ampla variedade de dispositivos.
Os cegos provavelmente usarão dispositivos em braille e sintetizadores de voz em conjunto. Os dispositivos para os outro tipos de deficiência variam bastante. Eles vão de joysticks (suportados nativamente pelo X.org) a sistemas que acompanham o movimento dos olhos (gerenciados pelo dasher), fazendo uso do apertar de botões (suportado pelo GOK, o teclado de tela do GNOME) ou da mera ampliação da tela (implementada pelo gnome-mag).

Uso Diário

A eterna guerra entre a linha de comando e a interface gráfica também se encena entre os usuários de terminais braille e sintetizadores de voz. O contraste entre as duas interfaces talvez seja ainda mais exacerbado pelas dificuldades inerentes à realização de tarefas no computador por pessoas portadoras de deficiências.
A velha maneira tradicional de se usar um sistema GNU/Linux, o console de texto, funciona bem com os dispositivos em braille e com os sintetizadores de voz há tempos. O princípio é bem simples: são 25 linhas de 80 caracteres, e o texto é apresentado seqüencialmente. Com isso, os leitores de tela para terminais braille exibem automaticamente apenas o que foi escrito mais recentemente, permitindo ao usuário navegar entre as 25 linhas. Os leitores de tela com sintetizador de voz, como o speakup e o yasr, falam o texto conforme ele se apresenta na tela, além de oferecer alguns recursos de análise semelhantes ao dos leitores de tela em braille. Isso funciona muito bem, porque os aplicativos estão limitados à interface TTY e não possuem recursos mirabolantes e inacessíveis como botões gráficos. Alguns aplicativos podem não ser lidos com tanta facilidade, como por exemplo, os que usam desenhos em ASCII ou os que usam cores para indicar os botões ativos, mas esses aplicativos costumam ter opções para maior acessibilidade. Uma coleção de dicas pode ser encontrada neste wiki.
Já a acessibilidade nos desktops gráficos é um assunto bem mais recente, em parte porque o problema técnico é bem mais complicado: enquanto os aplicativos em modo texto são limitados à produção de texto, os aplicativos gráficos modernos muitas vezes renderizam o texto como bitmaps, fazendo com que as informações do texto não estejam disponíveis para os leitores de tela. Já houve tentativas de se adaptar aplicativos no passado (como o ultrasonix), mas a iniciativa nunca se popularizou. O projeto GNOME vem desenvolvendo a AT-SPI (Assistive Technology Service Provider Interface, ou interface provedora de serviços para tecnologia assistiva) desde a década passada, e com o advento do leitor de tela Orca ela se tornou uma promessa e tanto. A AT-SPI pode ser entendida como um protocolo entre os leitores de tela como o Orca e os aplicativos. Para ser "acessível", um aplicativo precisa implementar a AT-SPI ou usar um toolkit que a implemente, como o GTK ou (em breve) o Qt, para que os leitores de tela possam obter o conteúdo lógico e textual do aplicativo. O Orca ainda não é maduro o suficiente para fazer tudo o que os leitores de tela proprietários do Windows fazem, mas já é suficientemente útil para o trabalho diário. Ele está avançando rapidamente, graças ao apoio da Sun e ao envolvimento do Accessibility Free Software Group, o grupo de acessibilidade do software livre. No momento em que este artigo foi escrito, apenas o Gtk+ 2 (e conseqüentemente o desktop GNOME e os aplicativos Gtk+ 2), o Java/Swing, a suíte Mozilla, o OpenOffice.org e o Acrobat Reader implementam a AT-SPI e são acessíveis. O suporte do Qt (e do desktop KDE) deve se concretizar assim que a tecnologia for adaptada ao D-BUS. Para melhores resultados, recomenda-se o uso das versões mais recentes dos aplicativos; o Firefox, por exemplo, só é realmente acessível a partir da versão 3.
Outra abordagem é utilizar aplicativos que implementem a leitura por conta própria. O Firevox é uma versão do Firefox que vem com um leitor de tela dedicado integrado. Isso permite uma maior integração entre o leitor e o aplicativo, mas seu uso é limitado ao aplicativo específico. Outro exemplo é o emacspeak, uma versão "vocalizada" do emacs. Algumas pessoas usam apenas o emacspeak e mais nada, pois o emacs já faz tudo o que elas precisam.
No fim das contas, cada pessoa tem um grau de satisfação. Algumas vão gostar muito do maduro e eficiente leitor de tela do console de texto; outras vão considerar isso um retrocesso (como um retorno ao DOS) e vão preferir ambientes intuitivos como o GNOME, embora o leitor de tela Orca ainda seja muito recente. É bem comum o uso de ambos: o console de texto para o trabalho habitual e o ambiente gráfico para tarefas que o exijam, como a navegação por sites com Javascript ou a manipulação de documentos do OpenOffice.

Integração ao upstream

E como instalar isso tudo? A maioria das distribuições já oferece boa parte dos pacotes úteis, mas não a documentação sobre quais ferramentas são úteis para cada deficiência. O site de recursos de acessibilidade no Linux é uma fonte bastante completa de informações sobre as várias ferramentas que podem ser usadas. Também há um wiki para que os administradores dêem os primeiros passos no assunto.
Vale notar que algumas distribuições têm componentes de acessibilidade integrados aos CDs de instalação. Por exemplo, o instalador do Debian (a partir do Etch, também conhecido como Debian GNU/Linux 4.0) detecta terminais braille automaticamente e, caso os encontre, muda para o modo texto, roda o brltty e se assegura de que o brltty seja instalado e configurado no sistema alvo. É comum o caso de distribuições que são adaptadas extra-oficialmente, com imagens de instalação "braillificadas". O mais importante é que isso permite que pessoas portadoras de deficiência visual sejam absolutamente independentes da ajuda de pessoas que enxerguem. Nesse aspecto, o Windows está bem atrás das conquistas do GNU/Linux.

Desafios futuros

Resumindo, o GNU/Linux "acessível" também está se democratizando, só que esse processo está acontecendo um pouco depois da democratização do Linux tradicional. Claro que há muito a ser melhorado. Ainda que geralmente as distribuições contenham software de acessibilidade, é difícil para os portadores de deficiência recém-chegados saberem quais softwares podem ser úteis para cada tipo de deficiência; as distribuições vão ter que desenvolver assistentes para orientá-los. Enquanto isso, sites como o site de recursos de acessibilidade no Linux podem ser usados como fontes de informações. De qualquer maneira, é essencial que haja um debate com os usuários portadores de deficiência para que se estabeleça uma solução adequada (não adianta ter saída em braille se o usuário não sabe ler em braille).
Além da instalação e do uso comum do GNU/Linux, os estágios iniciais do boot ainda não são muito acessíveis. Com o desenvolvimento do leitor de tela básico em braille, o kernel do Linux um dia deve ser capaz de oferecer um feedback básico ao usuário antes mesmo que os daemons dos leitores de tela em espaço de usuário possam ser iniciados no disco rígido. Os gerenciadores de boot como o Lilo e o Grub podem emitir bips básicos, mas seria necessária alguma ajuda para editar com precisão a linha de comando do kernel, por exemplo. Por último, mas não menos importante, os portadores de deficiência já podem alterar as configurações da BIOS em máquinas avançadas com consoles seriais. A democratização da plataforma EFI pode ser uma boa oportunidade para embutirmos funcionalidades básicas de leitura de tela.


Read More

Conceitos de redes, TCP e Serviços de Rede

Neste artigo vamos ver as principais ferramentas de configuração de rede, como configurar hosts em uma rede, administrar e verificar o tráfego em um host com o netstat.

Para entender o contéudo é necessário ter um conhecimento sobre redes, aconselho ver esse artigo sobre números binários e máscara de sub-redes.

Se você já tem noções de rede como mascara de sub-rede, endereçamento então está apto.



Os serviços tipo [x]inet são aqueles que dependem do comumente chamado “super” daemon de rede inetd – InterNet daemon – sendo o xinetd – eXtended Internet daemon uma iplementação do inetd com alguns recursos a mais como controle de acesso, capacidade de fazer logs e determinar horários para que o serviço esteja disponivel.

Esse daemon fica escutando nas portas que os serviços controlados por ele trabalham e carregam o programa apropriado quando chega uma requisição na determinada porta. Exemplos de serviços tipo inetd são o telnet, ftp,pop3, et. Ao longo do tempo, alguns dos serviços que eram controlados por inetd passaram a operar como stand alone afim de contornar problemas associados ao inetd. Os serviços tipo portmap são aqueles que não possuem uma porta específica para operar, como por exemplo o NIS e o NFS. Estes serviços enviam uma chamada RPC – Remote Procedure Call – para a máquina servidora, causando a execução de uma determinada subrotina. Dessa forma, quando um cliente faz a requisição de NFS a um servidor, ele está enviando um RPC do tipo NFS e que quando chegar o servidor, será tratado como tal, carregando a rotina apropriada para enviar a resposta ao cliente.
Serviços tipo stand alone são aqueles em que cada tipo de servidor possui seu daemon especifico.
Esta forma de trabalho é preferida hoje em dia pois possibilita um maior controle sobre cada serviço em separado. Serviços que operam dessa forma são, ssh,httpd,ftp,pop3 dentre outros. Repare que atualmente os protocolos ftp e pop3 já possuem seus próprios daemons possibilitando sua utilização desvinculada do [x]inetd.

Telnet

Telnet é um protocolo que pode ser utilizado tanto localmente quanto na internet. Desenvolvido em 1969, é considerado inseguro e seu uso é altamente desencorajado. Quando nos referimos a telnet podemos estar falando tanto do protocolo e o servidor que o implementa quanto no programa cliente, utilizado para acessar esse tipo de servidor. Por ser um protocolo extremamente antigo, está disponivel em praticamente todos os sistemas operacionais. Inclui-se a esta lista muitos Sos de equipamentos de rede, como routers, utilizados como ferramentas para configuração dos mesmos. Atualmente o telnet ainda é bastante utilizado para realizar configurações em equipamentos de rede específico, mas também para testar o funcionamento de serviços como um servidor de pop3, eliminando a necessidade de programas cliente especializados.
O telnet é um protocolo cliente-servidor baseado em uma conexão orientada, utilizando tipicamente a porta 23/tcp.
As tres principais razões para a não utilização do telnet são:
ao longo dos anos tem sido descobertas diversas vunerabilidades em suas implementações e, provavelmente, há muitas outras que ainda não foram determinadas;
por padrão, os dados enviados são criptografados, incluindo usuários e senhas;
não possui esquema de autenticação que possibilite garantir que a comunicação está se dando entre as partes envolvidas, facilitando ataques do tipo man-in-the-middle.
Essas falhas tem feito cair a utilização do protocolo TELNET em favor do ssh, desde sua ciração em 1995.

Prática dirigida

netstat -
O comando netstat exibe o status das conexões, tabelas de rotas, estatísticas da interface, conexões mascaradas e participações em multicast.
Vamos ver alguns exemplos do comando.
O comando netstat sem parametros traduz op IP's para os nomes, por isso ele é demorado para resolvermos esse problema podemos usar o -n

# netstat -n

A opção -t e -l exibe as conexões TCP e as portas disponíveis respectivamente para conexão com a sua máquina.

# netstat -nlt

A opção -u exibe as conexões UDP.

# netstat -nlu

Para formar um comando completo para analise de conexões de rede, podemos usar um conjunto de parametros.

# netstat -nltup

Neste caso a opção -p nos mostrará o numero do processo e o nome do programa responsável.

ARP (Address Resolution Protocol)

O comando arp exibe a tabela de resolução de MAC das máquinas do segmento de rede.

# arp -n


Configurando o roteamento estático

1 – Configuração das duas interfaces do roteador:

# ifconfig eth0 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.0.255

# ifconfig eth1 192.1.40 netmask 255.255.255.0 broadcast 192.168.0.255

2 – Caso tenha apenas uma interface, podemos usar o ip virtual e configurar dois endereços para essa interface, conforma exemplo abaixo:

# ifconfig eth0 192.168.0.1 netmask 255.255.255 broadcast 192.168.0.255

# ifconfig eth0:0 192.168.0.129 netmask 255.255.255 broadcat 192.168.0.255

3 – Consulte se seus sistema permite repasse entre as interfaces de rede. Para isso, o valor da diretriz ip_forward deve ser 1:

# sysctl -a |grep ip_forward

4 – E também ser aceito ping em broadcast.

Para nosso teste, o valor da diretriz icmp_echo_ignore_broadcast deve ser 0:

# sysctl -a |grep icmp_echo_ignore_broadcast
5 – Executa o comando ping para o endereço de broadcast:

# ping -b 192.168.0.255

6 – Use o comando arp para identificar o endereço mac dos hosts que estão ativos em sua rede:

# arp -an

7 – Podemos alterar em tempo de execução caso seja necessário:

# sysctl -w net.ipv4.ip_forward=1

# sysctl -w net.ipv4.icmp_echo_ignore_broadcasts=0

8 – Habilitando o forward (repasse) de pacotes de forma que fique permanete:

# echo 1 > /proc/sys/net/ipv4/ip_forward

# echo 0 > /proc/sys/net/ipv4/icmp_ignore_broadcasts

9 – Outra forma interessante é inserir uma entrada no arquivo /etc/sysctl.conf:

# echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf

# echo net.ipv4.icmp_echo_ignore_broadcasts=0 >> /etc/sysctl.conf

# sysctl -p /etc/sysctl.conf

# cat /proc/sys/net/ipv4/ip_forward

# cat /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

10 – Execute o comando ping para o endereço de broadcast:

# ping -b 192.168.0.255

11 – Use o comando arp para identificar o endereço mac dos hosts que estão ativos em sua rede:

# arp -an

12 – Podemos alterar em tempo de execução caso seja necessário:

# sysctl -w net.ipv4.ip_forward=1

# sysctl -w net.icmp_echo_ignore_broadcasts=0

13 – Habilitando o forward (repasse) de pacotes de forma que fique permanente:

# echo 1 > /proc/sys/net/ipv4/ip_forward

# echo 0 > /proc/sys/net/ipv4/ip_forward


# cat /proc/sys/net/ipv4/ip_forward

# cat /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

14 – Outra forma interessante é inserir entrada no arquivo /etc/sysctl.conf:

Configurando as estações nas sub-redes

1 – Configurando um host na sub-rede 192.168.0.0/25:

# ifconfig eth0 192.168.0.2 netmask 255.255.128 broadcast 192.168.0.127

2 – Para a rede 192.168.0.0/25, o gateway deve ser 192.168.0.1:

# route add default gw 192.168.0.1

# route -n

# netstat -puneta

Read More

Camada OSI


Read More

Gerenciadores de Boot



objetivos
  • configurar o grub;
  • iremos testar a segurança no grub.

Um “bootloader” é o software responsável por carregar o sistema operacional (kernel) durante o boot do sistema. Há varios bootloaders diferentes disponíveis no GNU/LINUX; os dois mais comuns são o Lilo – Linux Loader – e o grub – Grand Unified Boatloader.

Grub sem senha

Iremos editar grub, para que seja possível entrar no sistema e fazer qualquer alteração que desejarmos.
Primeiro aparecerá a tela inicial do grub. O boot por default começa depois de cinco segundos, para que nós possamos editar o grub é necessário digitar a tecla ESC seguido da letra e (editar).

Já na segunda etapa é necessário irmos até a segunda linha, é na linha do kernel que será editada as permissões para que a edição seja feita. Para editar a linha digitamos a letra e (editar).

No final da linha digite: initi=/bin/bash seguido da tecla ENTER, isso é necessário para que possamos utilizar a shell.

De volta, digitamos a letra b (boot), para que seja possível bootar o sistema.

Pronto, agora você pode fazer algumas coisas, como: alterar a senha e arquivos de configuração. Mas tome muito cuidado com isso, de preferencia faça apenas o necessário.

Obs: Sem senha no grub, qualquer usuário consegue fazer estas ações. Portanto utilizem senha,. Senhas fortes de preferencia.

Senha no grub

1 – Vamos aproveitar para colocar uma senha no GRUB. Em outro terminal entre na shell do grub.

# grub

2 – Dentro da shell do GRUB, vamos gerar uma senha com criptografia MD5 utilizando o comando md5crypt e a senha padrão “123456”

grub>md5crypt

md5crypt
password:123456
123456
encrypted: isdaufijsdi!@#$%*(%*($%*

hash MD5

grub>

3 – Copie a HASH MD5 gerada pelo md5crypt e adicione a seguinte linha ao arquivo menu.lst

4 – Caso o grub ainda não tenha sido colocado na MBR será necessário instalá-lo.

# grub-install /dev/hda

obs: em geral esse asso só será necessário se você estiver trocando de boot loader, do lilo para o grub por exemplo, ou for uma instalação a partir do código fonte.

5 – Verifique que a senha colocado no GRUB está funcionando corretamente.


Read More

Servidor de impressão



objetivos
  • Configurar servidor de impressão;
  • Configuração do cliente;
  • gerenciamento do servidor de impressão;
Instalando o CUPS:

Antes de começarmos o processo de instalação do CUPS, devemos instalar no sistema o gs e o gs-esp, que são interpretadores de arquivos postscripts, pois o sistema de impressão utiliza arquivos no formato PPD, que são os responsáveis pela comunicação com o driver da impressora através do padrão postscript.

1- Para instalar o gs e o gs-esp:

# aptitude install gs gs-esp

2 – Agora sim, vamos instalar os pacotes do cups:

# aptitude install cupsys cupsys-client

cupsys – servidor de impressão cups
cupsys-client – cliente de impresão do cups

3 – Agora precisamos saber se o nosso sistema possui o suporte ao driver da nossa impressora. Para isso:

# gs -h

Por exemplo, se a sua impressora for uma HP ( que também é o nosso caso), você terá suporte a ela, atravś do driver “hpijs”.
Nota: se a sua impressora não tiver suporte, você pode procurar pelo driver correspondente à ela em www.linuxprinting.org

4 – Vamos visualizar o arquivo de configuração do servidor de impressão, para visualizarmos algumas opções importantes de configuração:

# cat /etc/cups/cupsd.conf

5 – Reincie o CUPS

# /etc/init.d/cupsys restart

6 – Agora podemos gerenciar as configurações relacionadas à fila de impressão, impressoras instalas, etc, através da interface de gerenciamento do CUPS via browser. Para isso, abra seu browser e digite localhost:631.

Configuração do cliente

# vim /etc/cups/client.conf

Dentro desse arquivo deve conter, o endereço do servidor de impressão na rede:

servername (ip-servidor)

7 – Todas essas informações foram geradas no arquivo de configuração da impressora no cups, e configurações do cliente, esses parâmetros estão no arquivo /etc/cups/printers.conf

# cat /etc/cups/printers.conf

8 – Definimos nossa impressora conectada através da porta USB, mas e se fosse uma impressora da rede, ou paralela? Podemos conferir como ela seria referenciada:

# lpinfo -v

9 – Vamos ver agora o arquivo no qual o sistema busca as definições das impressoras existentes:

# vim /var/run/cups/printcap

10 – Podemos agora fazer um teste de impressão com o comando lp:

#lp -dteste /etc/shadow

11 – Verifique agora a fila de impressão atual:

# lpq -Pteste

12 – Eu também posso verificar a fila de impressão desta forma:

# lpstat -t

13 – Se eu quiser remover um trabalho da fila de impressão:

# lprm -pteste 5
Read More

Servidor X

Objetivos
  • configurar a interface gráfica para os usuários comuns:
  • Conhecer os display managers e window managers.
Introdução

O X Window System, conhecido também como servidor X, apenas X ou X11, é um protocolo de rede e video que provê a capacidade de se trabalhar com o sitema de janelas e que permite as interações através de teclado e mouse. Esse sistema fornece os meios para o desenvolvimento de interfaces gráficas para usuário ou GUI - “Graphical User Interfaces” em sistemas Unix e Unix-like.
O sistema X fornece apenas as ferramentas que possibilitam o desenvolvimento de ambientes GUI como desenhar na tela, mover janelas e interagir com o mouse e teclado; ele não dita quais serão as decorações das janelas, quem faz isso são os chamados Windows Managers (WM) ou gerenciadores de janelas. Dessa forma, a “cara” da parte gráfica varia drasticamente de um WM para outro.
Um conceito básico do servidor X é que ele é realmente um servidor como o próprio nome já indica. Sendo assim, é possivel abrir várias instâncias de interface gráfica em uma mesma máquina ou até mesmo em uma máquina remota, graças ao seu protocolo de rede.

Configurando o suporte à interface gráfica
A interface gráfica mais utilizada em ambientes UNIX é conhecida como X Window System, ou simplesmente X. Essa interface é provida pelos pacotes Xorg e Xfree86, que podem ser baixados diretamente nos sites oficiais http://www.xorg.org. Http://www.xfree86.org ou utilizando o “apitutde” dos pacotes necessários.

O arquivo de configuração do servidor X é dividido em seções e cada uma diz respeito à configuração de um determinado pedaço do sistema como um todo. Ou seja, o arquivo é composto de várias seções que definem qual será o comportamento dos dispostivos como teclado, mouse,monitor e placa de vídeo e algumas outras definem recursos que o servidor X irá utilizar, como os móduos que serão carregados e arquivos de fontes, por exemplo.
Além das seções separadas que definem o comportamento de algum componente em separado, há outras como “serveLayout” e “Screen” que definem como o conjunto de recursos irá operar.

Variável de ambiente Display

a váriavel de ambiente DISPLAY é a que define em que lugar a saída gráfica deve ser mostrada. Com essa variável é possível até informar ao sistema que a saída gráfica se dará em outro computador na rede.

sendo o o endereço IP de uma máquina na rede, podendo ser deixado em branco caso a máquina de destino seja a própria máquina local. O campo display refere-se a uma instância de parte gráfica dentro de uma screen: o campo screen refere-se ao monitor e à placa de vídeo que irão sair a parte gráfica.

Um X window Manager é um software que controla basicamente o posicionamento e a aparência das janelas dentro do sistema X Window.
Ao contrário dos sistemas da Apple e Microsoft, que possuem apenas uma única aparência básica e que é de controle delas, no sistema GNU/Linux você é livre para escolher qual é o gerenciador de janelas que irá utilizar.
Há um número muito grande de gerenciadores de janelas que você pode instalar simultaneamente em uma máquina, possibilitando que cada usuário escolha aquele que mais lhe agrade. Cada gerenciador difere do outo em mitos aspectos, como nível de customização da aparência e funcionalidades, configurabilidade dos menus, meios gráficos para iniciar um software, capacidade de utilizar múltiplos desktops e, principalmente, na quantidade de recursos que ele exige da máquina, entre outros.


Prática dirigida

Instalação e configuração do servidor X

# aptitude install xserver-xorg

ou

# aptitude install x-window-system

após a instalação, vamos testar se a configuração padrão serve para a nossa máquina.

1 – inicie o servidor X:

# X

Caso esteja funcionando, ótimo. De qualquer forma, vamos executar o procedimento de configuração:

# X – configure

Esse comando irá tentar identificar qual é o hardware da sua máquina e gerar um arquivo de configuração para ela gravando esse arquivo no diretório do root.

2 – Teste esse novo arquivo de configuração:

# X – config /root/xorg.conf.new

ou

# X – xf86config /root/XF86config.new

Novamente, se funcionar, ótimo, caso não funcione, teremos que realizar os ajustes manualmente, e , para isso, precisaremos de algumas informações como:

placa de video, para determinar qual é a nossa placa de vídeo podemos utilizar o comando:

# lspci |grep -i vga

frequencia do monitor, para descobrir quais são as frequencias do seu monitor você deve recorrer ao manual e ao google.
Device do mouse, essa parte é fácil, kbd-config.

3 – Tente os seguintes comandos e diga qual é a diferença entre eles:

# X

# startx

Instalando um window manager

No Linux podemos ter vários Clientes, Gráficos. Depois que o servidor gráfico já está instalado e configurado, só vamos ter o trabalho de instalar os clientes gráficos.

1- Instalar o gerenciador de janelas WindowMaker:

# aptitude install wmaker

2 – Agora vamos iniciar o nosso cliente gráfico que acabamos de instalar:

# startx

3 – Para um próximo teste, vamos instalar outro cliente gráfico que é muito utilizado, o kde:

# aptitude install kdebase

4 – Depois vamos iniciar nosso outro gerenciador de janelas:

# startx

obs: note que foi utilizado o mesmo comando para iniciar tanto WindowMaker quanto o kde (o startx). Isso acontece porque ao instalarmos o kde ele se colocou como sendo o WM padrão do sistema, mas isso pode ser alterado.

5 – Podemos editar o arquivo /root/.xinitrc para escolhermos qual cliente gráfico será iniciado quando o root utilizar o comando startx. Essa configuração é válida apenas para o usuário root, pois alteramos o xinitrc da home do root:

# vim /root/.xinitrc

windowMaker utilize wmaker.
Kde utilize startkde.
6 – Para que alteração seja válida para qualquer usuário, devemos editar o arquivo de configuração global:

# vim /etc/X11/xinit/xinitrc

obs: lembrando que uma configuração local, ou seja, o arquivo pessoal do usuário, prevalece sobre o global, caso o usuário especifique um.

Se quiser mudar o seu display manager defaulta, basta editar o seguinte arquivo:

# vim /etc/X11/default-display-manager
/usr/bin/kdm

Usando o Xnest
objetivo: Queremos rodar um aplicativo na nossa máquina local mas que esteja sendo executado em uma máquina remota.

1 – Vamos iniciar o nosso WindowManager utilizando o Display Manager kdm. Faça login com o seu usuário comum, não como root! NUNCA como ROOT em ambiente gráfico!.

# /etc/init.d/kdm start

2 – Ainda como root, instale o pacote xnest, nested x server:

# aptitude install xnest

3 – Agora, em uma shell dentro do ambiente gráfico, vamos executar o Xnest, desabilitando qualquer controle de acesso:

(abra um xterm e execute)
$ Xnest :1 -ac &

4 – Faça uma conexão ssh no servidor remoto com as aplicações:

# ssh @

5 – Já no servidor, exporte a variável DISPLAY para a sua máquina na screen 1, ou seja, onde o Xnest está “escutando”:

# export DISPLAY=:1

6 – Agora já podemos testar uma aplicação gráfica, que irá rodar dentro da tela do Xnest:

# wmaker &

obs: como estou acessando a aplicação remotamente, os processos da aplicação estão consumindo recursos do servidor, e não na minha máquina.

Servidor X remoto

O xterminal é um recurs dos servidores gráficos X presentes em todos os servidores Linux. Este recurso possibilita que uma máquina com menor desempenho posso executar uma aplicação gráfica a partir de um servidor, onde toda a carga de processamento está sendo realizada nele, e a nossa estação atuando somente como um terminal.

O X terminal utiliza o protocolo XDMCP.

1 – Utilizaremos o display manager gdm para fazer esse serviço. Vamos editar o arquivo onde ativaremos o XDMCP para o gdm.

# vim /etc/gdm/gdm.conf

2 – Localize o bloco [Xdmcp], utilizado para configuração desse protocolo. Ao encontrar esse bloco, ative o XDMCP alterando de enable=false para enable=true:

[xdmcp]
enable=true

pronto! Basta reiniciar o gdm que ele já estará “escutando” na porta 177/tcp.

3 – reinicie o gdm:

# /etc/init.d/gdm stop

# /etc/init.d/gdm start


4 – Verifique que a porta 177/tcp está aberta:

# netstat -ltan |grep 177

# fuse 177/tcp

5 – Em sua máquina, faça requisição XDMCP á maquina de um miguxo (heuhe), mandando utilizar a screen 1:

# X – query : 1

Dica LPI: No xorg o arquivo de configuração: /etc/X11/xorg.conf e no Xfree86: /etc/X11/X11.

Não se esqueça que a variável que define o ambiente do usuário é a DISPLAY.

Procure nos manuais do sistema sobre o servidor X.

Read More

Cultura Linux


Nos anos 80 e 90 podíamos diferenciar usuários de Pcs de usuários de Macs pelos seus níveis de intensidade. Os usuários de Pcs achavam seus computadores uma ferramenta útil, mas os usuários Mac adoravam suas máquinas. O computador de um usuário de Mac fazia parte da familia, como o animal de estimação preferido.


A mesma intensidade que permeava o mundo Mac agora é muito forte na comunidade Linux. Os usuários do Linux não só gostam de seus sistemas – eles estão preparados para lutar por eles, consertá-los e torná-los melhores, mais rápidos e mais seguros do que um computador Windows jamais sonhou ser. Energia está fluindo no Linux em uma velocidade incrível, e a cultura Linux tem suas próprias éticas, mitos, deuses e heróis.

O blog certificação linux lpi é uma iniciativa da comunidade com o objetivo de difundir o uso do GNU/Linux como sistema operacional para equipamentos de Rede e em processamento distribuído. Acreditamos que com essa iniciativa possamos fazer com que as informações sobre o uso do Linux em conectividade possa ser do conhecimento de todos e motivar o seu uso nas mais diferentes aplicações.

Sugestões, críticas e colaborações para os próximos artigos são bem-vindos e devem ser enviados para contato@certificacaolinuxlpi.com

Boa sorte !

Agnaldo Silva

Read More

Faça as provas da LPI no Latinoware com desconto!



Prova do LPI no Latinoware2009
Quando: dia 23 de outubro de 2009 das 10h00 as 13h30min.
Horário das provas: provas 101, 201 e 301 - das 10h00 às 11h30min
provas 102, 202, 302 e 303 - das 12h00 às 13h30min

Especialmente para o LATINOWARE, os candidatos que comprarem uma prova pelo valor de lista de R$260,00, poderão se inscrever para a segunda prova pagando apenas 50%. Ou seja, as duas provas saem por R$390,00. O candidato economiza R$130,00 nas provas!

Veja a notícia completa aqui

----------------------------------------------------------------------------------
Read More

Trabalhando com módulos

Objetivos
Devemos saber identificar os modulos do nosso hardware, e configura-los corretamente;
Também devemos saber a diferença entre um modulo e um driver.

Introdução
Quando instalamos um Debian, RedHat, Suse, Slackware, entre outras distribuição, estamos utilizando um kernel que foi compilado pelos desenvolvedores da distribuição.
O que kernel que vem por default em uma distriuição, deve ser capaz de rodar praticamente qualquer PC e dar suporte a quaisquer tipos de recursos que o usuário pretenza utilizar, o desenvolvedor compila um kernel que fornece todas as funcionalidades básicas, e , separando, compila pedaços de codigo que dão suporte a funcionalidades mais específicas. Esses pedaços de codigo são os chamados modulos.
Dessa forma, quando o sistema é carregado, um kernel basico se coloca na memoria e passa a controlar a maquina. Neste ponto são verificadas outras funcionalidades que se espera que o kernel de suporte, como por exemplo utilizar uma partição XFS. Neste momento, se o kernel não possuir suporte nativo a esse file system ele irá verificar se o modulo que dá suporte a ele foi compilado. Se esse modulo for encontrado, ele será carregado expandindo as funcionalidades do kernel.

Em um sistema como esse, haverá diversos modulos carregados e um número maior ainda que não estará sendo utilizado, mas disponível.

Os moduloes disponíveis, em geral, encontra-se no diretorio /lib/modules, e os modulos que estão carregados podem ser visualizados com o comando lsmod.
Ao mesmo tempo que a capacidade de subir modulos é uma vantagem do ponto de vista que apenas os modulos realmente necessários serão carregados, há a desvantagem de fragmentação do kernel na memoria.



Pratica dirigida

1- Determine qual versão do kernel está rodando:

# uname -a

2 -Determine quais modulos estão carregados:

# lsmod

# cat /proc/modules

3 – Determine quais modulos estão compilados (disponíveis):

# modprobe -l

4 – Determine quais modulos estão compilados explorando o diretorio /lib/modules:

# find /lib/modules/$(uname -r) -name '*ko'

6 – Determine para que serve o modulo chamado ext3:

# modinfo ext3

7 – Determine quais modulos são utilizados pelo dispositivo do cdrom:

# lsmod |grep cdrom

8 – Tente remover o modulo cdrom utilizado o rmmod:

# rmmod cdrom

9 – Remova o modulo ide_cd com rmmod já que ele está utilizando o modulo cdrom:

# rmmod ide_cd

10 – Verifique que o modulo ide_cd foi removido mas o cdrom ainda está carregado:

# lsmod |grep ide_cd

# lsmod |grep cdrom

11 – Já que o modulo cdrom não está mais sendo utilizado podemos remove-lo:

# rmmod cdrom

# lsmod |grep cdrom

12 – Remova o modulo cdrom da memoria utilizando o comando “modprobe -r”:

# modprobe -r cdrom

13 – Remova o modulo cdrom da memoria utilizando o comando “modprobe -r”:

# modprobe -r ide_cd


14 – Verifique que o ide_cd foi removido e que o cdrom....

# lsmod |grep ide_cd
# lsmod |grep cdrom

15 – Já que removemos o suporte ao cd-rom, vamos restaura-lo:

# insmod ide_cd

# insmod $(modprobe -l ide_cd)

# insmod $(modprobe -l cdrom)

# lsmod |grep cdrom

15 - Identique qual é a placa de rede do seu computador:

# lspci |grep -i eth

16 – Determine se o modulo/placa de rede suportam operar em modo full duplex:

# modinfo 8139too

4 – Como faço para que o modulo seja carregado durante o boot?

# echo >> /etc/modules

Exercicios teoricos

1- Qual a diferença entre “lsmod” e “modprobe -l”?

2 – Qual a diferença entre “insmod” e “modprobe -i”?

3 – Qual diferença entre “rmmod” e “modprobe -r”?

DICA LPI:O comando que exibe o kernel em uso, e suas opções: uname -a


Read More

TCP Wrappers

Objetivos
  • Iremos aplicar regras de acesso a nossa máquina, com dois arquivos:

Introdução

O tcp wrappers são usados para aplicar regras de acesso aos servidores utilizados em seu sistema, podendo permitir ou negar as conexões a eles. Eles são controlados por dois arquivos : /etc/hosts.allow (configuração de acessos permitidos para determinados Ips) e /etc/hosts.deny (configuração de acessos negados para determinados Ips).



Pratica dirigida

1- Bloqueie todos os acessos ao nosso servidor de telnet:

# vim /etc/hosts.deny

in.telnetd: ALL

2 – Libere o nosso servidor de telnet apenas para as máquinas da nossa rede:

# vim /etc/hosts.allow

in.telnetd : 192.168.1.0/24

3 – Agora vamos bloquear o acesso ao SSH para todos, exceto para a rede 192.168.1.0:

# vim /etc/hosts.deny

sshd : ALL EXCEPT 192.168.1.0/24

DICA LPI: O TCP Wrappers são cobrados na LPI.

Read More

Servidor SSH



Objetivos
  • Iremos utilizar o ssh para realizar as conexões até as outras maquinas;
  • O ssh criptográfa os dados pela rede, ao contrário do telnet;
  • O ssh é muito utilizado por administradores Linux e Unix;

Introdução

Secure Shell ou SSH é o conjunto de padrões e o protocolo associado que permite estabelecer um canal seguro entre dois computadores. Ele utiliza o sistema de chave criptográfica pública para autenticar um computador remoto, podendo utilizar esse sistema de chaves, também para autenticar usuário.


Em geral, o ssh utiliza a porta 22/tcp e é a alternativa seguro ao TELNET e FTP uma vez que eles não utilizam criptigrafia.

Formas de utilização

O ssh possui diversas formas de utilização, a mais básica de todas serve para estabelecer uma simples shell remota:

# ssh @

Para copiar arquivos de uma máquina para outra, deve-se seguir a mesma logica do comando cp que funciona da seguinte forma:

# cp

No caso do SCP a sintaxe é praticamente a mesma:

# scp

A diferença é que a origem e/ou destino podem ser remotos, ficando, por exemplo:

# scp @:

para copiar da maquina local para a maquina remota, ou

# scp @:

para copiar da máquina remota para a máquina local!

DICA LPI: Para conhecer melhor sobre o ssh mais detalhes cobrados na prova leia a man sshd_config.



Prática dirigida

Configuração do servidor SSH

1 – Instale o servidor de SSH:

# aptitude install ssh

2 – Vamos entender alguns desses parâmetros editando o arquivo de configuração do servidor de SSH:

# vim /etc/ssh/sshd_config

port 22
protocol 2
loginGraceTime 60
permitrootlogin no
pubkeyAuthentication yes
permitEmptyPasswords no
banner /etc/issue.net

3 – Após realizar as devidas alterações, vamos subir o daemon do servidor SSH:

# /etc/init.d/ssh stop

# /etc/initd.ssh start

4 – Determine qual é a porta utilizada pelo SSH:

# grep ssh /etc/services

5 – Verifique que a porta 22 está aberta e escutando:

# netstat -ltan |grep 22

# fuser -v 22/tcp

Utilização do cliente de SSH

Agora, como usuário comum, vamos realizar as seguintes tarefas:

1 – conecte-se ao servidor na máquina de um miguxo (heuehu).

$ ssh

$ ssh @

$ ssh -l

2 – Execute um comando na máquina remota sem estabelecer conexão:

$ ssh @ du -hs /usr


Copiando arquivos remotos

1- Copie um arquivo da sua máquina local para a máquia remota utilizando o scp:

$ echo “meu primeiro SCP” > /tmp/

$ scp /tmp/ @:

2 – Crie um arquivo na sua máquina e dê permissão para que qualquer usuário possa copiá-lo.

$ echo “alguma frase” > /tmp/$HOSTNAME

$ chmod 777 /tmp/$HOSTNAME

3 – Agora, utilizando o scp, copie o respectivo arquivo da máquina de um colega:

$ scp @: /tmp/microx


SSH com chaves assimétricas.

Quando criamos o par de chaves assimétricas, será criado um diretório ~/.ssh na home do usuário.

1 – Em nossa máquina local, sem ser via ssh, vamos criar o par de chaves

$ ssh-keygen -t rsa

generating public/private rsa key pair.
Enter file in which to save the key (/home//.ssh/id_rsa):
enter passhrase (empty for no passphrase):
enter samepassphrase again:
your identification has been saved in /home//.ssh/id_rsa.
Your public key has been saved in /home//.ssh/id_rsa.pub.
The key fingerprint is:
$#$$%#%$#%&*&*(* @micro#

obs: O nome do arquivo pode ser escolhido o padrão mesmo! Basta pressinar a tecla enter. Mas, repare que ele pede uma “passphrase” não uma “password”. Isso porque a idéia é aumentar a segurança, o que inclui uma senha maior!

2 – Verifique que as chaves foram criadas:

$ ls ~/.ssh

Agora que criamos essa chave, precisamos copiar a chave pública para a máquina remota!

3 – copie a chave pública para máquina remota:

$ scp ~/.ssh/id_rsa.pub @:~/.ssh;authorized_keys

4 – Agora é só acessar o servidor normalmente, e ver se ele pede a passhrase para a chave criada:

# ssh @










Read More