Linux下用iptables做端口映射详细过程

在CentOS5.4上用iptables配置了端口映射,讲述详细的配置过程,供大家参考。


【实现功能】 

server-A 

eth0 58.215.xxx.xx 外网 

eth1 192.168.1.2 内网

server-B 

192.168.1.3 内网

将server-A的3306端口映射到server-B的3306端口,实现通过server-A的外网地址访问server-B内网的3306端口。



【步骤】

1、 首先应该做的是/etc/sysctl.conf配置文件的 net.ipv4.ip_forward = 1 默认是0 这样允许iptalbes FORWARD。

2、 清空iptables默认规则 

iptalbes -F
iptalbes -X
iptalbes -Z

3、 重新配置规则

iptables -t nat -A PREROUTING -d 58.215.xxx.xxx -p tcp --dport 3306 -j DNAT --to-destination 192.168.1.3:3306

iptables -t nat -A POSTROUTING -d 192.168.1.3 -p tcp --dport 3306 -j SNAT --to 192.168.1.2

iptables -A FORWARD -o eth0 -d 192.168.1.3 -p tcp --dport 3306 -j ACCEPT

iptables -A FORWARD -i eth0 -s 192.168.1.3 -p tcp --sport 3306 -j ACCEPT



DNAT SNAT 的请参考帮助,这里不再陈述。



4、 把规则写成脚本,加入到/etc/rc.local 开机自动运行里面。

vim /bin/iptables.sh

iptalbes -F
iptalbes -X
iptalbes -Z 
iptables -t nat -A PREROUTING -d 58.215.xxx.xxx -p tcp --dport 3306 -j DNAT --to-destination 192.168.1.3:3306
iptables -t nat -A POSTROUTING -d 192.168.1.3 -p tcp --dport 3306 -j SNAT --to 192.168.1.2

最后把/bin/iptables.sh脚本加入开机运行。

echo "/bin/iptables.sh" >> /etc/rc.local

猜你喜欢

转载自www.cnblogs.com/20560838q/p/12346007.html