linux系統防火牆作IP地址映射

1、環境linux

服務器IP地址:192.168.1.2服務器

Linux操做系統IP地址:192.168.1.3eth0);192.168.10.20eth1網絡

客戶端IP地址:192.168.10.30ide

拓撲圖以下:spa

wKiom1gb-I_QXJvrAAB-RBMjMsk991.png

2、配置操作系統

一、  開啓防火牆數據轉發功能orm

配置文件:/proc/sys/net/ipv4/ip_forwardblog

該配置文件中默認值爲0,將值改成1接口

注:0表示此功能能關閉;1表示此功能開啓。ip

 

2linux操做系統中的IPTABLES

用到的命令:

1)查看目前本機的防火牆規則:iptables –L –n

參數:

-L:列出目前的table固然規則

-n:不進行IPHOSTNAME的反查,顯示信息的速度會快不少。

2)清空原有防火牆規則:iptables  [-FXZ]

參數:

-F:清除全部的已定製的規則

-X:除掉全部用戶「自定義」的chain

-Z:將全部的chain的計數與流量統計都歸零

3)經過命令配置防火牆轉發功能

A.首先,當客戶端發起到服務器的鏈接請求:數據包先從客戶端(192.168.10.30)發出,到達linux主機(192.168.10.20),通過防火牆將數據包封裝新的數據包頭(192.168.1.3)。簡單來講就是數據包通過linux主機防火牆時,通過數據包頭轉換,將舊的源地址(客戶端地址:192.168.10.30)改成新的源地址(linux

命令:

iptables -t nat –A POSTROUTING –s192.168.10.30 –o eth0 -j SNAT --to-source 192.168.1.3

參數:

-t:後面接table,例如nat或者filter,省略此項時默認使用filter

-A 鏈名:新增一條規則,該規則增長在原規則的最後面。例如原來有兩條規則,使用-A後就是加上第三條規則。

-io 網路接口:設置數據包進出的接口規範

   -o:數據包所進入的那個網絡接口。與POSTROUTING(修改來源IP)結合。

   -i:數據包所傳出的那個網絡接口。與PREROTING(修改目的IP)結合。

-s 來源IP/網絡:設置此規則的數據包的來源地;-d:目標IP/網絡:同-s,只不過這裏指的是目標的的ip/網絡

-j:後面接操做;SNAT:修改數據包報頭的來源項目  DNAT:修改數據包報頭的目的項目

 

B.當數據包從客戶端發出到eth1後再次進行轉換:

命令:

iptables-t nat –A PREROUTING -d 192.168.10.20 -i eth0 –j DNAT --to-destination192.168.1.2

一樣的,當服務器收到客戶端請求返回數據包:

iptables –t nat –A POSTROUTING -s 192.168.1.2-o eth1 -j SNAT --to-source 192.168.10.20

iptables -t nat -A PREROUTING -d 192.168.1.3-i eth1 -j DNAT --to-distination 192.168.10.30

至此防火牆配置完成。


以上有不足或者錯誤的地方敬請指正!

相關文章
相關標籤/搜索