[FUG-BR] RES: Firewall IPFW ou IPTABLES

c0re dumped ez.c0re em gmail.com
Quarta Abril 8 14:34:12 BRT 2009


O IPtables tem uma sintaxe muito "suja" quando comparada com a sintaxe
do PF ou do IPFW.

Exemplo de uma regra de NAT no IPtables (retirado de
http://danieldegraaf.afraid.org/info/iptables/nat ):

#!/usr/bin/env iptables-restore
*filter
:FORWARD DROP [0:0]
:INPUT DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth1 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth1 -j ACCEPT
COMMIT
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT

Agora imagine isso num firewall que tem que dar conta de 8 redes
diferentes como é o nosso caso aqui...


A mesma regra no pf:

nat on bce0 proto {tcp, udp, icmp} from REDE_INTERNA to any -> bce0

Ao bater o olho vc já sabe o que a regra faz, não precisa ser nenhum
PhD em pf pra entender o que a regra faz.

Se fosse exemplificar em ambos coisas como rdr e binat então, chegava
a ser até covardia.

Simplicidade é um dos principais requisitos para a segurança.

Infelizmente, a impresão que tenho ao ver uma ruleset do IPtables é
que o principal requisito do projeto é que ele tivesse regras muito
dificeis de entender.

[]'s
-- 
http://setsockopt.wordpress.com

http://www.webcrunchers.com/crunch


Mais detalhes sobre a lista de discussão freebsd