Você está na página 1de 47

Administração de Redes

Os direitos desta obra foram cedidos a Universidade Nove de Julho


Conhecendo um pouco do Linux

O sistema operacional Linux é de código-fonte aberto. Esse sistema foi criado por Linus
Torvalds, em 1991, enquanto ele ainda era estudante de Ciência da Computação na Universidade de
Helsinque, Finlândia.
Linus criou o Linux a partir do Minix, um sistema operacional também de código fonte
aberto criado pelo professor Andrew S. Tanenbaum em 1987. A proposta do Minix era ser um clone
aberto do Unix.
O Linux é aderente ao padrão ou comitê POSIX [Portable Operating System Interface for
Unix, de 1988. Todo sistema aderente ao POSIX é dito membro da família Unix. Os principais
membros dessa família atualmente são: Solaris [Sun Microsystems], HP-UX [HP], AIX [IBM] e
Linux [código fonte aberto]. O Linux não o único membro da família Unix de código fonte aberto,
como exemplo temos também o FreeBSD, da Berkeley Software Distribution.
A licença de uso do Linux é GNU General Public License. Sabemos hoje que o grande
mérito de Linus Torvalds não foi a criação do Linux, mas principalmente o modelo aberto e
colaborativo que ele inaugurou pela internet para conseguir resolver os problemas do sistema. Esse
modelo colaborativo foi posteriormente copiado por outros
grupos de desenvolvimento.
Tecnicamente, Linux é apenas um kernel [núcleo do sistema operacional]. O código fonte
está disponível, sem custo, em http://www.kernel.org. Compilar um kernel para determinada
arquitetura de computador não é tarefa simples para um usuário comum. Por
isso, as distribuições Linux vieram para simplificar a vida do usuário, e também para facilitar a
tarefa de divulgação do Linux.

DISTRIBUIÇÃO LINUX

Por definição, distribuição Linux é uma empresa que junta o kernel Linux, aplicações,
utilitários e um instalador amigável num pacote a ser distribuído livremente. O objetivo comercial é
o de vender licenças de suporte. Nesse pacote, geralmente é incluído apenas software de código
fonte livre, porém em algumas distribuições encontramos inclusive software proprietário.
Exemplos de distribuições Linux:
• Red Hat [www.redhat.com], é voltada para o segmento servidor. A versão para desktop é o
Fedora.
• Suse [www.novell.com/linux], é voltada para o segmento servidor. Para entrar nesse segmento, a
Novell comprou a distribuição Suse.
• Mandriva [www.mandriva.com] é voltada para o segmento desktop. Essa distribuição surgiu da
fusão da Mandrake [França] com a Conectiva [Brasil].
• Debian [www.debian.org] voltada para o segmento desktop. Tem a tradição de não incluir
software proprietário.
• Slackware [www.slackware.com] voltada para o segmento desktop. Tem a tradição de usar muito
a linha de comando.

LINHA DE COMANDO

A única interface comum a todos os sistemas membros da família Unix é a linha de


comando, portanto toda a administração desses sistemas é feita a partir de comandos.
Os comandos são disparados de uma aplicação chamada shell. O shell também é conhecido por
interpretador de comandos. Ao contrário do DOS/Windows, no mundo Unix existem dezenas de
interpretadores de comandos, por exemplo:

bash: Bourne Shell Again


ksh: Korn Shell
csh: C shell
sh: Bourne Shell

Para a linha de comando, basicamente todo shell é igual, de forma leiga podemos dizer que o shell é
“aquela telinha preta”.

Estrutura de diretórios e permissões do Linux

Diretório é o local utilizado para armazenar conjuntos arquivos para melhor organização e
localização. O diretório, como o arquivo, também é case sensitive. Um diretório no sistema Linux é
especificado por uma “/”.
O diretório raiz é o diretório principal do sistema. Dentro dele estão todos os outros diretórios como
o /bin, /sbin, /usr, /usr, /local, /mnt, /tmp, /var,/home, etc. Estes são chamados de sub-diretórios pois
estão dentro do diretório “/” (diretório raiz).
A estrutura de diretórios também é chamada de Árvore de Diretórios porque é parecida com uma
árvore de cabeça para baixo. Cada diretório do sistema tem seus respectivos arquivos que são
armazenados conforme regras definidas pela FHS (FileSystem Hierarchy Standard - Hierarquia
Padrão do Sistema de Arquivos), definindo que tipo de arquivo deve ser armazenado em cada
diretório.

Diretório atual

É o diretório em que nos encontramos no momento. O diretório atual também é identificado por um
“.” (ponto).

Diretório home

Também chamado de diretório de usuário. Em sistemas Linux cada usuário (inclusive o root) possui
seu próprio diretório onde poderá armazenar seus programas e arquivos pessoais.

Diretório superior

O diretório superior (Upper Directory) é identificado por .. (dois pontos).

Diretório anterior

O diretório anterior é identificado por “-”. É útil para retornar ao último diretório usado.

Caminho na estrutura de diretórios


São os diretórios que teremos que percorrer até chegar no arquivo ou diretório que procuramos. O
caminho de diretórios é necessário para dizer ao sistema operacional onde encontrar um arquivo na
“árvore” de diretórios.

Estrutura básica de diretórios do sistema Linux


O sistema Linux possui a seguinte estrutura básica de diretórios organizados segundo o FHS
(Filesystem Hierarchy Standard):
/bin Contém arquivos programas do sistema que são usados com freqüência pelos usuários.
/boot Contém arquivos necessários para a inicialização do sistema.
/cdrom Ponto de montagem da unidade de CD-ROM.
/media Ponto de montagem de dispositivos diversos do sistema (rede, pen-drives, CD-ROM em
distribuições mais novas).
/dev Contém arquivos usados para acessar dispositivos (periféricos) existentes no computador.
/etc Arquivos de configuração de seu computador local.
/floppy Ponto de montagem de unidade de disquetes
/home Diretórios contendo os arquivos dos usuários.
/lib Bibliotecas compartilhadas pelos programas do sistema e módulos do kernel.
/lost+found Local para a gravação de arquivos/diretórios recuperados pelo utilitário fsck.ext2. Cada
partição possui seu próprio diretório lost+found.
/mnt Ponto de montagem temporário.
/proc Sistema de arquivos do kernel. Este diretório não existe em seu disco rígido, ele é colocado lá
pelo kernel e usado por diversos programas que fazem sua leitura, verificam configurações do
sistema ou modificar o funcionamento de dispositivos do sistema através da alteração em seus
arquivos.
/root Diretório do usuário root.
/sbin Diretório de programas usados pelo superusuário (root) para administração e controle do
funcionamento do sistema.
/tmp Diretório para armazenamento de arquivos temporários criados por programas.
/usr Contém maior parte de seus programas. Normalmente acessível somente como leitura.
/var Contém maior parte dos arquivos que são gravados com freqüência pelos programas do
sistema, e-mails, spool de impressora, cache, etc.

COMANDOS

Comandos são ordens que passamos ao sistema operacional para executar uma determinada tarefa.
Cada comando tem uma função específica, devemos saber a função de cada comando e escolher o
mais adequado para fazer o que desejamos.
É sempre usado um espaço depois do comando para separá-lo de uma opção ou parâmetro que será
passado para o processamento. Um comando pode receber opções e parâmetros:
• Opções: as opções são usadas para controlar como o comando será executado.
• Parâmetros: um parâmetro identifica o caminho, origem, destino, entrada padrão ou saída
padrão que será passada ao comando.
Aviso de comando (prompt)
Aviso de comando (ou prompt), é a linha mostrada na tela para digitação de comandos que serão
passados ao interpretador de comandos para sua execução.
O aviso de comando do usuário root é identificado por uma “#” (tralha), e o aviso de comando de
usuários é identificado pelo símbolo “$”. Isto é padrão em sistemas UNIX.
Você pode retornar comandos já digitados pressionando as teclas Seta para cima ou Seta para baixo.

Login
Login é a entrada no sistema quando você digita seu nome e senha.

Logout
Logout é a saída do sistema. A saída do sistema é feita pelos comandos logout, exit, CTRL+D, ou
quando o sistema é reiniciado ou desligado.

Termos e Conceitos:

Batch . Processamento em aquivo de lotes. Onde os comandos são agrupados e executados


sequencialmente;

Cascateamento . Jogar o resultado de um comando diretamente a entrada de outro;

Shell . Prompt de Comando ou Console. Tela ou terminal do usuário onde os comandos podem ser
diretamente digitados;

Observações:

Os comandos do Linux podem ser utilizados diretamente no Shell ou em arquivos Batch, de forma
simples e direta ou em cascateamento.

Comandos de sistema:

clear . Limpa a tela

dmesg . Exibe a mensagens de inicialização

finger . Exibe informações sobre um usuário


halt . Desliga o computador

history . Exibe lista dos últimos comandos utilizados

id - Mostra o usuário atual

man . Manual de algum comando, assunto ou arquivo de configuração. Para sair do manual utiliza-
se :q

info - Informações sobre algum comando, assunto ou arquivo de configuração

su . Alterna para outra conta ou para superusuário caso haja permissão

exit . Sai da conta atual ou efetua logoff

lynx . Abre o navegador internet modo texto

lpr . Imprime um arquivo

lpq . Mostra o status da fila de impressão

lprm . Remove trabalho da fila de impressão

mount . Monta uma unidade

passwd . Altera senha de um usuário

reboot . Reinicia o computador

ssh . Acesso remoto seguro ao servidor

shutdown . Desliga ou reinicia o computador

telnet . Acesso remoto não seguro ao servidor

umount . Desmonta uma unidade

uptime . Mostra o tempo que o computador está ligado

adduser . Adiciona um novo usuário

userdel . Remove um usuário

vi . Abre o editor de textos vi

w . Mostra os usuários logados no momento


who . Mostra a conta que está sendo usada no momento
Comandos para Manipulação de Arquivos

pwd - Exibe o diretório atual

cd - Navegando entre diretórios

ls - Listar arquivos

mkdir - Cria um diretório

rmdir - Remove um diretório vazio

cp - Cópia de arquivos e diretórios

mv - Move ou renomeia arquivos e diretórios

rm - Remove arquivos e diretórios

find - Procura arquivos

fsck - Corrige a estrutuda de um volume de arquivos

ln - Cria links entre arquivos

cat - Exibe o conteúdo de um arquivo

head - Mostra o começo de um arquivo

tail - Mostra o fim de um arquivo

file - Indica o tipo de arquivo

wc . Conta linhas, palavras e bytes de um arquivo


Comandos para Manipulação de Arquivos

pwd . Exibe o diretório atual Sintaxe: $ pwd

Mostra de forma simples em qual diretório o usuário está localizado no momento.

cd . Navegando entre diretórios

Sintaxe: $ cd [nome_do_diretório]

Muda o diretório atual.

ls . Listar arquivos

Sintaxe: $ ls [opções] [arquivo/diretório]

Lista os arquivos e diretórios. Se executarmos apenas o comando ls sozinho, ele mostrará

todos os arquivos existentes no diretório atual.

mkdir . Cria um diretório

Sintaxe: $ mkdir <nome_do_diretório>

Cria um diretório. Exemplo, criar um diretório dentro do HOME do usuário:

rmdir . Remove um diretório vazio

Sintaxe: $ rmdir <nome_do_diretorio>

Apaga um diretório que esteja vazio.

cp . Cópia de arquivos e diretórios


Sintaxe: $ cp [opções] <arquivo_origem> <arquivo_destino>

Copia arquivos e diretórios.

mv . Move arquivos e diretórios

Sintaxe: $mv <arquivo_origem> <arquivo_destino>

Move um arquivo para outro lugar. Ele também é usado para renomear um arquivo.

rm . Remove arquivos e diretórios

Sintaxe: $ rm [opções] <arquivo>

Este comando apaga definitivamente o arquivo ou diretório. Exemplo:

find . Procura arquivos

Sintaxe: $ find <diretorio> [-name nomedoarquivo]

Procura por arquivos no diretório especificado. Em seu uso mais simples, ele procura pelos

nomes dos arquivos, mas pode também procurar por tipos, permissões, última modificação,

entre outros.

ln . Cria links entre arquivos

Sintaxe: $ ln -s <arquivo_origem> [link simbólico]

Usado para gerar links simbólicos, ou seja, links que se comportam como um arquivo ou

diretório, mas são apenas redirecionadores que mandam seu comando para outro arquivo ou

diretório.

cat . Exibe o conteúdo de um arquivo


Sintaxe: $ cat <arquivo>

Mostra o conteúdo de um arquivo, ou faz uma cópia deste arquivo, ou uma junção.

head . Mostra o começo do arquivo

Sintaxe: $ head [opções] <arquivo>

tail . Mostra o fim do arquivo

Sintaxe: $ tail [opções] <arquivo>

more . Visualiza arquivos por páginas finalizando a exibição ao final do mesmo

Sintaxe: $ more <arquivo>

less . Visualiza arquivos por páginas permitindo a navegação pelas teclas de cursor

Sintaxe: $ less <arquivo>

file . Indica o tipo de arquivo

Sintaxe: $ file <arquivo>

Identifica o tipo de arquivo ou diretório indicado pelo usuário conforme os padrões do sistema

operacional.
Configuração do TCP/IP no Linux

Se você quiser instalar uma máquina GNU/Linux em uma rede TCP/IP existente então você deve
contatar qualquer um dos administradores da sua rede e perguntar o seguinte:

• Endereço IP de sua máquina

• Nome da Máquina

• Endereço IP da rede

• Endereço IP de broadcast

• Máscara da Rede IP

• Endereço do Roteador

• Endereço do Servidor de Nomes (DNS)

Você deve então configurar seu dispositivo de rede GNU/Linux com estes detalhes. Você não pode
simplesmente escolhê-los e esperar que sua configuração funcione.

Configuração da interface Ethernet

As interfaces de rede no GNU/Linux estão localizadas no diretório /dev e a maioria é criada


dinamicamente pelos softwares quando são requisitadas. Este é o caso das interfaces ppp e plip que
são criadas dinamicamente pelos softwares.

Abaixo a identificação de algumas interfaces de rede no GNU/Linux (o “?” significa um número


que identifica as interfaces seqüencialmente, iniciando em 0):

• eth? - Placa de rede Ethernet e WaveLan.

• ppp? - Interface de rede PPP (protocolo ponto a ponto).

• slip? - Interface de rede serial

• plip? - Interface de porta paralela

• arc?e, arc?s - Interfaces Arcnet


• sl?, ax? - Interfaces de rede AX25 (respectivamente para kernels 2.0.xx e 2.2.xx.

• fddi? - Interfaces de rede FDDI.

• dlci??, sdla? - Interfaces Frame Relay, respectivamente para para dispositivos de


encapsulamento DLCI e FRAD.

• tr? – Interface Token Ring

• eql - Balanceador de tráfego para múltiplas linhas

A interface loopback

A interface loopback é um tipo especial de interface que permite fazer conexões com você mesmo.
Todos os computadores que usam o protocolo TCP/IP utilizam esta interface e existem várias
razões porque precisa fazer isto, por exemplo, você pode testar vários programas de rede sem
interferir com ninguém em sua rede. Por convenção, o endereço IP 127.0.0.1 foi escolhido
especificamente para a loopback, assim se abrir uma conexão telnet para 127.0.0.1, abrirá uma
conexão para o próprio computador local.

A configuração da interface loopback é simples e você deve ter certeza que fez isto (mas note que
esta tarefa é normalmente feita pelos scripts de inicialização existentes em sua distribuição).

ifconfig lo 127.0.0.1

Caso a interface loopback não esteja configurada, você poderá ter problemas quando tentar qualquer
tipo de conexão com as interfaces locais, tendo problemas até mesmo com o comando ping.

Configurando uma interface com o ifconfig

Depois de configurada fisicamente, a interface precisa receber um endereço IP para ser identificada
na rede e se comunicar com outros computadores, além de outros parâmetros como o endereço de
broadcast e a máscara de rede. O comando usado para fazer isso é o ifconfig (interface configure).
Para configurar a interface de rede Ethernet (eth0) com o endereço 192.168.1.1, máscara de rede
255.255.255.0, podemos usar o comando:

ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up

O comando acima ativa a interface de rede. A palavra up pode ser omitida, pois a ativação da
interface de rede é o padrão. Para desativar a mesma interface de rede, basta usar usar o comando:

ifconfig eth0 down

Digitando ifconfig são mostradas todas as interfaces ativas no momento, pacotes enviados,
recebidos e colisões de datagramas. Para mostrar a configuração somente da interface eth0, use o
comando:

ifconfig eth0

Configurando uma interface durante o boot

As interfaces de rede podem ser configuradas automaticamente durante o boot. Para isso existe o arquivo
/etc/network/interfaces

Se não tiver dispositivos ethernet, apenas a interface loopback aparecerá neste arquivo, de forma
semelhante a isto:

# Este ficheiro descreve os interfaces de rede disponíveis no seu sistema


# e como os activar. Para mais informação veja o manual de interfaces(5).
# A interface de rede loopback
auto lo
iface lo inet loopback
address 127.0.0.1
netmask 255.0.0.0

Se tiver apenas um dispositivo ethernet, eth0, que obtém a sua configuração de um servidor DHCP,
e que deva ser activado automaticamente no arranque do sistema, são necessárias apenas duas
linhas
adicionais:

auto eth0
iface eth0 inet dhcp

A primeira linha especifica que que o dispositivo eth0 deve ser automaticamente activado no
arranque. A segunda linha significa que a interface (“iface”) eth0 deve ter um endereço IPv4
(substitua “inet” por “inet6” para um dispositivo IPv6) e que deve obter a sua configuração
automaticamente a partir de DHCP. Assumindo que a sua rede e o servidor DHCP estão
correctamente configurados, esta máquina não deve necessitar de configuração adicional para
funcionar. O servidor DHCP fornecerá a porta de ligação (gateway) por omissão (implementado
através do comando route), o endereço IP do dispositivo (implementado através do comando
ifconfig,
e os servidores de DNS utilizados na rede (implementado no ficheiro /etc/resolv.conf).

Para configurar o seu dispositivo ethernet com um endereço IP fixo e uma configuração
personalizada, algumas informações serão necessárias. Suponha que pretende atribuir o
endereço IP 192.168.0.2 ao dispositivo eth1, com a máscara de rede habitual 255.255.255.0.
A sua porta de ligação por omissão é 192.168.0.1 . Deverá introduzir o seguinte no arquivo
/etc/network/interfaces:

iface eth1 inet static


address 192.168.0.2
netmask 255.255.255.0

gateway 192.168.0.1

Neste caso necessita especificar os servidores de DNS manualmente em /etc/resolv.conf, que


deverá ficar semelhante a isto:

search mydomain.com
nameserver 192.168.0.1
nameserver 4.2.2.2

Configurando uma rota no Linux


A configuração da rota é feita através da ferramenta route. Para adicionar uma rota para a rede
192.168.1.0 acessível através da interface eth0 basta digitar o comando:

route add -net 192.168.1.0 eth0

Para apagar a rota acima da tabela de roteamento, basta substituir a palavra add por del. A palavra
net quer dizer que 192.168.1.0 é um endereço de rede para especificar uma máquina de destino,
basta usar a palavra -host. Endereços de máquina de destino são muito usadas em conexões de rede
apenas entre dois pontos (como ppp, plip, slip). Por padrão, a interface é especificada como último
argumento. Caso a interface precise especifica-la em outro lugar, ela deverá ser precedida da opção
-dev.

Para adicionar uma rota padrão para um endereço que não se encontre na tabela de roteamento,
utiliza-se o gateway padrão da rede. Através do gateway padrão é possível especificar um
computador (normalmente outro gateway) que os pacotes de rede serão enviados caso o endereço
não confira com os da tabela de roteamento. Para especificar o computador 192.168.1.1 como
gateway padrão usamos:

route add default gw 192.168.1.1 eth0

O gateway padrão pode ser visualizado através do comando route -n e verificando o campo
gateway. A opção gw acima, especifica que o próximo argumento é um endereço IP (de uma rede
já acessível através das tabelas de roteamento).

O computador gateway está conectado a duas ou mais redes ao mesmo tempo. Quando seus dados
precisam ser enviados para computadores fora da rede, eles são enviados através do computador
gateway e o gateway os encaminham ao endereço de destino. Desta forma, a resposta do servidor
também é enviada através do gateway para seu computador (é o caso de uma típica conexão com a
Internet).
A nossa configuração ficaria assim:

route add -net 192.168.1.0 eth0


route add default gw 192.168.1.1 eth0

Para mais detalhes, veja a página de manual do route ou o NET3-4-HOWTO.

Hostname
Todas as máquinas que integram uma rede TCP/IP devem ter um nome pelo qual são conhecidas
pelas outras máquinas da rede. Esse nome é chamado de hostname. O comando utilizado para se
configurar o hostname é o hostname.

[root@gauss:~] # hostname gauss.alfamidia

Para verificar o nome da máquina, usa-se o comando hostname sem parâmetros:

[root@gauss:~] # hostname
gauss.alfamidia

O hostname também pode ser configurado automaticamente durante o boot, através do arquivo
/etc/sysconfig/network. Vejamos um exemplo:

NETWORKING=yes
HOSTNAME="gauss.alfamidia"
NISDOMAIN=""
GATEWAY=
GATEWAYDEV=

Com esse arquivo, o nome da estação vai ser inicializado automaticamente durante o boot.
Arquivos de configuração

O arquivo /etc/hosts
Este arquivo contém uma relação entre o endereço IP e o nome de computadores. A inclusão de um
computador neste arquivo dispensa a consulta de um servidor de nomes para obter um endereço IP,
sendo muito útil para máquinas que são acessadas freqüentemente. A desvantagem de fazer isto é
que você mesmo precisará manter este arquivo atualizado e se o endereço IP de algum computador
for modificado, esta alteração deverá ser feita em cada um dos arquivos hosts das máquinas da rede.
Em um sistema bem gerenciado, os únicos endereços de computadores que aparecerão neste
arquivo serão da interface loopback e os nomes de computadores.

# /etc/hosts
127.0.0.1 localhost loopback
192.168.0.1 this.host.name

Você pode especificar mais que um nome de computador por linha como demonstrada pela primeira
linha, a que identifica a interface loopback.

O arquivo /etc/networks
O arquivo /etc/networks tem uma função similar ao arquivo /etc/hosts. Da mesma forma que cada
máquina da rede pode ter um nome, as próprias redes também podem ter nomes. Esse arquivo
serve para fazer a relação entre nomes de redes e número IP.

Ele contém um banco de dados simples de nomes de redes contra endereços de redes. Seu formato
consiste em dois campos por linha e seus campos são identificados como:

Nome_da_Rede Endereço_IP_da_Rede

Abaixo um exemplo de como se parece este arquivo:

loopnet 127.0.0.0
localnet 192.168.1.0
amprnet 44.0.0.0
Quando usar comandos como route, se um destino é uma rede e esta rede se encontra no arquivo
/etc/networks, então o comando route mostrará o nome da rede ao invés de seu endereço.

O arquivo /etc/host.conf
Esse arquivo serve para configurar o sistema de resolução de nomes, onde é possível configurar
alguns itens que controlam o comportamento do resolvedor de nomes. A principal opção desse
arquivo é a order, que determina a ordem em que os serviços serão analisados. As opções válidas
são:

• bind: consulta um servidor DNS;

• hosts: consulta o arquivo /etc/hosts;

• nis: consulta o NIS;


O formato deste arquivo é descrito em detalhes na página de manual resolv+. Em quase todas as
situações, o exemplo seguinte funcionará:

order hosts,bind
multi on

Este arquivo de configuração diz ao resolvedor de nomes para checar o arquivo /etc/hosts
(parâmetro hosts) antes de tentar verificar um servidor de nomes (parâmetro bind) e retornar um
endereço IP válido para o computador procurado. multi on retornará todos os endereços IP
resolvidos no arquivo /etc/hosts ao invés do primeiro.
Os seguintes parâmetros podem ser adicionados para evitar ataques de IP spoofing:

nospoof on
spoofalert on

O parâmetro nospoof on ativa a resolução reversa do nome (para checar se o endereço pertence
realmente àquele nome) e o spoofalert on registra falhas desta operação no syslog.

O arquivo /etc/resolv.conf
Esse arquivo informa como vai ser a consulta ao servidor DNS. O /etc/resolv.conf é o arquivo de
configuração principal do código do resolvedor de nomes. Seu formato é um arquivo texto simples
com um parâmetro por linha, e os endereços de servidores DNS externos são especificados nele.
Existem três palavras chaves normalmente usadas que são:

• domain Especifica o nome do domínio padrão, para que não seja necessário digitar
todo o domínio para se acessar as máquinas da rede local..

• search Especifica uma lista de nomes de domínio alternativos ao procurar por um


computador, separados por espaços. A linha search pode conter no máximo 6 domínios
ou 256 caracteres.

• nameserver Especifica o endereço IP de um servidor DNS para resolução de


nomes. Podem ser especificados até três servidores.
Como exemplo, o /etc/resolv.conf se parece com isto:

domain maths.wu.edu.au
search maths.wu.edu.au wu.edu.au
nameserver 192.168.10.1
nameserver 192.168.12.1

Este exemplo especifica que o nome de domínio a adicionar ao nome não qualificado (Ex.
hostnames sem o domínio) é maths.wu.edu.au e que se o computador não for encontrado naquele
domínio então a procura segue para o domínio wu.edu.au diretamente. Duas linhas de nomes de
servidores foram especificadas, cada uma pode ser chamada pelo código resolvedor de nomes para
resolver o nome.
Outros arquivos de configuração relacionados com a rede

O arquivo /etc/services
O arquivo /etc/services é um banco de dados simples que associa um nome amigável a humanos a
uma porta de serviço amigável a máquinas. É um arquivo texto de formato muito simples, cada
linha representa um item no banco de dados. Cada item é dividido em três campos separados por
qualquer número de espaços em branco (tab ou espaços). Os campos são:

nome porta/protocolo apelidos # comentário

Uma palavra simples que representa o nome do serviço sendo descrito.

porta/protocolo

Este campo é dividido em dois sub-campos.

• porta: Um número que especifica o número da porta em que o serviço estará disponível.
Muitos dos serviços comuns têm designados um número de serviço. Estes estão
descritos no RFC-1340.

• protocolo: Este sub-campo pode ser ajustado para tcp ou udp. É importante notar que o
item 18/tcp é muito diferente do item 18/udp e que não existe razão técnica porque o
mesmo serviço precisa existir em ambos. Normalmente o senso comum prevalece e que
somente se um serviço esta disponível em ambos os protocolos tcp e udp, você precisará
especificar ambos.

• apelidos: Outros nomes podem ser usados para se referir a entrada deste serviço.

• comentário: Qualquer texto aparecendo em uma linha após um caractere "#" é ignorado
e tratado como comentário.

O arquivo /etc/protocols
O arquivo /etc/protocols é um banco de dados que mapeia números de identificação de protocolos
novamente em nomes de protocolos. Isto é usado por programadores para permiti-los especificar
protocolos por nomes em seus programas e também por alguns programas tal como tcpdump
permitindo-os mostrar nomes ao invés de números em sua saída. A sintaxe geral deste arquivo é:

nomeprotocolo número apelidos


● Como funcionam os usuários dentro de um sistema Linux.

● Onde ficam as informações dos usuários.

– /etc/passwd

– /etc/shadow

O arquivo /etc/passwd representa uma lista de usuários reconhecidos pelo sistema, O sistema
Consulta o arquivo em tempo de login para determinar o UID e o diretório inicial(home directory)
de um usuários, entre outras coisas.

Cada linha no arquivo indica um usuário e contém sete campos separados por dois pontos,
que são respectivamente:

1- Nome de Login
2- Senha criptografada ou marcador de lugar de senha
3- Número de UID( ID de usuário)
4- Número de GID padrão (ID de grupo)
5- Informações GECOS: Nome completo, empresa,ramal, telefone residencial
6- Diretório inicial
7- Shell de Login

Os nomes de login não podem ter mais de 8 ou 32 caracteres, podendo conter quaisquer caracteres,
exceto dois pontos e caractere de nova linha. Como as versões antigas do UNIX limitam o
comprimento a 8 caracteres, por questão de compatibilidade com qualquer ambiente, mantemos o
comprimento de 8 caracteres.

Em grande parte das distribuições Linux as senhas ficam armazenadas no arquivo shadow, este
arquivo é legível somente pelo superusuário e serve para manter as senhas criptografadas protegidas
contra o acesso não autorizado. Sua composição é semelhante a do passwd sendo:

1- Nome do login
2- Senha criptografada
3- Data da última mudança de senha
4- Número mínimo de dias entre mudanças de senha.
5- Número máximo de dias entre mudanças de senha.
6- Número de dias antecipados para alertar usuários sobre a expiração de suas senha.
7- Número de dias após a expiração da senha que a conta será desabilitada.
8- Data da expiração da senha.
9- Reservado para uso futuro.

O arquivo /etc/group

Este arquivo contém os nomes dos grupos UNIX e uma lista dos membros de cada grupo, cada
linha possui quatro campos, sendo:

1- Nome do grupo
2- Senha criptografada ou contém um X,indicando um arquivo gshadow
3- Número GID
4- Lista de membros, separados por vírgulas (atenção para não adicionar espaços)

O Administrador poderia criar os usuários em cada máquina na unha, mas na prática temos
ferramentas para isso, note que este procedimento é usado, quando criamos usuários na máquina
do cliente, note que o ideal seria ter um servidor de diretórios, que controlaria em apenas uma
máquina os logins e senhas de todos os usuários, mas isso já é outra história...

Vamos lá:

Para Criar um usuário podemos utilizar a ferramenta adduser,exemplo:

sudo adduser teste

Imediatamente, ele lhe solicitará a senha,nome completo, número da sala, telefone do trabalho,
do lar,outros....Criando também o diretório inicial do usuário em /home/usuario
Para trocar a senha de qualquer usuário a qualquer momento, utilize o comando: sudo passwd
usuário.

Eliminando usuários

Para isso, utilize o comando sudo deluser usuário

Desativando usuários

De vez em quando,o login do usuário precisa ser desativado temporariamente, para isso coloque
um asterístico ou outro caracter na frente da senha encriptada no arquivo /etc/shadow, para
ativar é só remover.
Protocolo DHCP

DHCP significa Protocolo de Configuração Dinâmica de Máquinas. É usado para controlar


parâmetros de controle de rede vitais para as máquinas (ao ser executado em clientes) com a ajuda
de um servidor. O DHCP reduz o trabalho administrativo usando a configuração automática
TCP/IP. O DHCP mantém compatibilidade reversa com o BOOTP. Para maiores informações veja
a RFC 2131 (antiga RFC 1531) e outras (veja a seção de Recursos Internet no final deste
documento). Pode-se verificar ainda o FAQ sobre DHCP.

Existe tanto o servidor DHCP como o cliente DHCP. Muitos usuários precisam do cliente, que é
usado nas estações de trabalho, para obter as informações de rede de um servidor remoto. O
servidor é usado pelos administradores de sistemas para distribuir informações de rede para os
clientes. Então caso o leitor seja somente um usuário normal de rede, necessitará somente do
programa cliente.

Exemplo da facilidade de uso do DHCP

Você precisa configurar 110 computadores com a configuração IP, mas sem DHCP.
Não lhe resta alternativa além de configurar manualmente cada um dos
computadores individualmente. Além disso, também é preciso documentar a
configuração IP de cada cliente e realizar uma modificação na configuração IP dos
clientes e ainda reconfigurar manualmente cada um deles.

Mas o DHCP oferece uma solução para esse problema. Com o DHCP, você só
precisa adicionar a configuração ao servidor DHCP, que atualizará os 110 clientes da rede.
Além disso, quando precisar realizar uma modificação na configuração IP, ela será realizada
uma única vez no Servidor DHCP, exigindo simplesmente que cada cliente TCP/IP atualize
a sua configuração.
Configuração do Cliente DHCP

Atualmente, existem três clientes DHCP para Linux: o dhcpcd, pump and dhclient.

Independente da distribuição que se esteja utilizando será necessário obter um programa cliente
DHCP para Linux. O pacote necessário é chamado dhcpcd, pode-se obter uma descrição do pacote
em aqui.

Instalação

Num terminal, digite o seguinte comando para instalar o dhcpd:


sudo apt-get install dhcpd

Provavelmente, aparecerá algo como:


Por favor note que se está a instalar o servidor DHCP pela primeira
vez necessita configurá-lo. Por favor pare (/etc/init.d/dhcp stop)
o serviço de DHCP, edite o /etc/dhcpd.conf para corresponder às
suas configurações e necessidades, e reinicie o serviço DHCP
(/etc/init.d/dhcp start).
Também necessita editar o /etc/default/dhcp para especificar os
interfaces de rede que o dhcpd deve escutar. Por omissão escuta o eth0.
NOTA: As mensagens do dhcpd são enviadas para o syslog.
Procure aí por mensagens de disgnóstico.
A iniciar o servidor DHCP: dhcpd falhou ao iniciar - verifique o syslog para diagnósticos.

Isto indica que o mesmo instalou, mas agora deve ser configurado para seu perfeito funcionamento:

# Exemplo de /etc/dhcpd.conf
# (adicione comentários aqui)
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.254;
option domain-name-servers 192.168.1.1, 192.168.1.2;
option domain-name "mydomain.org";
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.100;
range 192.168.1.150 192.168.1.200;
}

Veja acima um exemplo de configuração DHCPD.conf, Isto resulta num servidor DHCP atribuindo
um endereço IP da gama 192.168.1.10-192.168.1.100 ou 192.168.1.150-192.168.1.200 . Esse
endereço será atribuído por um período de 600 segundos, se o cliente não especificar outro intervalo
de tempo. Caso contrário, o tempo máximo (permitido) de atribuição será de 7200 segundos. O
servidor também "aconselhará" o cliente a utilizar a máscara de rede 255.255.255.0 , 192.168.1.255
como endereço de difusão, 192.168.1.254 como router/gateway e 192.168.1.1 e 192.168.1.2 como
os seus servidores de DNS.

Após configurar o dhcp, você pode inicializá-lo digitando na linha de comando:

sudo dhcpd start

Serviço de Nomes de Domínios ou Domain Name Service (DNS)

Introdução

Para iniciantes, DNS é o Servidor de Nomes do Domínio. O DNS converte os nomes das
máquinas para números IP, que são os endereços das máquinas, mapeando de nome para endereço e
de endereço para nome. Um mapeamento é simplesmente uma associação entre duas informações,
neste caso um nome de máquina, como ftp.linux.org, e o número IP da máquina, como por exemplo
199.249.150.4.

O serviço de nomes no Unix é feito por um programa servidor denominado named. Ele é
integrante do pacote de bind que é coordenado por Paul Vixie para o Consórcio de Programas Para
a Internet. O Servidor de nomes está incluído na maioria das distribuições GNU/Linux e é
usualmente instalado como /usr/sbin/named. Caso se tenha um named à disposição pode-se usá-lo;
caso contrário é possível obter-se um binário a partir de um site ftp Linux, ou conseguir os fontes
mais recentes em ftp.isc.org:/isc/bind/src/cur/bind-8/. O DNS é um banco de dados distribuído por
toda a rede. É necessário ter extremo cuidado com tudo o que for colocado nele. Ao se colocar
dados sem significado, outros utilizarão estes dados e certamente tudo ficará um pouco "estranho".
O DNS deve estar sempre atualizado e arrumado, evitando-se assim problemas desagradáveis.
Deve-se aprender a usá-lo, administrá-lo, depurá-lo para tornar-se um bom administrador da rede,
evitando sobrecargas geradas por problemas de administração.

De forma mais simples, também podemos dizer que o DNS é um Sistema de banco de dados
distribuído e hierárquico de computadores, serviços e recursos da Internet, que relaciona nomes
fáceis de lembrar por humanos com identificação binária de endereços de recursos.

Veja um filme sobre DNS em http://www.youtube.com/watch?v=ZBi8GCxk7NQ

Dica: Devem ser feitas cópias de segurança de todos os arquivos. É aconselhável, ainda,
que elas sejam alteradas de tempos em tempos. Assim se depois de todas as tentativas, nada
funcionar, pode-se retornar à situação anterior.

Instalação

Na linha de comandos, digite o comando seguinte para instalar o dns:

sudo apt-get install bind

Configuração

Os ficheiros de configuração DNS são guardados no directório /etc/bind. O ficheiro de configuração


principal é o /etc/bind/named.conf. O conteúdo do ficheiro de configuração por omissão é
mostrado de seguida:
// Este é o ficheiro principal de configuração do servidor BIND DNS.
//
// Por favor leia /usr/share/doc/bind/README.Debian para informações sobre
// a estrutura dos ficheiros de configuração do BIND na Debian para o BIND 8.2.1
// e posteriores, *ANTES* de alterar este ficheiro de configuração
//
include "/etc/bind/named.conf.options";
// reduzir pormenor do registo em assuntos fora do nosso controlo
logging {
category lame-servers { null; };
category cname { null; };
};
// inicializar o servidor com conhecimento dos servidores de raiz
zone "." {
type hint;
file "/etc/bind/db.root";
};
// Ser autoritário para as zonas de encaminhamento e retorno do localhost, e para
// zonas de broadcast seguindo a RFC 1912
zone "localhost" {
type master;
file "/etc/bind/db.local";
};

Um Servidor de Nomes Somente Para Cache.

Um servidor de nomes somente para cache deve ser capaz de encontrar as respostas às pesquisas de
nomes e endereços e deve ainda guardar as respostas, para a próxima em que sejam necessárias.
Isto diminuirá o tempo de espera significativamente, especialmente quando se tem uma conexão
lenta.

Inicialmente é necessário ter-se um arquivo /etc/named.conf, o qual será lido quando o servidor de
nomes for inicializado. Por enquanto ele pode conter simplesmente:

// Configuração do arquivo para um servidor de nomes somente para cache

options{
directory "/var/named";
// Não comentar isto pode ajudar caso se tenha um firewall presente
// e as coisas não estejam funcionando:

// endereço de pesquisa: porta 53;


};

zone "." {
type hint;
file "rott.hints ";
};

zone "0.0.127.in-addr.arpa" {
type master;
file "pz/127.0.0";
};
// Adicionar aqui definições de local
include "/etc/bind/named.conf.local";

Para iniciar o servidor DNS, digite o seguinte comando num terminal ou linha de comandos:

sudo /etc/init.d/bind start

Licenciamento WINDOWS

Para a família Server do Windows 200X, além da licença de uso do programa, é necessário obter uma
licença para cada computador que terá acesso ao servidor ( CAL – Licença para Cliente ). Para este caso,
temos dois tipos de licença: Per Server e Per Seat.

A licença Per Sever é habitualmente utilizada por usuários que não estão sempre conectados a um servidor.
Isso porque permite ao mesmo garantir suporte a um número fixo de conexões. Para tal, é requisitado uma
CAL para cada conexão simultânea com o servidor.
Diferentemente, a Per Seat, graças à solicitação de uma CAL para cada computador cliente, possibilita
estabelecer uma conexão com o número de computadores que desejar ao mesmo. Por isso, organizações com
mais de um servidor têm preferência por esse modo de licenciamento.

Domínio X Grupo de trabalho

Para a instalação do Windows 200X, devemos definir se a administração da rede será centralizada ( Domínio
) ou descentralizada ( Grupo de Trabalho ).

Domínio

Domínios são grupos de computadores ligados po r um único diretório- Active Directory – que reúne toda a
base de dados desse conjunto. O Administrador de domínio é responsável pelo controle de usuários e grupos
que têm acesso ao domínio, por meio dos controladores de domínio.

Todas as máquinas definidas como controladores de Domínio possuem uma cópia do Active Diretory. Todas
as mudanças feita no Active Diretory refletirão em todos os controladores de domínio por meio da
replicação.

A estrutura de domínios também garante administrativas sejam realizadas a partir de qualquer domínio.

Para ingressar em um domínio, são necessários alguns pré- requisitos tanto por parte do usuário como do
computador. Vejamos quais:

Ambos – usuário e computador – devem ser portadores de uma conta própria, respectivamente, no Active
Directory e no banco de dados do diretório do domínio a ser ingressado pelo computador. No caso deste
último, há, ainda a possibilidade de empregar uma conta de computador gerada por um usuário portador de
permissões para criar uma conta de computador de domínio.

Grupo de Trabalho
Entende-se por grupo de trabalho um modesto conjunto de computadores conectados em rede, aptos a atuar
em grupo sem o estabelecimento de um gerenciamento centralizado.

Cada computador do grupo de trabalho é responsável pela execução da administração, dos recursos e da
autenticação dos usuários. Há um banco de dados de gerenciador de contas de segurança ( SAM ) local para
cada um desses computadores.

Senha para conta do administrador local

O último passo para o planejamento da instalação do Windows 200X é definir a senha que será utilizada para
a conta do administrador local.

DHCP E DNS EM WINDOWS

Para instalar e configurar o DHCP e DNS em Windows abra o documento dhcp_dns_windows.pdf


anexo
Como instalar o Active Directory no Windows Server 200X

Primeiro assegure-se que o seu servidor e a sua rede estão funcionando conforme o artigo
"Requisitos e Recomendações para a instalação do AD".
IMPORTANTE!
Este artigo é voltado para a instalação do primeiro DC (Domain Controller) em um novo AD
(Active Directory), em uma nova Árvore, em uma nova Floresta.

1.1 Etapa 1 - Executar o DCPROMO


Clique no menu Iniciar, escolha a opção "Executar..."

Digite: dcpromo
Clique no botão "OK"
A janela do "Assistente para instalação do Active Directory" irá aparecer. Clique no botão
"Avançar".

Na janela de "Compatibilidade de sistema operacional" leia os requisitos mínimos dos clientes do


AD. A seguir, clique no botão "Avançar".
Na janela de "Tipo de controlador de domínio", selecione a opção "Controlador de domínio para um
novo domínio" e clique no botão "Avançar".

Na janela de "Criar novo domínio", selecione a opção "Domínio em uma nova floresta" e clique no
botão "Avançar".
A janela de "Novo nome de domínio" é a opção mais importante na criação do AD. Como todo o
sistema do AD é baseado no DNS, a criação do nome de domínio irá afetar toda a operação da rede.
Entre com o nome DNS completo do domínio, por exemplo: contoso.com.br
Clique no botão "Avançar".
Este parte poderá demorar alguns minutos, pois o sistema irá procurar pelo servidor DNS e verificar
se o nome já existe.
Na janela de "Nome do domínio NetBIOS", aceite a opção padrão (que é o primeiro nome do
domínio DNS) e clique no botão "Avançar".

Na janela de "Pastas do banco de dados e log", lembre-se que a partição deverá ser NTFS e você
somente deverá alterar os caminhos padrões por motivos de desempenho.
O caminho "\Windows\NTDS" é o local onde serão armazenados os dados do AD.
Aceite as opções padrões e clique no botão "Avançar".

Na janela de "Volume de sistema compartilhado", a partição também deverá ser NTFS e somente
deverá ser alterado caso haja problemas de desempenho.
O caminho "\Windows\SYSVOL" é o local onde serão armazenados as GPOs e scripts do AD e esta
pasta é replicada para todos os outros DC.
Aceite a opção padrão e clique no botão "Avançar".
Se o servidor DNS não estiver ativo ou configurado corretamente, você verá o seguinte aviso:

Em geral, o primeiro DC do AD também é o servidor DNS (que é o caso do nosso artigo).


Lembre-se que o servidor DNS requerido pelo AD deve aceitar registro SRVs e atualizações
dinâmicas.
Portanto, o mais recomendável é utilizar o servidor DNS do Windows Server 2003 e deixar que o
assistente faça a instalação e configuração do mesmo.
Selecione a opção "Instalar e configurar o servidor DNS neste computador e definir este
computador para usar o servidor DNS como seu servidor DNS preferencial" e clique no botão
"Avançar".
Na janela de "Permissões", selecione a opção "Permissões compatíveis somente com os sistemas
operacionais de servidor Windows 2000 ou Windows Server 2003" e clique no botão "Avançar".
Esta opção somente deverá ser alterada caso você tenha DCs rodando em plataforma WindowsNT,
o que não é o caso do nosso artigo.

Na janela de senha, digite e confirme a senha de administrador do modo de restauração; clique no


botão "Avançar".
Esta senha é importante, pois ela não é a mesma senha do administrador do DC e deve ser usada
quando houver problemas no DC ou quando o DC for removido do computador.

Na janela de "Resumo", verifique as opções selecionadas. Caso as opções estejam corretas, clique
no botão "Avançar".

Você irá acompanhar o assistente executando as tarefas solicitadas.


Nunca clique no botão "Cancelar", pois você irá estragar todo o computador!
Caso tenha cometido algum erro, aguarde o assistente finalizar e depois execute-o novamente para
desfazer as alterações.

Caso as tarefas tenham sido realizadas com sucesso, você obterá a seguinte tela:
Clique no botão "Concluir".
Você precisará reiniciar o computador para iniciar o AD. Clique no botão "Reiniciar agora".

1.2 Etapa 2 - Verificando a instalação do AD


Nesta etapa iremos verificar se a instalação do AD foi realizada com sucesso.
Primeiro, vamos verificar se todas as ferramentas de administração do AD foram instaladas. Clique
no menu Iniciar, Todos os programas, Ferramentas administrativas.
Execute o programa "Usuários e computadores do Active Directory". Verifique se o domínio
"contoso.com.br" foi criado e se dentro dele existem as opções padrões de objetos.

Execute o programa "Serviços e sites do Active Directory". Verifique se foi criado um site chamado
"Primeiro-site-padrão" e dentro dele está o servidor.
Execute o programa "DNS". Verifique se existe uma zona com o nome de domínio
"contoso.com.br". Dentro desta zona, deve existir 4 registros SRVs.

Atenção! Caso não apareça os 4 registros SRVs, isso significa que o servidor DNS está com
problemas. Caso o servidor DNS não tenha sido criado e configurado pelo assistente do Windows, o
problema pode estar nas configurações IP, sufixos, atualizações dinâmicas, etc. Caso você tenha
problemas no servidor DNS, execute novamente o DCPROMO e refaça o AD, antes de criar
usuários, grupos e computadores.
Verifique a existência do diretório NTDS e seus arquivos.

Verifique a existência do diretório SYSVOL e seus sub-diretórios.


Verifique a existência dos compartilhamentos de rede SYSVOL e NETLOGON nos "Meus Locais
de Rede".

Caso todas as condições acima estejam corretas, parabéns! Você instalou o AD com sucesso.

Você também pode gostar