Conexão da porta 80 recusada

4

não consigo me conectar à porta 80 no meu servidor. meus iptables estão no estado padrão:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination 

quando eu começo servidores diferentes (nginx, nodejs ...) eu posso fazê-los ouvir a porta 80, mas tentando acessar, eu sempre recebo "conexão recusada". Ouvir qualquer outra porta (81,8080 o que for) funciona perfeitamente bem. Apenas a porta 80 é bloqueada de alguma forma. Acessando a porta 80 via localhost funciona, então, para fins de teste, eu até mudei o firewall externo, ainda sem sorte. O que posso fazer para descobrir quem está bloqueando essa porta 80?

conforme solicitado, a saída de netstat -tlpn (ao executar o nginx na porta 80):

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      710/vsftpd      
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1179/sshd       
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN      1661/master     
tcp        0      0 0.0.0.0:5984            0.0.0.0:*               LISTEN      980/beam.smp    
tcp        0      0 87.106.64.11:3306       0.0.0.0:*               LISTEN      1346/mysqld     
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      3274/nginx: master 
tcp6       0      0 :::22                   :::*                    LISTEN      1179/sshd       
tcp6       0      0 :::25                   :::*                    LISTEN      1661/master  
    
por Holger Will 20.09.2015 / 23:42

2 respostas

5

eu fiz um tcptraceroute 87.106.64.11 80 e é definitivamente meu servidor que está bloqueando a porta. Em algum momento no traço eu consegui isso:

s18132051.onlinehome-server.info (87.106.64.11) [closed]

Então eu redefino minhas tabelas ip , e isso resolveu o problema.

Então, lá, onde alguma regra oculta na tabela ou iptable -L não me deu todas as regras. Vou marcar isso como a resposta, pois resolve o problema.
Eu ainda adoraria ouvir, por que não recebi nenhuma regra de bloqueio ao fazer iptables -L

    
por Holger Will 21.09.2015 / 05:17
2

Eu experimentei o mesmo problema, mas no Debian 8.4 (Jessie). Como o acima, a solução foi o script flush do IPTables, conforme listado no link . Apesar do iptables não ter regras, deve ter havido algumas regras "escondidas", ou um bug no próprio iptables. Estou relatando esse bug para os mantenedores do Debian.

Caso o site vinculado seja desativado, aqui está o texto completo do script em questão, reproduzido aqui por conveniência.

#!/bin/sh
echo "Flushing iptables rules..."
sleep 1
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
    
por Jessica 22.06.2016 / 08:56