Página seguinte Página anterior Índice

9. Misturando NAT e Filtro de Pacotes

É comum querer fazer Network Address Translation (veja o NAT HOWTO) e filtro de pacotes. As boas novas é ue a mistura funciona muito bem.

Você projeta o filtro de pacotes ignorando completamente o NAT que está fazendo. As origens e destinos vistas pelo filtro de pacotes serão as fontes e destinos `reais'. Por exemplo, se você está fazendo que o DNAT para enviar conexões para 1.2.3.4, porta 80, para 10.1.1.1, porta 8080, o filtro de pacotes irá ver pacotes indo para 10.1.1.1, porta 8080 (o destino real), e não 1.2.3.4, porta 80. De forma similar, você pode ignorar o mascaramento. Os pacotes irão parecer estar vindo do endereço IP interno real (digamos 10.1.1.1), e as respostas deverão voltar para lá.

Você pode usar a extensão `state' sem fazer que o filtro de pacotes faça nenhum trabalho extra, já que o NAT exige acompanhamento de conexões de qualquer forma. para emlhorar o exemplo simples de mascaramento do NAT HOWTO, para proibir novas conexões vindo da interface ppp0, você faria o seguinte:

# Masquerade out ppp0
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

# disallow NEW and INVALID incoming of forwarded packets from ppp0.
iptables -A INPUT -i ppp0 -m state --state NEW,INVALID -j DROP
iptables -A FORWARD -i ppp0 -m state --state NEW,INVALID -j DROP

# Turn on IP forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward


Página seguinte Página anterior Índice 1