Creando un firewall con iptables [Solucionado]
Buenas, estoy creando un firewall desde cero, poco a poco.
Me he leido algunos documentos por internet acerca del tema, sobretodo filtrado y demas, y tengo esto:
# Borrar todo y resetear el firewall
iptables -F
iptables -X
iptables -Z
# NAVEGACION WEB
#http 80/tcp World Wide Web HTTP
#http 80/udp World Wide Web HTTP
iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -i eth0 -p udp --dport 80 -j ACCEPT
Pues bien, he comenzado por el navegador por ser una cosa, creo, sencilla. Estoy haciendo pruebas tanto con ACCEPT como con DROP y no me funciona, no impide usar el navegador.
# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:www
ACCEPT udp -- anywhere anywhere udp dpt:www
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
- Inicie sesión o regístrese para enviar comentarios
- 753 lecturas


Te faltaría establecer una política por defecto en DROP
iptables -P INPUT DROPLo de cerrar todo y luego ir "abriendo agujeros" me parece buena idea, pero estoy intentando cosas basicas. Luego ya depurare.
Lo de cerrar todo y luego ir "abriendo agujeros" me parece buena idea, pero estoy intentando cosas basicas. Luego ya depurare.
Pero si no bloqueas nada el sentido de tener un firewall como que se pierde
Algún DROP en tu script tiene que haber.
Si, para comprobar el filtro sobre www, lo que hice fue cambiar a esto:
# Borrar todo y resetear el firewall
iptables -F
iptables -X
iptables -Z
# NAVEGACION WEB
#http 80/tcp World Wide Web HTTP
#http 80/udp World Wide Web HTTP
iptables -A INPUT -i eth0 -p tcp --dport 80 -j DROP
iptables -A INPUT -i eth0 -p udp --dport 80 -j DROP
pero no me bloquea el navegador. La linea
# Cerrar todo
iptables -A INPUT -i eth0 -j DROP
si que lo hace, pero eso no me explica en que fallo con la seccion www
INPUT = peticiones desde fuera hacia dentro
OUTPUT = peticiones de dentro hacia fuera
Si quieres bloquear el navegador debes bloquear tu OUTPUT con destino al puerto 80 (y 443 y otros)
Si tienes un servidor web (como por ejemplo apache2) y no quieres que sea accesible desde el exterior debes bloquear el INPUT.
Ok, no tenia entendido que tenia que vigilar tambien el output.