wotila_carneiro
(usa Ubuntu)
Enviado em 09/03/2013 - 18:09h
Prezados, boa tarde.
Já utilizei o iptables há alguns anos. E tive que reinstalar um servidor e criei um script de firewall, e gostaria, muito humildemente que vocês analisassem meu script, apontando erros e possíveis redundâncias.
O cenário é o seguinte:
Duas redes passando pelo firewall a secretaria e o laboratório;
eth0 - 10.1.0.1/16 - SECRETARIA;
eth1 - INTERNET;
eth2 - 172.18.0.1/24 - LABORATÓRIO;
A secretaria tem acesso a tudo pelo squid, e o laboratório possui alguns bloqueios.
A rede está funcionando normalmente, mas gostaria de saber se terei problemas futuros com essas regras.
Desde já agradeço.
Eis as regras
[code]
#!/bin/bash
iniciar(){
# COMPARTILHAR A CONEXÃO
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
echo "Compartilhamento Ativado!"
# TRAFEGO ILIMITADO NAS INTERFACES DE LOOPBACK
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# POLITICA PADRAO: DROPAR OS PACOTES
iptables -P OUTPUT ACCEPT
iptables -P INPUT DROP
iptables -P FORWARD DROP
# LIBERAR REDES INTERNAS E PACOTES DE RETORNO DA INTERNET
iptables -A INPUT -i eth0 -j ACCEPT
iptables -A INPUT -i eth2 -j ACCEPT
iptables -A OUTPUT -o eth0 -j ACCEPT
iptables -A OUTPUT -o eth2 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# PROXY TRANSPARENTE
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to 3128
iptables -t nat -A PREROUTING -i eth2 -p tcp --dport 80 -j REDIRECT --to 3128
# TRAFEGO DE SAIDA
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -A OUTPUT -j ACCEPT
iptables -A OUTPUT -p tcp -m multiport --dport 21,80,443 -m state --state NEW -j ACCEPT
# TRAFEGO DE SAIDA DO LABORATORIO
iptables -A FORWARD -p tcp -s 172.18.0.0/255.255.255.0 -o eth1 -m state --state NEW -j ACCEPT
iptables -A FORWARD -p udp -s 172.18.0.0/255.255.255.0 -o eth1 -j ACCEPT
# TRAFEGO DE SAIDA DA SECRETARIA
iptables -A FORWARD -p tcp -s 10.1.0.1/255.255.0.0 -o eth1 -m state --state NEW -j ACCEPT
iptables -A FORWARD -p udp -s 10.1.0.1/255.255.0.0 -o eth1 -j ACCEPT
}
parar(){
iptables -F
iptables -t nat -F
echo "Regras de Firewall e Compartilhamento Desativados!"
}
case "$1" in
"start") iniciar;;
"stop") parar;;
"restart") parar; iniciar;;
*) echo "Use os Parametros start ou stop"
esac