Welcome 微信登录

首页 / 操作系统 / Linux / Linux系统如何使用iptables进行本地端口转发?

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


2、再查看一下我们系统里当前使用的端口情况


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


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


5、例如我们将连接服务器 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


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


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


8、这里我们还可以在里边进行设置本地转发。


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


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