CentOS官方推荐使用firewall-cmd实现端口转发,虽然它支持iptables,但是同一系统同时只能用firewall-cmd与iptables其中一个。在CentOS 7 v7.4.1708上的实验发现,在安装了firewall-cmd的情况下iptables命令都可用,运行它们的命令都能成功,但是不起到实际的作用。下面是一个firewall-cmd端口转发示例:
把端口为8001到9000之间的所有请求转给80端口:
firewall-cmd --permanent --zone=public --add-forward-port=port=8001-8999:proto=tcp:toport=80
firewall-cmd --reload