Centos 将不再转发 80 端口

Centos 将不再转发 80 端口

自从 iptables 诞生以来,我就一直在使用它进行端口转发。由于某种原因,在重启后,Centos 服务器上转发端口 80 的功能就失效了。我甚至从 Centos 7.7 更新到了 8。我可以转发其他端口,但不能转发 80。Firewalld 和 SELINUX 已禁用。HTTP 设置为 ACCEPT,与之前一样。

iptables 行是:

$IPTABLES -t nat -A PREROUTING --dst (public address) -p tcp --dport 80 -j DNAT --to-destination 192.x.x.x

我也尝试过在内部服务器地址末尾添加:80,但没有成功。

再次,我可以成功转发其他端口。我尝试转发到不同的内部服务器,所以它不是我要转发到的机器。

有任何想法吗?

谢谢,罗伯特

答案1

在已经存在规则的情况下尝试-I代替。-A

查看你的 nat iptables 规则,并使用以下命令验证良好规则上的数据包数量是否增加:

iptables -t nat -L -n -v

然后删除错误的规则-D

答案2

RHEL 8(CentOS 紧随其后)正在将防火墙支持转移到 nftables。此外,他们还使用防火墙,如果启用,它可能会覆盖您已设置的任何 iptables。

请检查您安装并启用了什么防火墙软件,并禁用超出您使用范围的任何软件 - 它们会互相干扰。

答案3

修复方法是更改​​服务器上哪个接口(同一子网上的两个网卡)具有默认网关。我怀疑这是由于网络组件更新造成的,因为它已经这样工作了两年。

谢谢大家,罗伯特

相关内容