Administração de TCP/IP

Comando
Ação
dig Consulta servidores de nome de domínio.
ftpd Servidor para transferências de arquivo.
gated Tabelas de roteamento de mensagens entre redes.
host Imprime informações de host e zona.
ifconfig Configura parâmetros de interface de rede.
named Faz a tradução entre nomes de domínio e endereços IP.
netstat Imprime o estado da rede.
ping Verifica se um host remoto está on-line e respondendo.
pppd Cria conexão PPP serial.
rdate Notifica o servidor de horário de que a data mudou.
route Gerencia tabelas de roteamento.
routed Mantém tabelas de roteamento atualizadas dinamicamente.
slattach Liga linhas seriais às interfaces de rede.
sshd Servidor para conexões de shell seguras.
tcpdump Escreve informações de pacotes de rede na tela ou no arquivo.
telnetd Servidor para sessões Telnet de hosts remotos.
tftpd Servidor para conjunto restrito de transferências de arquivo.

VISÃO GERAL DO PROTOCOLO TCP/IP

TCP/IP é um conjunto de protocolos de comunicação que define como diferentes tipos de computadores se comunicam entre si. Seu nome é proveniente de seus protocolos básicos, Transmission Control Protocol e Internet Protocol. O Internet Protocol fornece endereçamento lógico quando os dados se movem entre os hosts: ele divide os dados em pacotes, os quais são então encaminhados para as máquinas através da rede. O Transmission Control Protocol garante que os pacotes de uma mensagem sejam novamente montados na ordem correta no destino final e que quaisquer datagramas ausentes sejam reenviados, até que sejam recebidos corretamente. Outros protocolos fornecidos como parte do TCP/IP incluem:

Address Resolution Protocol (ARP)

Faz a tradução entre endereços de Internet e do hardware local (Ethernet etc).

Internet Control Message Protocol (ICMP)

Protocolo de mensagem de erro e controle.

Point-to-Point Protocol (PPP)

Permite que o protocolo TCP/IP (e outros) seja transportado entre enlaces seriais ponto a ponto, tanto síncronos como assíncronos.

Reverse Address Resolution Protocol (RARP)

Faz a tradução entre endereços do hardware local e da Internet (o oposto do ARP).

Simple Mail Transport Protocol (SMTP)

Usado pelo comando sendmail para enviar correio via TCP/IP.

Simple Network Management Protocol (SNMP)

Executa funções distribuídas de gerenciamento de rede via TCP/IP.

User Datagram Protocol (UDP)

Transfere dados sem estabelecer primeiro uma conexão persistente entre dois sistemas, como faz o protocolo TCP. Às vezes, é chamado de transporte não confiável.

O protocolo TCP/IP é abordado em profundidade no conjunto de três volumes Internetworking with TCP/IP (Prentice Hall). Os comandos deste capítulo e do próximo estão descritos com mais detalhes nos livros TCP/IP Network Administration e Linux Network Administrator’s Guide, ambos publicados pela O’Reilly.

Na arquitetura dos protocolos TCP/IP, os dados são passados para baixo da pilha (na camada de acesso à rede), quando são enviados para a rede, e para cima da pilha, quando são recebidos da rede (veja a Figura 2-1).

Endereços IP

O endereço IP (protocolo de Internet) é um número binário que diferencia sua máquina de todas as outras da rede. Cada máquina na Internet deve ter um endereço IP exclusivo. A forma mais comum de endereço IP usado correntemente (IPv4) utiliza endereços binários de 32 bits. Um endereço IPv4 é constituído de duas partes: uma referente à rede e outra referente ao host. O número de bits de endereço usado para identificar a rede e o host difere de acordo com a classe do endereço. Existem três classes de endereço principais: A, B e C (veja a Figura 2-2). Os bits mais à esquerda indicam a que classe cada endereço pertence.

https://3c0linux.files.wordpress.com/2009/04/21.png
Figura 2.1 Camadas na arquitetura do protocolo TCP/IP.

https://3c0linux.files.wordpress.com/2009/04/22.png
Figura 2.2 Estrutura do endereço IP.

Um padrão chamado Classless Inter-Domain Routing (CIDR ou super-rede) amplia o conceito de sistema de classes, que usa os bits iniciais para identificar para onde os pacotes devem ser direcionados. No CIDR, um novo domínio pode ser criado com qualquer número de bits mais à esquerda fixos (e não apenas um múltiplo de 8). Um endereço CIDR é parecido com um endereço IPv4 normal, seguido por uma barra e um valor indicando o número de bits de rede. Por exemplo: 192.168.32.1/24 ou 128.66.128.1/17. Atualmente, praticamente todos os hosts de gateway da Internet usam CIDR.

