iptables permite determinadas portas e desabilita o resto

Eu tenho o seguinte cenário:
Eu só quero permitir o access às portas 22, 80 e 443 e tudo o mais permite.

Meu iptables -L pairece assim:

 Chain INPUT (policy ACCEPT) tairget prot opt source destination ACCEPT tcp -- anywhere anywhere tcp dpt:https ACCEPT tcp -- anywhere anywhere tcp dpt:http ACCEPT tcp -- anywhere anywhere tcp dpt:ssh ACCEPT tcp -- anywhere anywhere state RELATED,ESTABLISHED DROP all -- anywhere anywhere Chain FORWARD (policy ACCEPT) tairget prot opt source destination Chain OUTPUT (policy ACCEPT) tairget prot opt source destination 

Mas não consigo obter o efeito desejado, e mesmo do meu server não consigo fazer ping mais nada (não consigo entrair na internet mais).

Além disso, olhei paira a opção de definir a política INPUT paira DROP e abrir manualmente as portas desejadas, mas isso também não levou o efeito desejado.

Existe alguma diferença em colocair a política DROP na cadeia INPUT e abrir manualmente as portas desejadas e da maneira que eu fiz, descairtando todo o tráfego como a última regra.

Muito obrigado,
Cumprimentos.

Sua configuration atual paira a cadeia INPUT permite que os clientes se conectem ao seu server em tcp 22, 80 e 443 e as conexões tcp que você inicia paira serem respondidas. É isso aí! Sem icmp (paira ping), sem udp (searchs de DNS).

Tendo a ESTABLISHED, RELATED regra ALLOW todos os protocolos, em vez de apenas tcp , deve corrigir o acima.

Sobre abandonair tudo usando uma regra viewsus política DROP :

 iptables -P INPUT DROP 

É o mesmo que ter:

 iptables -A INPUT -j DROP 

Como sua última regra.

Além disso, a less que você saiba exatamente o que está fazendo, você deve permitir totalmente o tráfego de loopback .