Hola a todos. Estoy pegandome con iptables con politica drop, pero no lo consigo dominar. Tengo un equipo con Debian Sarge, dos interfaces haciendo de firewall de toda la red. Está conectaddo directamente al modem cable. No consigo poder hacer la conexión a Internet. Si hago un "ping google.com" desde el firewall o desde algún equipo de la red, me responde "unknown host google.com". Sólo necesito que los equipos puedan descargar el correo de un servidor externo, usar msn y jabber, accder a Internet. Luego además permitir el acceso por ssh desde el exterior, redireccionando a la dirección del server. Todo esto lo tengo hecho con otro scipt con política ACCEPT y funciona. Os pego el script que he creado para la política drop. Si alguien me puede ayudar lo agradecería mucho. Saludos. Pablo. #!/bin/bash case "$1" in start) #Limpieza de reglas. echo -n "Limpiando reglas iptables: " iptables -F iptables -X iptables -Z iptables -t nat -F echo "hecho." #Cargando modulos. echo -n "Cargando modulos: " /sbin/depmod -a modprobe ip_tables modprobe ip_conntrack modprobe iptable_filter modprobe iptable_nat modprobe ipt_state modprobe ipt_MASQUERADE modprobe ipt_LOG echo "hecho." #Forwarding. echo -n "Activando forwarding: " echo "1"> /proc/sys/net/ipv4/ip_forward echo "hecho." #Política por defecto. echo -n "Aplicando política: " iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP #iptables -t nat -P POSTROUTING DROP #iptables -t nat -P PREROUTING DROP echo "hecho." #NAT echo -n "Activando NAT: " iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE echo "hecho." #ICMP echo -n "Permitendo echo request: " iptables -A INPUT -i eth0 -p icmp -j ACCEPT iptables -A OUTPUT -o eth0 -p icmp -j ACCEPT echo "hecho." #Conexión a Internet. echo -n "Activando acceso a Internet: " iptables -A INPUT -i eth0 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i eth0 -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT echo "hecho." #ssh exterior al server. echo -n "Activando redireccionamiento conexión ssh al server: " iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 22 -m state --state NEW -j DNAT --to 192.168.0.2:22 iptables -A FORWARD -i eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT echo "hecho." #Conexión mail echo -n "Aceptando conexiones mail: " iptables -A INPUT -i eth0 -p tcp --sport 25 -m state --state ESTABLISHED -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i eth0 -p tcp --sport 110 -m state --state ESTABLISHED -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp --dport 110 -m state --state NEW,ESTABLISHED -j ACCEPT echo "hecho." #Cerrar echo -n "Cerrando conexiones no necesarias: " iptables -A INPUT -i eth0 -m state --state NEW,INVALID -j DROP iptables -A FORWARD -i eth0 -m state --state NEW,INVALID -j DROP echo "hecho." ;; stop) echo -n "Parando el firewall: " iptables -F INPUT iptables -F OUTPUT iptables -F FORWARD iptables -F iptables -t nat -F echo "hecho." ;; restart) $0 stop echo -n "Reiniciando el firewall: " sleep 2 $0 start echo "hecho." ;; status) iptables -L -n ;; *) echo "usar: $0 {start|stop|restart|status}" exit 1 esac exit 0 --
Attachment:
signature.asc
Description: Esta parte del mensaje =?ISO-8859-1?Q?est=E1?= firmada digitalmente