天天看點

iptables 端口轉發

2011-11-18 14:53:33|  分類:學習筆記|  标簽:linux配置端口映射ubuntu|字号大中小訂閱

轉自:http://os.51cto.com/art/201103/249345.htm轉

自:http://www.linuxidc.com/linux/2007-11/9269.htm

使用ubuntu iptables 有許多地方能進行運作,比如:内網端口映射

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)

chain output (policy accept)

表示無任何設定,可以繼續下一步操作。

否則執行:

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

通過是正文的三大步介紹,我們清楚的知道了ubuntu iptables 内網端口映射的組建情況!希望對你們有用!

發現好多文章對linux配置端口映射的說明都不夠詳細,我在redhat8.0上用iptables配置了端口映射,講述詳細的配置過程,供大家參考。

【實作功能】

  pc a是

  eth0      172.18.10.212  内網

  eth1      219.239.xx.xx  外網

pc b是    172.18.10.205  内網

a的8080端口映射到b的80端口

【步驟】

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 服務停止,清除以前的規則,存盤

    到/etc/rc.d/init.d目錄下,運作

./iptables stop

    iptalbes -f

    iptalbes -x

    iptalbes -z

    ./iptables save