使用SNAT、DNAT策略實現網關應用
實驗環境:
某公司使用雙網卡linux主機作爲網關服務器,其中網卡eth1連接局域網,網卡eth0通過光纖接入internet,由於只註冊了一個公網IP地址,要求合理配置網關策略,使用局域網內的PC可以通過共享的方式訪問internet,並在internet中發佈位於內網的網站服務器,作爲公司電子商務的平臺,如圖所示。
拓撲:
需求描述:
? 使用局域網段192.168.100.0/24的PC以共享接入的方式訪問internet
? 發佈公司的網站服務器,當從internet中訪問http://192.168.10.106時,實際上由主機192.168.100.152提供網頁內容
? 允許從internet遠程登錄網站服務器,訪問地址爲192.168.1.106,端口爲2222
實驗步驟
1. 準備實驗環境
1)正確配置各主機的網絡參數(IP地址,子網掩碼)
參考拓撲
2)網段192.168.100.0/24中的主機將默認網關設置192.168.100.151
3)在網站服務器192.168.100.152上添加測試帳號wzadm,去掉默認網關設置
2. 配置linux網關服務器
1)打開路由轉發功能
2)添加SNAT策略,使局域網段192.168.100.0/24能夠共享上網
3)添加DNAT策略,使用公網地址192.168.1.106,端口80,發佈內網主機192.168.100.152中的web服務
4)添加DNAT策略,使用公網地址192.168.1.106,端口2222,發佈內網主機192.168.100.152中的OpenSSH服務
3. 驗證測試結果
1)在網站服務器192.168.100.152中,能夠訪問http://192.168.1.105,並且在查看主機192.168.1.105的web訪問日誌是,所記錄的客戶端IP地址是192.168.1.106
2)在internet測試機192.168.1.105中,能夠訪問http://192.168.1.106,瀏覽器中顯示的是網站服務器192.168.100.152中的網頁
3)在internet測試機192.168.1.105中,能夠通過192.168.1.106的2222端口進行SSH遠程登錄,以網站服務器192.168.100.152中的wzadm用戶進行驗證,登錄後查看當前的IP地址應該是192.168.100.152
總結:
1. SNAT策略僅在nat表的POSTROUTING鏈使用,可以修改數據包的源地址,如實現局域網共享上網
2. 當網關使用非固定的公網IP地址時,SNAT可以替換爲地址僞裝策略MASQUERADE
3. DNAT策略僅在nat表的PREROUTING、OUTPUT鏈使用,可以修改數據包的目的地址和目標端口,如在internet中發佈企業內部網絡中的應用服務器
4. Linux防火牆腳本通常由變量定義,模塊加載,/proc調整,具體的規則設置等部分構成