Linux下用iptables作端口映射详细过程vim
在CentOS5.4上用iptables配置了端口映射,讲述详细的配置过程,供你们参考。tcp
【实现功能】 ide
server-A spa
eth0 58.215.xxx.xx 外网 server
eth1 192.168.1.2 内网
ip
server-B it
192.168.1.3 内网io
将server-A的3306端口映射到server-B的3306端口,实现经过server-A的外网地址访问server-B内网的3306端口。table
【步骤】class
一、 首先应该作的是/etc/sysctl.conf配置文件的 net.ipv4.ip_forward = 1 默认是0 这样容许iptalbes FORWARD。
二、 清空iptables默认规则
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
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 的请参考帮助,这里再也不陈述。
四、 把规则写成脚本,加入到/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