Linux 服务器 A iptables INPUT 策略设置为接受,服务器 B 禁用防火墙,但我无法从服务器 B 检测到 A 的 httpd 端口

Linux server A iptables INPUT policy is set ACCEPT,server B disable firewall, but I can't detection A's httpd port from server B

Linux 服务器 A iptables INPUT 策略设置为接受,服务器 B 禁用防火墙,但我无法从服务器 B 检测到 A 的 httpd 端口。

# server A
# Generated by iptables-save v1.4.7 on Fri Oct 16 14:29:37 2015
*filter
:INPUT ACCEPT [0:0]   # <--see here
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [151:126429]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
# Completed on Fri Oct 16 14:29:37 2015

只有 RELATED、ESTABLISHED 连接有一个 ACCEPT 目标。 您应该为端口 80/443/whatever_port_used_by_httpd 添加规则(假设端口 80):

# iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

一个有用的事情是在故障排除期间添加 LOGnDROP(或此处的 LOGnREJECT)而不是简单的 DROP(或 REJECT)。