Quais portas precisam ser abertas em um firewall para acessar a Internet?

6

Digamos, como exemplo, que eu tenho um firewall que bloqueia TODAS as portas de todas as origens / destinos.

Quais portas eu precisaria abrir para poder executar com êxito:

ping google.com

... e existem outras portas que eu teria que abrir para poder navegar no google.com através de um navegador?

Eu tentei abrir a porta 53 (dns) 80 (http) e 443 (https); isso não é suficiente, estou usando o iptables, mas não estou perguntando como configurar isso no iptables, só estou perguntando quais portas precisam ser abertas, independentemente de qual firewall baseado em portas você esteja usando.

    
por Cestarian 16.04.2016 / 16:35

1 resposta

6

Para o DNS, você precisa permitir pacotes UDP entre qualquer porta em um endereço IP dentro do firewall e a porta 53 em um endereço IP fora do firewall.

Para HTTPS, você precisa permitir pacotes TCP entre qualquer porta em um endereço IP dentro do firewall e a porta 443 fora do firewall ou, mais raramente, qualquer porta fora do firewall (alguns sites não estão na porta padrão). Para HTTP, é o mesmo com a porta 80.

TCP é um protocolo conectado; as duas extremidades da conexão não são simétricas e os firewalls geralmente fazem diferença entre eles. Raramente há qualquer motivo de segurança para impedir conexões de saída, exceto talvez para forçar o envio de emails para passar por um retransmissor dedicado (para impedir que máquinas infectadas enviem spam não detectado). Um firewall básico típico para uma máquina cliente permite todas ou a maioria das conexões de saída e bloqueia conexões de entrada.

Para ping, permita ICMP. Você deve permitir todo o ICMP, a menos que você tenha um motivo específico para bloquear certos tipos de pacotes. O bloqueio indiscriminado do ICMP pode dificultar o diagnóstico de problemas de rede e causar inundações devido ao fato de os aplicativos não receberem respostas de erros adequadas.

Aqui está uma configuração simples de firewall Linux adequada para uma máquina cliente típica, que permite superar tudo, exceto o SMTP, em uma máquina diferente de smtp.example.com e bloqueia conexões TCP de entrada, exceto na porta 22 (SSH).

iptables -F INPUT
# Accept everything on localhost
iptables -A INPUT -i lo -j ACCEPT
# Accept incoming packets on existing connections
iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
# Accept DNS replies
iptables -A INPUT -p udp --sport 53 -j ACCEPT
# Accept incoming SSH connections
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# Reject everything else that's incoming
iptables -A INPUT -j REJECT
iptables -F OUTPUT
# Forbid outgoing SMTP except to a known relay
iptables -A OUTPUT -p tcp --dport 22 ! -host smtp.example.com -j REJECT
# Allow everything else that's outgoing
iptables -P OUTPUT -j ALLOW
    
por 16.04.2016 / 23:41