ubuntu下iptables配置内网端口映射的方法

发布时间:2020-12-22编辑:脚本学堂
本文介绍下,在ubuntu系统中配置iptables进行内网端口映射的方法,有需要的朋友可以作个参考。

在ubuntu中使用iptables,可以实现Ubuntu内网端口映射,本文分享下配置步骤。

1,系统环境
内网两台机器:
A 172.16.119.128
B 172.16.119.129
要求:
将A机器的80端口映射到B机器的8013端口。

2.设置步骤
2.1./etc/sysctl.conf配置文件修改
删除“# net.ipv4.ip_forward = 1”行前面的“#”。
默认该行被注释掉的。

2.2.查看现有配置信息
 

复制代码 代码示例:
iptables -L

如果显示:
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination

表示无任何设置,可以继续下一步操作。

否则执行:
 

复制代码 代码示例:
iptalbes -F
iptalbes -X
iptalbes -Z

2.3.设置端口映射

分别执行:
 

复制代码 代码示例:
iptables -t nat -A PREROUTING -d 172.16.119.128 -p tcp --dport 80 -j DNAT --to-destination 172.16.119.129:8013
iptables -t nat -A POSTROUTING -d 172.16.119.129 -p tcp --dport 8013 -j SNAT --to 172.16.119.128
iptables -A FORWARD -o eth0 -d 172.16.119.129 -p tcp --dport 8013 -j ACCEPT
iptables -A FORWARD -i eth0 -s 172.16.119.129 -p tcp --sport 8013 -j ACCEPT

2.4.验证端口映射
此时,访问http://172.16.119.128/abc.htm,应该能访问到对应129服务器上端口为8013网站的abc.htm页面。

3.设置开机自动加载iptables的配置文件
3.1 保存配置
执行命令:
# iptables-save > /etc/init.d/iptables.up.rules
将当前配置保存再iptables.up.rules文件中,文件名可以自己决定。

3.2 修改网卡配置文件
在网卡IP配置文件/etc/network/interfaces末行加入(/etc/init.d/iptables.up.rules可改成自己定义的配置文件位置和名称)
pre-up iptables-restore < /etc/init.d/iptables.up.rules

3.3 重启服务器验证
shutdown -r now