я не могу соединиться с портом 80 на моем веб-сервере. мои iptables находятся в состоянии по умолчанию:
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
когда я запускаю различные серверы (nginx, nodejs...) я могу заставить их слушать порт 80, но пытающийся получить доступ, я всегда получаю "соединение, которому отказывают". Слушание любого другого порта (81,8080 безотносительно) превосходные работы. Только порт 80 так или иначе заблокирован. Порт Accessing 80 через localhost действительно работает, таким образом, для тестирования цели я даже переключился внешнего брандмауэра, все еще никакая удача. Что я могу сделать для обнаружения, кто блокирует этот порт 80?
согласно просьбе вывод netstat-tlpn (при выполнении nginx на порте 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
я сделал tcptraceroute 87.106.64.11 80
и его определенно мой сервер, который блокирует порт. В какой-то момент в трассировке я получил это:
s18132051.onlinehome-server.info (87.106.64.11) [closed]
, Таким образом, я сбрасываю свои IP таблицы , и это добилось цели.
Так или там где некоторое скрытое правило в таблице, или iptable -L
не дало мне все правила. Я отмечу это как ответ, поскольку он решает проблему.
я все еще любил бы слышать, каким образом я не получил правил блокирования при выполнении iptables -L
Я испытал ту же проблему, но на (Jessie) Debian 8.4. Как вышеупомянутое, решением был сценарий сброса IPTables, как перечислено в http://insanelabs.net/linux/linux-reset-iptables-firewall-rules/ . Хотя iptables не сообщил ни о каких правилах, должно быть, были некоторые "скрытые" правила или иначе ошибка в самом iptables. Я сообщаю об этой ошибке специалистам по обслуживанию Debian.
В случае, если связанный сайт понижается, вот полный текст рассматриваемого сценария, воспроизведен здесь для удобства.
#!/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
Вы не перечисляли все свои правила. Я нашел, что хороший способ получить любые активные netfilter таблицы:
для вздора в sudo /bin/cat /proc/net/ip_tables_names
; сделайте sudo/sbin/iptables-t $blah-L-vn - строка-numbers|sed "s/^/$blah: /"; сделанный |less-RXF
Другой опции должен работать:
/sbin/iptables-save
, Если у Вас есть терпение, можно пройти каждое правило по одному и измениться, любой ОТРИЦАЕТ, что цели ПРИНИМАЮТ и видят, какой решает проблему.