O IPv6, um padrão mais recente, altera o método de endereçamento e aumenta o número de campos. Um endereço IPv6 tem 128 bits. Parte de um endereço IPv6 é baseada no endereço MAC (Media Access Control) da interface de rede. Quando escrito, normalmente ele é dividido em oito blocos hexadecimais de 16 bits, separados por dois-pontos. Por exemplo:

FE80:0000:0000:0000:0202:B3FF:FE1E:8329

Para encurtar isso, os zeros à esquerda podem ser omitidos e um conjunto de zeros consecutivos pode ser substituído por dois-pontos duplos. Por exemplo, o endereço anterior pode ser reduzido para:

FE80::202:B3FF:FE1E:8329

Quando redes IPv4 e IPv6 são misturadas, o endereço IPv4 pode ser empacotado nos quatro bytes inferiores, gerando um endereço como 0:0:0:0:0:0:192.168.1.2 ou :: 192.168.1.2. ouaté::C0A8:102.

Como os aprimoramentos do padrão IPv4, incluindo o CIDR, atenuaram grande parte da pressão para migrar para o padrão IPv6, as empresas têm adotado este último lentamente. Algumas o utilizam experimentalmente, mas, normalmente, a comunicação entre empresas que usam IPv6 internamente ainda é encapsulada dentro de datagramas IPv4 e continuará sendo, enquanto o padrão IPv6 não se tornar comum.

Se você quiser se conectar à Internet, entre em contato com um provedor de serviços de Internet (PSI). Para a maioria dos usuários, o provedor atribui um endereço IP dinamicamente para seus sistemas. Se quiser ter sempre o mesmo endereço, peça para que o provedor atribua um endereço ou um intervalo de endereços estático. Se você não estiver se conectando com uma rede externa, pode escolher seu próprio endereço de rede, desde que ele esteja de acordo com a sintaxe de endereços IP. Você deve usar os endereços reservados especiais fornecidos no RFC 1597, que lista os números de rede IP para redes privadas que não precisam ser registrados no IANA (Internet Assigned Numbers Authority). Um endereço IP é diferente de um endereço Ethernet, que é atribuído pelo fabricante da placa Ethernet física.
Gateways e Rotea mento
Gateways são hosts responsáveis pela troca de informações de roteamento e encaminhamento de dados de uma rede para outra. Cada parte de uma rede que está sob uma administração local separada é chamada de sistema autônomo (SA). Os sistemas autônomos se conectam entre si por meio de gateways externos. Um SA também pode conter seu próprio sistema de redes, ligadas por meio de gateways internos.
Protocolos de gateway

Os protocolos de gateway incluem:

EGP (Exterior Gateway Protocol)
BGP (Border Gateway Protocol)

Protocolos de gateways externos para troca de informações

RIP (Routing Information Protocol)

Protocolo de gateway interno; mais popular para redes locais

Hello Protocol
OSPF (Open Shortest Path First)

Protocolos de gateway interno

Daemons de roteamento
Embora a maioria das redes use um roteador dedicado como gateway, os daemons de roteamento GNU Zebra e routed podem ser executados em um host para £azê-lo funcionar como gateway. Apenas um deles pode ser executado em um host em determinado momento. O Zebra é o daemon de roteamento de gateway que substitui o daemon de roteamento gated, mais antigo. Ele permite que um host funcione tanto como gateway externo como interno e simplifica a configuração de roteamento, combinando os protocolos RIP, Hello, BGP, EGP e OSPF em um único pacote. Não abordaremos o GNU Zebra neste livro.
O routed, um daemon de roteamento de rede que usa RIP, permite que um host funcione apenas como gateway interno e gerencia as tabelas de roteamento da Internet. Para obter mais detalhes sobre o routed, consulte o Capítulo 3.
Tabelas de roteamento
As tabelas de roteamento fornecem as informações necessárias para rotear os pacotes para seus destinos. Essas informações incluem a rede de destino, o gateway a ser usado, o estado da rota e o número de pacotes transmitidos. As tabelas de roteamento podem ser exibidas com o comando netstat.
Serviço de Nomes
Em uma rede, cada host tem um nome que aponta para informações sobre esse host. Nomes de host podem ser atribuídos a qualquer dispositivo que tenha um endereço IP. Um serviço de nomes traduz os nomes de host (os quais são fáceis para as pessoas se lembrarem) em endereços IP (os números com os quais o computador trabalha).
DNS e BIND
O DNS (Domain Name System) é um banco de dados distribuído de informações sobre hosts em uma rede. Sua estrutura é semelhante à do sistema de arquivos do Unix — uma árvore invertida, com a raiz no topo. Os ramos da árvore são chamados de domínios (ou subdomínios) e correspondem aos endereços IP A implementação mais popular de DNS é o software BIND (Berkeley Internet Name Domain).
O DNS funciona como um aplicativo cliente/servidor. O resolvedor é o cliente, o se que faz perguntas sobre as informações do host. O servidor de nomes é o processo que responde as perguntas. O lado servidor do BIND é o daemon named. Você pode consultar informações de host em servidores de nomes interativamente, com os comandos dig e host. Consulte o Capítulo 3 para obter mais detalhes sobre os comandos named, dig e host.
O servidor de nomes de um domínio é responsável por manter (e fornecer, quando solicitado) os nomes das máquinas presentes em seu domínio. Outros servidores de nomes da rede encaminham os pedidos dessas máquinas para esse servidor de nomes.
Nomes de domínio
O nome de domínio completo é a seqüência de nomes do domínio corrente, retrocedendo até a raiz, com um ponto-final separando os nomes. Por exemplo, oreilly.com indica o domínio oreilly (da O’Reilly Media, Inc.), que está sob o domínio com (de comercial). Uma máquina sob esse domínio é http://www.oreilly.com. Os domínios de nível superior incluem:

