Por que essas regras do iptables estão me impedindo de navegar na rede?
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
Com iptables -F
você pode limpar as regras do iptables caso não consiga navegar na rede depois de tentar essas regras.
Estou usando o Ubuntu 12.04, mas vejo isso também no meu servidor Debian.
Responder1
O navegador da web precisa de uma porta para cada solicitação HTTP. Essas portas são (raramente) escolhidas pelo navegador, mas pelo kernel. O kernel não analisa as regras do ipfilter, apenas tenta usar uma porta livre. E na maioria das vezes as portas entre 30.000 e 60.000 são usadas.
Para ver qual intervalo de portas seu kernel está tentando usar:
cat /proc/sys/net/ipv4/ip_local_port_range
Você pode alterar esses valores com:
echo 1234 5678 >/proc/sys/net/ipv4/ip_local_port_range # for immediate effect
ou edite o /etc/sysctl.conf
arquivo para manter as configurações durante as reinicializações.
Editar: como sugere @TomWijsman, os valores padrão são:
echo 32768 61000 >/proc/sys/net/ipv4/ip_local_port_range