FavoriteLoading
0

Linux防火墻的概念與企業中的應用

Linux防火墻其實并不是特別專業的叫法,我們所說的Linux防火墻其實是指的是Linux下的Netfilter/iptables。Netfilter/iptables是Linux內核集成的IP信息包過濾系統。
雖然Netfilter/iptables IP信息包過濾系統可以當做一個整體對待,但其實它們是該過濾系統的兩個組件,Netfilter是內核的模塊實現,iptables是上層的操作工具。Netfilter是Linux核心中的一個通用架構,運行在內核空間(kernel space)。iptables提供了一系列的表(tables),每個表都是由若干個鏈(chains)組成,而每個鏈可以由一條或數條規則(rule)組成·(我們常用的是三表五鏈),其規則又是由一些信息包過濾表組成,這些表包含內核用來控制信息包過濾處理的規則集。iptables是一個管理內核包過濾的工具,可以加入、插入或刪除核心包過濾表格中的規則。它運行在用戶空間(user space)中,現在的發行版本中有默認的安裝。
Netfilter/iptables的最大優點是它可以配置有狀態的防火墻。有狀態的防火墻能夠指定并記住為發送或接受信息包所建立的連接狀態。防火墻可以從信息包的連接跟蹤狀態中獲取該信息。在決定過濾新的信息包時,防火墻所使用的這些狀態可以提高其效率和速度。有四種有效狀態,其名稱分別為:ESTABLISHED、INVALID、NEW和RELATED.
ESTABLISHED:表示該信息包屬于已建立的連接,該連接一直用于發送和接受信息包并且完全有效。
INVALID:表示該信息包與任何已知的流或連接都不相關聯,它可以包含了錯誤的數據或頭。
NEW:表示該信息包或即將啟動新的連接,或者它尚未用于發送和接收信息包的連接相關聯。
RELATED:表示該信息包正在啟動新連接,以及它已建立的連接相關聯的連接。
由于iptables的狀態在iptables腳本中用的比較多,要多注意者這方面的知識。
Netfilter/iptables的另一個優點是:它使得用戶可以完全控制防火墻的配置和信息包過濾,可以通過定制規則來滿足自己的特定需求,從而只允許自己想要的網絡流量進入系統。

另外,Netfilter/iptables是免費的,這可以極大的節省費用,這一點對很多人有很大的誘惑力,可以替代昂貴的防火墻解決方案。iptables和Netfilter的確存在差別,盡管它們盡管被用來相互替換使用,Netfilter是用來實現Linux內核中防火墻和Linux內核空間程序代碼段,它要么被直接編譯進內核,要么被包含在模塊中,而iptables是用來管理Netfilter防火墻的用戶程序,一般大家都習慣將Netfilter/iptables簡稱為iptables。

Linux防火墻在企業中的應用


Linux防火墻(即Netfilter/iptables IP過濾系統)在企業中的應用非常廣泛,主要應用在:
對于IDC機房的服務器,可以使用Linux防火墻來代替硬件防火墻,由于IDC機房的機器一般是沒有硬件防火墻的,因此開源免費的iptables是一個性價比不錯的選擇。
在各大云計算平臺下,都有“安全組”的存在,其原理與iptables極為類似,但是底層具體是如何實現的我們就不得而知了。
利于iptables來作為企業的NAT路由器,從而代替傳統路由器提供企業內部員工上網只用,在節約成本和進行有效控制上,Linux防火墻確實有它獨有的優勢。
結合Squid作為企業內部上網的透明代理。傳統的代理需要在瀏覽器里配置代理服務器信息,而iptables結合Squid的透明代理則可以把客戶端的請求重定向到代理服務器的端口,讓客戶感知不到代理的存在,當然,客戶端也無法做任何設置。
用于外網IP向內網IP映射。我們可以假設有一家ISP提供園區Internet接入服務,為了方便管理,該iSP分配給園區用戶的IP地址都是內網IP,但是部分用戶要求建立自己的web服務器對外發布信息,這時可以在防火墻的外部網卡上綁定多個合法IP地址,然后通過IP映射使發給其中一個IP地址的包轉發至內部用戶的web服務器上,這樣內部的web服務器也就可以對外提供服務了,這種形式的NAT一般稱為DNAT。
防止輕量級的DOS攻擊,比如ping攻擊以及SYN洪水攻擊,我們利用iptables來做相關安全策略還是很有效果的。

【聲明】:8090安全小組門戶(http://www.jvwkvg.tw)登載此文出于傳遞更多信息之目的,并不代表本站贊同其觀點和對其真實性負責,僅適于網絡安全技術愛好者學習研究使用,學習中請遵循國家相關法律法規。如有問題請聯系我們,聯系郵箱[email protected],我們會在最短的時間內進行處理。