aero

Setor de transporte aéreo

biz

Organizações comerciais

com

Organizações comerciais

coop

Cooperativas

edu

Organizações educacionais dos Estados Unidos

gov

Organizações governamentais dos Estados Unidos

info

Sites informativos

int

Organizações internacionais

mil

Departamentos militares dos Estados Unidos

museum

Museus

name

Nomes de pessoas

net

Organizações comerciais da Internet, normalmente provedores de serviços de Internet

org

Organizações diversas

pro

Profissionais, incluindo contadores, advogados e médicos

Os países também têm seus próprios domínios de nível superior constituído de duas letras, baseados nos códigos de duas letras de países. Por exemplo, o servidor da Web da BBC (British Broadcasting System) no Reino Unido tem o seguinte nome de domínio: http://www.bbc. co.uk* Alguns domínios (por exemplo, edu, gov e mil) são mantidos por organizações que restringem seu uso; outros (por exemplo, com, info, net e org) não têm restrições. Um domínio especial, arpa, é usado para propósitos de infra-estrutura técnica. A ICANN (Internet Corporation for Assigned Names and Numbers) supervisiona os domínios de nível superior e fornece informações de contato para domínios mantidos. Máquinas localizadas no Brasil correspondem ao domínio .br.

Configurando o Protocolo TCP/IP
Certos comandos são normalmente executados nos arquivos de inicialização do sistema para permitir que ele se conecte a uma rede. Esses comandos também podem ser executados interativamente.
ifconfig
A interface de rede representa a maneira como o software de interligação em rede utiliza o hardware: o driver, o endereço IP etc. Para configurar uma interface de rede, use o comando ifconfig. Com esse comando, você pode atribuir um endereço a uma interface de rede, configurando a máscara de rede, o endereço de difusão (broadcast) e o endereço IP no momento da inicialização. Você também pode configurar parâmetros de interface de rede, incluindo o uso de ARP, o uso de código de depuração dependente do driver, o uso do modo de pacote único e o endereço do correspondente na outra extremidade de um enlace ponto a ponto. Para obter mais informações sobre o comando ifconfig, consulte o Capítulo 3.
Comunicação por linha serial
Existem dois protocolos para comunicação por linha serial: SLIP (Serial Line IP) e PPP (Point-to-Point Protocol). Esses protocolos permitem que os computadores transfiram as informações usando a porta serial, em vez de uma placa de rede, e um cabo serial, em vez de um cabo Ethernet. Contudo, o protocolo SLIP é raramente usado, tendo sido substituído pelo PPP.
O protocolo PPP teve como objetivo sanar algumas falhas do SLIP; ele pode transmitir pacotes de protocolos que não sejam da Internet, implementa autorização de cliente e detecção/correção de erros e configura dinamicamente cada protocolo de rede que passe por ele. No Linux, o protocolo PPP existe como um driver no kernel e como o daemon pppd. Para obter mais informações sobre o pppd, consulte o Capítulo 3.
Solução de Problemas de TCP/IP
Os comandos a seguir podem ser usados para solucionar problemas de TCP/IP. Para ver mais detalhes sobre esses comandos, consulte o Capítulo 3.

