环境:
CentOS6.5,192.168.1.10,外网双向通信,绑定域名zlzkj.org;
WinServer2008,192.168.1.11,外网不能直接访问到该机器,但ftp、远程桌面、MySQL想开放到zlzkj.org*问;
目标:
ftp:192.168.1.10的21 转发到 192.168.1.11的21;
远程桌面:192.168.1.10的3389 转发到 192.168.1.11的3389;
MySQL:192.168.1.10的3361 转发到 192.168.1.11的3361;
1. 需要先开启linux的数据转发功能
vim /etc/sysctl.conf
将net.ipv4.ip_forward=0改为1
sysctl -p
2. 更改iptables,运行下列命令
#将192.168.1.10的21端口数据转发到192.168.1.11:21。
iptables -t nat -A PREROUTING -d 192.168.1.10 -p tcp –dport 21 -j DNAT –to-destination 192.168.1.11:21
#将192.168.1.11的21端口数据返回时将源IP改为192.168.1.10
iptables -t nat -A POSTROUTING -d 192.168.1.11 -p tcp –dport 21 -j SNAT –to-source 192.168.1.10
#远程桌面
iptables -t nat -A PREROUTING -d 192.168.1.10 -p tcp –dport 3389 -j DNAT –to-destination 192.168.1.11:3389
iptables -t nat -A POSTROUTING -d 192.168.1.11 -p tcp –dport 3389 -j SNAT –to-source 192.168.1.10
#MySQL
iptables -t nat -A PREROUTING -d 192.168.1.10 -p tcp –dport 3361 -j DNAT –to-destination 192.168.1.11:3361
iptables -t nat -A POSTROUTING -d 192.168.1.11 -p tcp –dport 3361 -j SNAT –to-source 192.168.1.10
3.保存iptables
service iptables save