Por que as portas de 30000 a 60000 são necessárias ao navegar pela rede?

6

Por que essas regras iptables me impedem de navegar na net?

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 testar essas regras.

Estou usando o Ubuntu 12.04, mas também vejo isso no meu servidor Debian.

    
por Mika 25.09.2012 / 21:41

1 resposta

9

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 olha para as regras do ipfilter, ele apenas tenta usar uma porta livre. E, na maioria das vezes, as portas entre 30000 e 60000 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 arquivo /etc/sysctl.conf para manter as configurações nas reinicializações.

Edit: como @TomWijsman sugere, os valores padrão são:

echo 32768 61000 >/proc/sys/net/ipv4/ip_local_port_range
    
por 25.09.2012 / 21:50

Tags