Caros amigos,
Estou configurando um pequeno servidor para compartilhar a internet e proxy cache com squid, tudo ia perfeitamente, até qdo resolvi acrescentar o firewall. primeiramente compartilhei a internet como os comando abaixo no arquivo /etc/rc.local:
modprobe iptable_nat
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
iptables -t nat -A PREROUTING -i eth0 -p TCP --dport 80 -j REDIRECT --to-port 3128
Depois resolvi acrescentar no mesmo arquivo /etc/rc.local, acrescentar o firewall e depois disso o servidor parou de compartilhar. O que será que tem de errado? segue abaixo o firewall.
até mais
echo "Carregando o firewall..."
# Carregando os módulos
modprobe ip_tables
modprobe iptable_nat
# Limpando todas as tabelas e regras
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
# Politica padrao
iptables -P INTPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
# Interface de loopback
iptables -A INPUT -s 127.0.0.0/8 -d 127.0.0.0/8 -i lo -j ACCEPT
# Abre para uma faixa de endereços da rede local
iptables -A INPUT -s 192.168.0.0/255.255.255.0 -j ACCEPT
# Proteção contra IP spoofing
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
# Protege contra synflood
echo "1" > /proc/sys/net/ipv4/tcp_syncookies
# Proteção contra ICMP Broadcasting
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
# Bloqueia traceroute
iptables -A INPUT -p udp --dport 33435:33525 -j DROP
# Proteções diversas contra portscanners, ping of death, ataques DoS, etc.
iptables -A INPUT -m state --state INVALID -j DROP
# Abre para a interface de loopback.
iptables -A INPUT -i lo -j ACCEPT
# Fecha as portas udp de 1 a 1024
iptables -A INPUT -p udp --dport 1:1024 -j DROP
iptables -A INPUT -p udp --dport 59229 -j DROP
# Compartilha a web na rede interna e ativa o proxy transparente
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
iptables -t nat -A PREROUTING -i eth0 -p TCP --dport 80 -j REDIRECT --to-port 3128
# Bloqueia tudo
iptables -A INPUT -p tcp --syn -j DROP
iptables -A OUTPUT -p tcp --syn -j DROP
iptables -A FORWARD -p tcp --syn -j DROP
# ----------------------------------------------------------------
# Bloqueia ping
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
# ----------------------------------------------------------------
echo "Firewall carregado..."
EOF