目的:通过使用linux中的iptables和firewalld来实现本地端口转发和远程端口转发。
一、iptables
1.本地端口转发
比如当我们访问192.168.87.5的1234端口时,自动帮我们转到80端口
命令如下:
iptables -t nat -I PREROUTING -p tcp --dport 1234 -j REDIRECT --to-ports 80
验证:
2.远程端口转发
当我们访问A主机的80端口时,帮我们跳转到B主机的80端口(都在A上配置)
查看转发开关是否为1 (打开状态)
如果没有打开,则打开: echo "1" > /proc/sys/net/ipv4/ip_forward
cat /proc/sys/net/ipv4/ip_forward
1
然后我们在A上配置DNAT SNAT: A地址87.5 B地址87.3
iptables -t nat -I PREROUTING -p tcp -d 192.168.87.5 --dport 80 -j DNAT --to-destination 192.168.87.3:80
iptables -t nat -I POSTROUTING -p tcp -d 192.168.87.3 --dport 80 -j SNAT --to-source 192.168.87.5:80
检测:访问A地址能够跳转到B的地址
文章来源地址https://www.toymoban.com/news/detail-775161.html
二、firewalld
1.本地端口转发
当我们访问192.168.87.3:2345时 转到本地的192.168.87.3:80
firewall-cmd --add-forward-port=port=2345:proto=tcp:toport=80
检测:
2.远程端口转发
同样要像iptables里面,检查转发开关已经打开
访问A主机上的192.168.87.5:80 跳转到B主机上的192.168.87.3:80
firewall-cmd --add-forward-port=port=80:proto=tcp:toport=80:toaddr=192.168.87.3
firewall-cmd --add-masquerade
检测:
文章来源:https://www.toymoban.com/news/detail-775161.html
到了这里,关于防火墙实现端口转发的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!