dig

Consulta o serviço de nomes DNS.

ifconfig

Fornece informações sobre a configuração básica da interface de rede.

ifup e ifdown

Em muitos sistemas, são usados para iniciar ou parar uma interface de rede.

iwconfig, iwlist e wlancfg

Ferramentas normalmente usadas para configurar uma interface de rede sem fio.

netstat

Exibe o estado da rede.

ping

Indica se um host remoto pode ser acessado.

route

Permite ler e configurar informações de gateway padrão, assim com: rotas estáticas,

tcpdump

Escreve informações de pacote de rede na tela ou no arquivo,

traceroute

Rastreia a rota tomada pelos pacotes para chegar ao host da rede.

VISÃO GERAL DOS FIREWALLS E DO MASCARAMENTO

Um firewall é um computador seguro situado entre uma rede interna e uma rede externa
(isto é, a Internet). Ele é configurado com um conjunto de regras, utilizado para determi-
nar qual tráfego pode passar e qual é barrado. Embora um firewall geralmente seja des-
tinado a proteger a rede de tráfego externo mal intencionado ou mesmo acidentalmente
danoso, ele pode ser configurado também para monitorar o tráfego que sai da rede. Sendo
o único ponto de entrada do sistema, o firewall torna mais fácil construir defesas e moni-
torar a atividade.

O firewall também pode ser configurado para apresentar um endereço IP único para
o mundo externo, mesmo que vários endereços IP possam ser usados internamente. Isso é
conhecido como mascaramento. O mascaramento pode atuar como uma proteção adicio-
nal, ocultando a própria existência de uma rede. Evita também o problema e o gasto com a
obtenção de vários endereços IP.

O uso de firewall e mascaramento com IP é implementado com o comando netfilter, tam-
bém conhecido como iptables. Os kernels do Linux anteriores usavam os comandos ipchains
e ipfwadm, que não serão abordados aqui. Ao contrário das ferramentas mais antigas, os re-
cursos fornecidos pelo comando netfilter são feitos para serem extensíveis; se houver alguma
função ausente na implementação, você pode adicioná-la.

Os registros de filtragem de pacotes fornecem conjuntos de regras internos. Cada paco-
te de rede é verificado com relação a cada regra do conjunto, até que o pacote case com uma
regra ou não case com nenhuma. Esses conjuntos de regras são chamados encadeamentos
(chains). Os encadeamentos são organizados em tabelas que separam as funções de filtra-
gem das funções de mascaramento e alteração de pacotes. Se for encontrado um casamento,
os contadores dessa regra são incrementados e o alvo da regra é aplicado. Um alvo pode
aceitar, rejeitar ou mascarar um pacote, ou mesmo passá-lo para outro encadeamento para
processamento. Os detalhes sobre os encadeamentos fornecidos no comando iptables po-
dem ser encontrados no Capítulo 3.

Além desses encadeamentos, você pode criar seus próprios encadeamentos definidos
pelo usuário. Talvez você queira um encadeamento especial para suas interfaces PPP ou
para pacotes de um site em particular. Para ativar um encadeamento definido pelo usuário,
você apenas o transforma num alvo de um casamento.

É possível passar por um encadeamento sem haver casamento com nenhuma regra que
contenha um alvo. Se nenhuma regra corresponder ao pacote em um encadeamento defini-
do pelo usuário, o controle retornará ao encadeamento no qual ele foi chamado e a próxima
regra desse encadeamento é verificada. Se nenhuma regra corresponder ao pacote em um
encadeamento interno, será usada uma diretiva padrão para esse encadeamento. A diretiva
padrão pode ser qualquer um dos alvos especiais que determinam o que é feito com um
pacote. Os alvos válidos estão detalhados no Capítulo 3.

Você usa o comando iptables para definir as regras. Uma vez definidas as regras, você
pode usar o comando iptables-save para criar um arquivo com todas as definições de regra
e o comando iptables-restore para restaurar essas definições, quando reinicializar.

Para obter mais informações sobre os tipos de decisões que você precisa tomar e so-
bre as considerações relacionadas à definição das regras^consulte um livro geral sobre fi-
rewalls, como o Building Network Administrator’s Guide (0’Reilly), Linux iptables Pocket
Reference (0’Reilly) ou um dos HOWTOs relevantes, como o “Packet Filtering HOWTO”.
Esses HOWTOs e vários tutoriais estão disponíveis no site o Netfilter, no endereço http://
www. netfilter. org/.

Anúncios

~ por 3c0linux em abril 12, 2009.

 
%d blogueiros gostam disto: