评论

收藏

[Linux] Linux系统如何使用iptables进行本地端口转发?

服务系统 服务系统 发布于:2021-10-04 16:38 | 阅读数:351 | 评论:0

这篇文章主要为大家介绍了如何使用iptables进行本地端口转发,在工作环境中接触到iptables有时候需要进行端口转发功能,例如我本机不开放那些端口的,但可以使用它来进行转发到使用的端口上,具体方法请看下文
在工作环境中接触到iptables有时候需要进行端口转发功能,例如我本机不开放那些端口的,但可以使用它来进行转发到使用的端口上。下面小编给大家介绍一下如何使用iptables进行本地端口转发。希望对大家有所帮助 。
首先登陆我们的内网服务器,工作机不能随便拿来用的。
DSC0000.jpg

再查看一下我们系统里当前使用的端口情况
DSC0001.jpg

从上图可以查看到我们系统里边的22端口和25是使用的。
下面我开启一下系统的ip转发功能
echo 1 > /proc/sys/net/ipv4/ip_forward
DSC0002.jpg

我们也可以通过编辑 /etc/sysctl.conf文件来启用ip转发,然后再使用sysctl命令生效。
DSC0003.jpg

例如我们将连接服务器 43999端口的连接都转发到22端口上面去,可以使用下面的命令
iptables -t nat -A PREROUTING -p tcp -i eth0 -d 192.168.31.147 --dport 43999 -j DNAT --to 192.168.31.147:22
DSC0004.jpg

这样就可以实现在外面也可以通过43999端口连接ssh了。其实我们的43999端口是在系统里没有开的,但通过转发就可以使用了。
DSC0005.jpg

以上只是使用了在外面的情况,但如果在服务器里边是使用不到43999端口的。
DSC0006.jpg

这里我们还可以在里边进行设置本地转发。
DSC0007.jpg

再从本地进行测试,也是可以连接了,虽然端口是没有开启的。
DSC0008.jpg

注意事项
iptables转发功能需要系统的支持才行,如果系统不开启,即使设置了也没有用。

关注下面的标签,发现更多相似文章