如何實現(xiàn) iptables 端口映射
iptables 端口映射 實現(xiàn)步驟如下:
一、環(huán)境和要實現(xiàn)功能
PC1的網(wǎng)絡設置如下:
eth0 192.168.0.29 內網(wǎng)
eth1 219.239.11.22 外網(wǎng)
PC2的網(wǎng)絡設置則為:192.168.0.21 內網(wǎng)
我們要實現(xiàn)的功能就是將PC1的8080端口映射到PC2的80端口,也即訪問
http://219.239.11.22:8080
即可訪問到PC2上的WEB服務。
二、實現(xiàn)步驟
1、 首先應該做的是/etc/sysctl.conf配置文件的 net.ipv4.ip_forward = 1 默認是0
這樣允許iptalbes FORWARD。
2、 在/etc/rc.d/init.d目錄下有iptables 文件,使用格式如下
Usage: ./iptables {start|stop|restart|condrestart|status|panic|save}
相當與service iptables {….}
把iptables 服務停止,清除以前的規(guī)則,存盤
到/etc/rc.d/init.d目錄下,運行
./iptables stop
iptalbes -F
iptalbes -X
iptalbes -Z
./iptables save
3、 重新配置規(guī)則
iptables -t nat -A PREROUTING -d 219.239.11.22 -p tcp -m tcp --dport 8080 -j DNAT --to-destination 192.168.0.21:80
iptables -t nat -A POSTROUTING -d 192.168.0.21 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.0.29
iptables -A FORWARD -o eth0 -d 192.168.0.21 -p tcp –dport 80 -j ACCEPT
iptables -A FORWARD -i eth0 -s 192.168.0.21 -p tcp –sport 80 -j ACCEPT
DNAT SNAT 的請參考幫助,這里不再陳述。
4、 新的規(guī)則存盤
./iptables save
規(guī)則存盤后在/etc/sysconfig/iptables這個文件里面,若你對這個文件很熟悉
直接修改這里的內容也等于命令行方式輸入規(guī)則。
5、 啟動iptables 服務
./iptables start
在/proc/net/ip_conntrack文件里有包的流向,如下面
tcp 6 53 TIME_WAIT src=../../221.122.59.2 dst=219.239.11.22 sport=7958 dport=8080 packets=9 bytes=1753
src=../../172.18.10.205 dst=172.18.10.212 sport=80 dport=7958 packets=9 bytes=5777 [ASSURED] use=1
通過文章的介紹,我們都可以清楚的看清iptables 端口映射實現(xiàn)的每個步驟!希望對大家有幫助!
【編輯推薦】
- iptables 端口映射設置
- iptables實現(xiàn)端口轉發(fā)、端口映射及雙向通路
- CentOS下配置iptables防火墻
- Centos5下安裝iptables以及l(fā)ayer7協(xié)議
- Centos 5.3 環(huán)境下編譯iptables
- CentOS+iptables+squid透明代理+防火墻設置
- centos IPTables 配置方法