marcosguitj
(usa Debian)
Enviado em 01/12/2011 - 09:25h
Define as regras padrões como DROP
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
Vamos limpar todas as regras existentes nas tabelas.
iptables -F
iptables -t nat -F
iptables -t mangle -F
É necessário mascarar todo tráfego proveniente da rede interna para traduzir o endereço privado em público.
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE
Essa regra é necessária para fazer o teste de conectividade (ping) entre as interfaces eth0 e eth1.
Permite que o firewall ping para fora
iptables -A OUTPUT -o eth0 -p icmp -j ACCEPT
iptables -A INPUT -i eth0 -p icmp -j ACCEPT
Permite que a rede interna ping para fora
iptables -A OUTPUT -o eth1 -p icmp -j ACCEPT
iptables -A INPUT -i eth1 -p icmp -j ACCEPT
Permite que a DMZ ping para fora
iptables -A OUTPUT -o eth2 -p icmp -j ACCEPT
iptables -A INPUT -i eth2 -p icmp -j ACCEPT
Regras para permitir a saída de tráfego DNS do firewall
iptables -A OUTPUT -o eth0 -p udp --dport 53 -j ACCEPT
iptables -A INPUT -i eth0 -p udp --sport 53 -j ACCEPT
Regras para permitir a saida de tráfego HTTP do firewall
iptables -A OUTPUT -o eth0 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --sport 80 -j ACCEPT
Regra para permitir a entrada e passagem de tráfego DNS a partir da rede interna.
iptables -A INPUT -i eth1 -p udp --dport 53 -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -p udp --dport 53 -j ACCEPT
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -p udp --sport 53 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth1 -m state --state ESTABLISHED,RELATED -p udp --sport 53 -j ACCEPT
Regra para permitir a entrada e passagem de tráfego DNS a partir da DMZ.
iptables -A INPUT -i eth2 -p udp --dport 53 -j ACCEPT
iptables -A FORWARD -i eth2 -o eth0 -p udp --dport 53 -j ACCEPT
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -p udp --sport 53 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth2 -m state --state ESTABLISHED,RELATED -p udp --sport 53 -j ACCEPT
Permite entrada e passagem de trafego HTTP a partir da rede interna
iptables -A INPUT -i eth1 -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -p tcp --sport 80 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth1 -m state --state ESTABLISHED,RELATED -p tcp --sport 80 -j ACCEPT
Permite entrada e passagem de trafego HTTP a partir da DMZ
iptables -A INPUT -i eth2 -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -i eth2 -o eth0 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -p tcp --sport 80 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth2 -m state --state ESTABLISHED,RELATED -p tcp --sport 80 -j ACCEPT
Permite a entrada e saída de tráfego na porta 8080 do firewall
iptables -A INPUT -i eth1 -p tcp -d 172.16.0.1 --sport 8080 -j ACCEPT
iptables -A OUTPUT -o eth1 -p tcp -s 172.16.0.1 --dport 8080 -j ACCEPT
Redireciona o tráfego HTTP e FTP da rede interna para o servidor web/ftp (DMZ)
iptables -t nat -A PREROUTING -p tcp -d 172.16.0.1 -i eth1 -m multiport --dports 80,20,21 -j DNAT --to 192.168.100.10
iptables -A FORWARD -i eth1 -o eth2 -j ACCEPT
iptables -A OUTPUT -o eth2 -p tcp -m multiport --dports 80,20,21 ACCEPT
iptables -A INPUT -i eth2 -p tcp -m multiport--sports 80,20,21 -j ACCEPT
iptables -A FORWARD -i eth2 -o eth1 -p tcp -m multiport --sports 80,20,21 -j ACCEPT
iptables -A OUTPUT -o eth1 -p tcp -m multiport --sports 80,20,21 -j ACCEPT
iptables -t nat -A POSTROUTING -p tcp -s 192.168.0.10 -o eth1 -m multiport --sports 80,20,21 -j SNAT --to 172.16.0.1