CentOS7 默认使用firewalld 作为防火墙管理工具,其实 firewalld 也是在内核中对 iptables 进行操作达到效果,使用 firewalld 进行端口转发也非常的简单、灵活。

#portA  你的跳板机端口(访问此端口的数据会被转发到hostB:portB) 
#hostB  转发到该目标服务器 
#portB  转发到该目标服务器指定端口 

关键命令

firewall-cmd --add-forward-port= \
port={portA}:proto=tcp:toport={portB}:toaddr={hostB}
firewall-cmd --add-masquerade

如果需要在开机自动生效,只需要再加上 –permanent 命令,设置为永久配置即可。

在CentOS6下使用iptables进行端口转发的命令可以参考《灵活配置iptables转发端口》