FIREWALL COM IPTABLES
1. IP FORWARDConsiderações iniciais
O IP FORWARD é um tipo de roteamento. É estabelecido quando colocamos uma máquina entre dois ou mais segmentos de rede, permitindo a livre passagem de pacotes entre estes sempre que for necessário. É importante ressaltar que o roteamento só irá funcionar quando for feito entre REDES DIFERENTES. Não se pode colocar um roteador entre dois segmentos de rede iguais. Esse procedimentonão serve apenas para estabelecer a comutação de segmentos. Ele também é útil para diminuir o tráfego na rede como um todo, pois só deixa o pacote mudar de segmento se isso for realmente necessário.
Veja a figura a seguir:
Para fazer o IP FORWARD, o micro roteador deverá possuir uma placa de rede com endereço IP pertencente a cada segmento. Também deveremos informar, em cada máquina de cada seguimento, quem será o micro responsável pelo roteamento. O nome técnico desse micro é gateway.
No caso do esquema anterior, temos as seguintes situações:
* Gateway para 10.0.0.1, 10.0.0.2 e 10.0.0.3: a máquina 10.0.0.10
* Gateway para 172.20.0.1, 172.20.0.2 e 172.20.0.3: a máquina 172.20.0.10
É importante que, nos dois lados, todos os micros saibam quem é o seu gateway pois, do contrário, os hosts não saberão para onde enviar os pacotes destinados à rede oposta. Exemplo:
A máquina 10.0.0.1 sabe que 10.0.0.10 é o seu gateway. A máquina 172.20.0.1 não sabe quem é o seu gateway. Um ping de 10.0.0.1 para 172.20.0.1 sairá de 10.0.0.1, passará por 10.0.0.10, seguirá por 172.20.0.10 e chegará em 172.20.0.1. Como 172.20.0.1 não sabe quem é o seu gateway para a rede 10.0.0.0, não conseguirá responder. O ping vai morrer por timeout. Houve o icmp echo request mas será impossível gerar o icmp echo reply.
Fazendo o IP FORWARD
Para estabelecermos o IP FORWARD entre dois segmentos de rede, basta:
* inserir um micro com duas placas de rede entre os segmentos de rede, configurando-as corretamente;
* definir, em cada máquina, de cada segmento, quem é o seu gateway;
* ativar o IP FORWARD via kernel.
O estabelecimento de IP FORWARD entre mais de dois segmentos de rede segue o mesmo princípio, bastando acrescer quantas placas de rede forem necessárias no gateway. Também é possível utilizar placas de fax-modem em conjunto com placas de rede.
Definindo o gateway
Para definirmos o gateway em cada cliente, devemos:
--> No Linux Red Hat/Fedora
Editar o arquivo /etc/sysconfig/network e inserir a linha:
GATEWAY=ip_do_gateway
Em seguida, devemos reiniciar a rede:
#/etc/rc.d/init.d/network restart
--> No Linux Slackware
Editar o arquivo /etc/rc.d/rc.inet1.conf e configurar a linha:
GATEWAY="ip_do_gateway"
Em seguida, devemos reiniciar a rede:
#/etc/rc.d/rc.inet1 restart
--> No Linux Debian
Editar o arquivo /etc/network/interfaces e inserir a linha:
gateway ip_do_gateway
Em seguida, devemos reiniciar a rede:
#/etc/init.d/networking restart
--> No Windows 9x
Nas Propriedades do protocolo TCP/IP, há uma seção gateway. Basta inserir o IP do gateway nessa seção. Exemplo:
--> No Windows XP
Nas Propriedades do protocolo TCP/IP, há uma entrada gateway. Basta inserir o IP do gateway. Exemplo:
--> Outras versões de Windows
Em outras versões de Windows, o procedimento é similar.
Ativando o roteamento via kernel no Linux
O roteamento via kernel será ativado com o comando:
#echo 1 > /proc/sys/net/ipv4/ip_forward
Esse roteamento será perdido se a rede (e, em conseqüência, a máquina) for reinicializada (#/etc/rc.d/init.d/network restart).
Poderíamos inserir a regra no fim do arquivo /etc/rc.d/rc.local, para que a mesma seja ativada a cada reinicialização do sistema. No entanto, um reinício da rede mataria o roteamento novamente.
No Red Hat, uma forma de deixar a regra de roteamento permanentemente ativada, resistindo a qualquer tipo de reinicialização, seria a alteração do arquivo /etc/sysctl.conf:
net.ipv4.ip_forward = 1
Já no Debian, a linha a seguir deve ser inserida no arquivo /etc/sysctl.conf:
net/ipv4/ip_forward=1
Teste do roteamento
O teste do roteamento pode ser feito por intermédio do comando ping. Basta "pingar" uma máquina que esteja após o roteador.
Caso não haja resposta, faça um teste progressivo para tentar deduzir o problema:
--> pingue a placa do roteador que esteja dentro do seu segmento de rede;
--> pingue a placa do roteador que esteja no outro segmento;
--> pingue outra máquina do outro segmento.
O programa IPTRAF poderá ajudar a debugar a conexão. Execute a opção "IP traffic monitor" do citado programa na máquina roteadora e verifique se o ICMP echo request está saindo e se o ICMP echo reply está voltando. Se não voltar, o problema estará no segmento de destino do ping.
Créditos:
João Eriberto Mota Filho
http://www.eriberto.pro.br/iptables/
Nenhum comentário:
Postar um comentário