¿Por qué estas reglas de iptables me impiden navegar por la red?
iptables -A INPUT -i eth0 -p tcp --dport 30000:60000 -m state --state NEW,ESTABLISHED -j DROP
iptables -A OUTPUT -o eth0 -p tcp --sport 30000:60000 -m state --state ESTABLISHED -j DROP
Con iptables -F
él puedes borrar las reglas de iptables en caso de que no puedas navegar por la red después de probar esas reglas.
Estoy usando Ubuntu 12.04 pero también veo esto en mi servidor Debian.
Respuesta1
El navegador web necesita un puerto para cada solicitud HTTP. Esos puertos (rara vez) los elige el navegador, sino el kernel. El kernel no mira las reglas de ipfilter, solo intenta usar un puerto libre. Y la mayoría de las veces se utilizan los puertos entre 30000 y 60000.
Para ver qué rango de puertos está intentando utilizar su kernel:
cat /proc/sys/net/ipv4/ip_local_port_range
Puedes cambiar esos valores con:
echo 1234 5678 >/proc/sys/net/ipv4/ip_local_port_range # for immediate effect
o edite el /etc/sysctl.conf
archivo para mantener la configuración durante los reinicios.
Editar: como sugiere @TomWijsman, los valores predeterminados son:
echo 32768 61000 >/proc/sys/net/ipv4/ip_local_port_range