我在一家托管公司管理一台服务器。apache 设置为监听端口 80 和 443。http(端口 80)通信工作正常。我也可以使用端口 22 正常进行 ftp 和 telnet。问题 - 当我尝试使用 https 连接时,我收到“找不到服务器”的消息。因此,我打开了 tcptrack,我可以看到我的 https 请求来自端口 21,但该端口未被监听。域名被分配给一个公共 IP,而该 IP 又被分配给了服务器的私有 IP。这是我设置的第三台服务器,其他两台都很好。只有这台 RedHat 服务器有这个问题。任何帮助都将不胜感激。
lsmod | grep ip_tables
ip_tables 55329 2 iptable_filter,iptable_mangle
x_tables 50377 3 ip_tables,ipt_REJECT,xt_tcpudp
iptables -L
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
答案1
您是否与托管公司讨论过他们的 NAT 规则?我假设他们管理将流量从其公共 IP 发送到您的私有 IP 的 NAT 规则
答案2
如果它是通过端口 21 进入服务器的,那么防火墙(或任何边缘设备)上可能正在进行端口转换。检查将公有 IP 转换为私有 IP 的同一设备。