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

0

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 das portas HTTP e HTTPS?

    
por Ezazel 01.05.2017 / 05:54

2 respostas

0

O problema parece (para mim) que enquanto o tráfego é permitido a sua rede, não é permitido voltar. Normalmente, há uma regra para permitir o tráfego de entrada associado ao tráfego de saída que está ausente. Tente adicionar a seguinte linha para corrigir o seu problema -

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

Dependendo da maneira como sua rede funciona, também é possível que a falha esteja acontecendo porque você não está permitindo que o DNS seja resolvido (você deve permitir o UDP e TCP para seus servidores de nomes na porta 53 para isso).

Além disso (e isso é um pouco contencioso / controvertido), sugiro permitir o ICMP através da sua rede -

iptables -I INPUT -p icmp -j ACCEPT

Isso pode facilitar muito a depuração de coisas, e também não permitir que alguns tipos de ICMP possam interromper o tráfego.

    
por 01.05.2017 / 10:15
0

Você tem um erro em suas regras. Sua regra diz INPUT (então o que entra no computador ou servidor) com a porta de destino. Isso significa que um cliente tenta se conectar a um site hospedado em seu computador / servidor. No entanto, você disse que não pode se conectar a um servidor da Web, as regras estão erradas.

Deve ser esporte em vez de dport

iptables -A INPUT -p tcp --sport 80 -j ACCEPT
iptables -A INPUT -p tcp --sport 443 -j ACCEPT
    
por 02.05.2017 / 00:02