Iptables não permite tráfego de rede de portas abertas

1

Alterei a política da cadeia INPUT, adicionando o seguinte comando.

iptables -P INPUT DROP

Depois de inserir as próximas regras para permitir pacotes de entrada das portas de rede 80 e 443, mas as portas ainda estão fechadas (por exemplo, não consigo usar o navegador da Web).

iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

Saída de iptables -L :

Chain INPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:https

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination  

Como posso permitir o tráfego de rede de portas HTTP e HTTPS?

    
por Ezazel 01.05.2017 / 09:19

1 resposta

1

Você precisa permitir solicitações de entrada nas portas 80 e 443 e isso foi feito usando as duas regras de aceitação.

Você também precisa permitir ESTABLISHED tráfego, mas isso pode ser ignorado porque você está definindo OUTPUT policy como ACCEPT .

Suas regras parecem ser suficientes apenas para permitir solicitações recebidas. Você não poderá iniciar conexões com outras máquinas. Isso ocorre porque você está negando todo o tráfego de INPUT (incluindo ESTABLISHED connections). Para corrigir isso, você pode adicionar uma regra como:

iptables -I INPUT -m state --state ESTABLISHED -j ACCEPT

Para ajudar a depurar seu problema, você pode tentar várias coisas:

  1. Use tcpdump para capturar o tráfego para confirmar onde ele é descartado.
  2. Altere a INPUT policy para ACCEPT temporariamente para confirmar se ela está relacionada às suas regras de firewall ou não.
  3. O uso de iptables -L -n -v para mostrar as ocorrências de cada regra pode ajudar você a confirmar se suas regras estão correspondendo a algum tráfego ou não (enquanto você está tentando acessar suas portas permitidas). Isso pode ser útil apenas em um servidor não ocupado.
  4. Use LOG target em iptables para registrar pacotes imediatamente antes da regra de aceitação para confirmar se o IP e as portas de origem / destino do pacote correspondem à sua expectativa.
por 01.05.2017 / 09:32