guia foca avançado
534 pág.

guia foca avançado


DisciplinaOrganização de Computadores6.347 materiais119.401 seguidores
Pré-visualização50 páginas
serviços e outros assuntos ligados a rede.
 Freqüentemente tem se ouvido falar de empresas que tiveram seus
 sistemas invadidos, em parte isto é devido a escolha do sistema
 operacional indevido mas na maioria das vezes o motivo é a falta de
 investimento da empresa em políticas de segurança, que algumas
 simplesmente consideram a segurança de seus dados e sigilo interno
 como uma `despesa a mais'.
 Um bom firewall que recomendo é o `ipchains', `Sinus' e o `TIS'.
 Particularmente gosto muito de usar o `ipchains' e o `Sinus' e é
 possível fazer coisas inimagináveis programando scripts para
 interagirem com estes programas...
4.9. Outros arquivos de configuração relacionados com a rede
------------------------------------------------------------
4.9.1. /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 apelido # comentário
 name
 Uma palavra simples que representa o nome do serviço sendo
 descrito.
file:///C|/cursos_e_livros_cd/informática/sistemas%20operacionais/linux/guia%20foca/3/index.txt (98 of 534)29/09/2004 10:55:36
file:///C|/cursos_e_livros_cd/informática/sistemas%20operacionais/linux/guia%20foca/3/index.txt
 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 tem
 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 caracter "#" é
 ignorado e tratado como comentário.
4.9.2. /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
4.10. Camadas de Rede
---------------------
 São organizações do protocolo TCP/IP que visam organizar e simplificar
 seu padrão e implementação pelos desenvolvedores.
 * Um _padrão_ TCP é o conjunto de regras que devem ser seguidas
 para garantir a homogeneidade da comunicação entre diversos
 sistemas de diversos fabricantes (por exemplo, _Mac_ com
 _Windows_, _Windows_ com _Linux_, etc.).
 * A _implementação_ é o código escrito por cada desenvolvedor para
file:///C|/cursos_e_livros_cd/informática/sistemas%20operacionais/linux/guia%20foca/3/index.txt (99 of 534)29/09/2004 10:55:36
file:///C|/cursos_e_livros_cd/informática/sistemas%20operacionais/linux/guia%20foca/3/index.txt
 integração ao sistema operacional seguindo as regras do padrão
 para garantir a comunicação entre as máquinas, portanto, a
 _implementação_ do protocolo TCP varia de fabricante para
 fabricante.
 Existem dois tipos de padrões TCP: _Darpa_ e _OSI_. O padrão _Darpa_
 é dividido em 4 camadas e ainda é o padrão atualmente utilizado. O
 padrão _OSI_ é mais recente, dividido em 7 camadas, mas ainda não se
 tornou um padrão como o _Darpa_.
 Segue abaixo os padrões e a descrição de cada uma das camadas:
 _Darpa_
 * `Aplicação' - _www_, _ftp_, _dns_, etc. Fazem interface com
 as aplicações do sistema.
 * `Transporte' - Protocolo _tcp_ e _udp_. Cuidam da parte de
 transporte dos dados do sistema.
 * `Rede' - _IP_, _icmp_, _igmp_, _arp_. Cuida de levar o
 pacote para seu destino (rotas) e condições de transmissão.
 * `Interface de Rede' - _Ethernet_, _FDDI_, _Token Ring_.
 Define qual o método que a mensagem transmitida será
 encapsulada para envio ao seu destino.
 Apesar dos padrões _Darpa_ e _OSI_, o protocolo _TCP/IP_ é
 oficialmente independente destas camadas.
4.11. RFCs de referência sobre protocolos de rede
-------------------------------------------------
 Como referência de pesquisa, segue abaixo a listagem de números de
 RFCs para protocolos de rede mais utilizados:
 IP
 http://www.rfc-editor.org/rfc/rfc791.txt
 ICMP
 http://www.rfc-editor.org/rfc/rfc792.txt
 TCP
 http://www.rfc-editor.org/rfc/rfc793.txt
 UDP
 http://www.rfc-editor.org/rfc/rfc768.txt
-------------------------------------------------------------------------------
file:///C|/cursos_e_livros_cd/informática/sistemas%20operacionais/linux/guia%20foca/3/index.txt (100 of 534)29/09/2004 10:55:36
file:///C|/cursos_e_livros_cd/informática/sistemas%20operacionais/linux/guia%20foca/3/index.txt
5. Configurações especiais de Rede
----------------------------------
 Este capítulo descreve alguns tipos de configurações que podem ser
 feitas em rede utilizando os recursos disponíveis do `Linux'. Aqui
 não estão todas as aplicações, pois o sistema é bastante flexível e o
 próprio time de desenvolvimento do kernel não demonstrou limitações
 quanto as formas de se construir uma rede :-)
5.1. IP Alias
-------------
 Este recurso permite configurar uma interface de rede para responder
 por um ou mais IPs, que não precisam pertencer a mesma faixa. Para
 usuários externos, a impressão é que a rede tem "muitas" máquinas,
 quando na realidade apenas uma responde por todos estes endereços
 virtuais. Podemos citar algumas utilizações úteis deste recurso:
 * Simular uma rede com diversas máquinas
 * Construir virtual hosts baseados em IP
 * Definir endereçamentos secundários para fins de análise e
 depuração de pacotes (principalmente como armadilhas para
 trojans)
 * Colocação de serviços com operação restritas a interfaces em
 funcionamento através de faixas específicas usando as
 configurações da interface virtual
 * Transição de IP de servidores de forma transparente
 * Entre muitas outras. A idéia aqui é mostrar a simplicidade de se
 configurar este recurso e entender o processo, que é bastante
 simples.
 Para configurar o recurso de _IP Alias_ é necessário apenas que a
 opção _IP Aliasing Support_ seja habilitada no kernel (como módulo ou
 embutida). Em nosso exemplo abaixo, temos uma rede com a interface
 `eth0' configurada com o IP _192.168.1.1_ (classe C privada) e
 queremos adicionar uma interface virtual que atenda pelo IP
 _172.16.0.1_ (classe B privada) e depois seguir os seguintes passos:
 1. Ative a interface de rede com `ifconfig' ou `ifup' (caso esteja
 usando a `Debian').
 2. Crie uma interface virtual usando o comando `ifconfig eth0:0
 172.16.0.1'. Isto