防火牆的分類與優缺點知識
一、防火牆的基本分類
1.包過濾防火牆
第一代防火牆和最基本形式防火牆檢查每一個通過的網路包,或者丟棄,或者放行,取決於所建立的一套規則。這稱為包過濾防火牆。
本質上,包過濾防火牆是多址的,表明它有兩個或兩個以上網路介面卡或介面。例如,作為防火牆的裝置可能有兩塊網絡卡NIC,一塊連到內部網路,一塊連到公共的Internet。防火牆的任務,就是作為“通訊警察”,指引包和截住那些有危害的包。
包過濾防火牆檢查每一個傳入包,檢視包中可用的基本資訊源地址和目的地址、埠號、協議等。然後,將這些資訊與設立的規則相比較。如果已經設立了阻斷telnet連線,而包的目的埠是23的話,那麼該包就會被丟棄。如果允許傳入Web連線,而目的埠為80,則包就會被放行。
多個複雜規則的組合也是可行的。如果允許Web連線,但只針對特定的伺服器,目的埠和目的地址二者必須與規則相匹配,才可以讓該包通過。
最後,可以確定當一個包到達時,如果對該包沒有規則被定義,接下來將會發生什麼事情了。通常,為了安全起見,與傳入規則不匹配的包就被丟棄了。如果有理由讓該包通過,就要建立規則來處理它。
建立包過濾防火牆規則的例子如下:
對來自專用網路的包,只允許來自內部地址的包通過,因為其他包包含不正確的包頭部資訊。這條規則可以防止網路內部的任何人通過欺騙性的源地址發起攻擊。而且,如果黑客對專用網路內部的機器具有了不知從何得來的訪問權,這種過濾方式可以阻止黑客從網路內部發起攻擊。
在公共網路,只允許目的地址為80埠的包通過。這條規則只允許傳入的連線為Web連線。這條規則也允許與Web連線使用相同埠的連線,所以它並不是十分安全。
丟棄從公共網路傳入的包,而這些包都有你的網路內的源地址,從而減少IP欺騙性的攻擊。
丟棄包含源路由資訊的包,以減少源路由攻擊。要記住,在源路由攻擊中,傳入的包包含路由資訊,它覆蓋了包通過網路應採取得正常路由,可能會繞過已有的安全程式。通過忽略源路
2.狀態/動態檢測防火牆
狀態/動態檢測防火牆,試圖跟蹤通過防火牆的網路連線和包,這樣防火牆就可以使用一組附加的標準,以確定是否允許和拒絕通訊。它是在使用了基本包過濾防火牆的通訊上應用一些技術來做到這點的。
當包過濾防火牆見到一個網路包,包是孤立存在的。它沒有防火牆所關心的歷史或未來。允許和拒絕包的決定完全取決於包自身所包含的資訊,如源地址、目的地址、埠號等。包中沒有包含任何描述它在資訊流中的位置的資訊,則該包被認為是無狀態的;它僅是存在而已。
一個有狀態包檢查防火牆跟蹤的不僅是包中包含的資訊。為了跟蹤包的狀態,防火牆還記錄有用的資訊以幫助識別包,例如已有的網路連線、資料的傳出請求等。
例如,如果傳入的包包含視訊資料流,而防火牆可能已經記錄了有關資訊,是關於位於特定IP地址的應用程式最近向發出包的源地址請求視訊訊號的資訊。如果傳入的包是要傳給發出請求的相同系統,防火牆進行匹配,包就可以被允許通過。
一個狀態/動態檢測防火牆可截斷所有傳入的通訊,而允許所有傳出的通訊。因為防火牆跟蹤內部出去的請求,所有按要求傳入的資料被允許通過,直到連線被關閉為止。只有未被請求的傳入通訊被截斷。
如果在防火牆內正執行一臺伺服器,配置就會變得稍微複雜一些,但狀態包檢查是很有力和適應性的技術。例如,可以將防火牆配置成只允許從特定埠進入的通訊,只可傳到特定伺服器。如果正在執行Web伺服器,防火牆只將80埠傳入的通訊發到指定的Web伺服器。
狀態/動態檢測防火牆可提供的其他一些額外的服務有:
將某些型別的連線重定向到稽核服務中去。例如,到專用Web伺服器的連線,在Web伺服器連線被允許之前,可能被髮到SecutID伺服器用一次性口令來使用。
拒絕攜帶某些資料的網路通訊,如帶有附加可執行程式的傳入電子訊息,或包含ActiveX程式的Web頁面。
跟蹤連線狀態的方式取決於包通過防火牆的型別:
TCP包。當建立起一個TCP連線時,通過的第一個包被標有包的SYN標誌。通常情況下,防火牆丟棄所有外部的連線企圖,除非已經建立起某條特定規則來處理它們。對內部的連線試圖連到外部主機,防火牆註明連線包,允許響應及隨後再兩個系統之間的包,直到連線結束為止。在這種方式下,傳入的包只有在它是響應一個已建立的連線時,才會被允許通過。
UDP包。UDP包比TCP包簡單,因為它們不包含任何連線或序列資訊。它們只包含源地址、目的地址、校驗和攜帶的資料。這種資訊的缺乏使得防火牆確定包的合法性很困難,因為沒有開啟的連線可利用,以測試傳入的包是否應被允許通過。可是,如果防火牆跟蹤包的狀態,就可以確定。對傳入的包,若它所使用的地址和UDP包攜帶的協議與傳出的連線請求匹配,該包就被允許通過。和TCP包一樣,沒有傳入的UDP包會被允許通過,除非它是響應傳出的請求或已經建立了指定的規則來處理它。對其他種類的包,情況和UDP包類似。防火牆仔細地跟蹤傳出的請求,記錄下所使用的地址、協議和包的型別,然後對照儲存過的資訊核對傳入的包,以確保這些包是被請求的。
由資訊,防火牆可以減少這種方式的攻擊。
3.應用程式代理防火牆
應用程式代理防火牆實際上並不允許在它連線的網路之間直接通訊。相反,它是接受來自內部網路特定使用者應用程式的通訊,然後建立於公共網路伺服器單獨的連線。網路內部的使用者不直接與外部的伺服器通訊,所以伺服器不能直接訪問內部網的任何一部分。
另外,如果不為特定的應用程式安裝代理程式程式碼,這種服務是不會被支援的,不能建立任何連線。這種建立方式拒絕任何沒有明確配置的連線,從而提供了額外的安全性和控制性。
例如,一個使用者的Web瀏覽器可能在80埠,但也經常可能是在1080埠,連線到了內部網路的HTTP代理防火牆。防火牆然後會接受這個連線請求,並把它轉到所請求的Web伺服器。
這種連線和轉移對該使用者來說是透明的,因為它完全是由代理防火牆自動處理的。
代理防火牆通常支援的一些常見的應用程式有:
HTTP
HTTPS/SSL
SMTP
POP3
IMAP
NNTP
TELNET
FTP
IRC
應用程式代理防火牆可以配置成允許來自內部網路的任何連線,它也可以配置成要求使用者認證後才建立連線。要求認證的方式由只為已知的使用者建立連線的這種限制,為安全性提供了額外的保證。如果網路受到危害,這個特徵使得從內部發動攻擊的可能性大大減少。
4.NAT
討論到防火牆的主題,就一定要提到有一種路由器,儘管從技術上講它根本不是防火牆。網路地址轉換NAT協議將內部網路的多個IP地址轉換到一個公共地址發到Internet上。
NAT經常用於小型辦公室、家庭等網路,多個使用者分享單一的IP地址,併為Internet連線提供一些安全機制。
當內部使用者與一個公共主機通訊時,NAT追蹤是哪一個使用者作的請求,修改傳出的包,這樣包就像是來自單一的公共IP地址,然後再開啟連線。一旦建立了連線,在內部計算機和Web站點之間來回流動的通訊就都是透明的了。
當從公共網路傳來一個未經請求的傳入連線時,NAT有一套規則來決定如何處理它。如果沒有事先定義好的規則,NAT只是簡單的丟棄所有未經請求的傳入連線,就像包過濾防火牆所做的那樣。
可是,就像對包過濾防火牆一樣,你可以將NAT配置為接受某些特定埠傳來的傳入連線,並將它們送到一個特定的主機地址。
5.個人防火牆
現在網路上流傳著很多的個人防火牆軟體,它是應用程式級的。個人防火牆是一種能夠保護個人計算機系統安全的軟體,它可以直接在使用者的計算機上執行,使用與狀態/動態檢測防火牆相同的方式,保護一臺計算機免受攻擊。通常,這些防火牆是安裝在計算機網路介面的較低級別上,使得它們可以監視傳入傳出網絡卡的所有網路通訊。
一旦安裝上個人防火牆,就可以把它設定成“學習模式”,這樣的話,對遇到的每一種新的網路通訊,個人防火牆都會提示使用者一次,詢問如何處理那種通訊。然後個人防火牆便記住響應方式,並應用於以後遇到的相同那種網路通訊。
例如,如果使用者已經安裝了一臺個人Web伺服器,個人防火牆可能將第一個傳入的Web連線作上標誌,並詢問使用者是否允許它通過。使用者可能允許所有的Web連線、來自某些特定IP地址範圍的連線等,個人防火牆然後把這條規則應用於所有傳入的Web連線。
基本上,你可以將個人防火牆想象成在使用者計算機上建立了一個虛擬網路介面。不再是計算機的作業系統直接通過網絡卡進行通訊,而是以作業系統通過和個人防火牆對話,仔細檢查網路通訊,然後再通過網絡卡通訊。
二、各類防火牆的優缺點
1.包過濾防火牆
使用包過濾防火牆的優點包括:
防火牆對每條傳入和傳出網路的包實行低水平控制。
每個IP包的欄位都被檢查,例如源地址、目的地址、協議、埠等。防火牆將基於這些資訊應用過濾規則。
防火牆可以識別和丟棄帶欺騙性源IP地址的包。
包過濾防火牆是兩個網路之間訪問的唯一來源。因為所有的通訊必須通過防火牆,繞過是困難的。
包過濾通常被包含在路由器資料包中,所以不必額外的系統來處理這個特徵。
使用包過濾防火牆的缺點包括:
配置困難。因為包過濾防火牆很複雜,人們經常會忽略建立一些必要的規則,或者錯誤配置了已有的規則,在防火牆上留下漏洞。然而,在市場上,許多新版本的防火牆對這個缺點正在作改進,如開發者實現了基於圖形化使用者介面GUI的配置和更直接的規則定義。
為特定服務開放的埠存在著危險,可能會被用於其他傳輸。例如,Web伺服器預設埠為80,而計算機上又安裝了RealPlayer,那麼它會搜尋可以允許連線到RealAudio伺服器的埠,而不管這個埠是否被其他協議所使用,RealPlayer正好是使用80埠而搜尋的。就這樣無意中,RealPlayer就利用了Web伺服器的埠。
可能還有其他方法繞過防火牆進入網路,例如撥入連線。但這個並不是防火牆自身的缺點,而是不應該在網路安全上單純依賴防火牆的原因。
2.狀態/動態檢測防火牆
狀態/動態檢測防火牆的優點有:
檢查IP包的每個欄位的能力,並遵從基於包中資訊的過濾規則。
識別帶有欺騙性源IP地址包的能力。
包過濾防火牆是兩個網路之間訪問的唯一來源。因為所有的通訊必須通過防火牆,繞過是困難的。
基於應用程式資訊驗證一個包的狀態的能力, 例如基於一個已經建立的FTP連線,允許返回的FTP包通過。
基於應用程式資訊驗證一個包狀態的能力,例如允許一個先前認證過的連線繼續與被授予的服務通訊。
記錄有關通過的每個包的詳細資訊的能力。基本上,防火牆用來確定包狀態的所有資訊都可以被記錄,包括應用程式對包的請求,連線的持續時間,內部和外部系統所做的連線請求等。
狀態/動態檢測防火牆的缺點:
狀態/動態檢測防火牆唯一的缺點就是所有這些記錄、測試和分析工作可能會造成網路連線的某種遲滯,特別是在同時有許多連線啟用的時候,或者是有大量的過濾網路通訊的規則存在時。可是,硬體速度越快,這個問題就越不易察覺,而且防火牆的製造商一直致力於提高他們產品的速度。
3.應用程式代理防火牆
使用應用程式代理防火牆的優點有:
指定對連線的控制,例如允許或拒絕基於伺服器IP地址的訪問,或者是允許或拒絕基於使用者所請求連線的IP地址的訪問。
通過限制某些協議的傳出請求,來減少網路中不必要的服務。
大多數代理防火牆能夠記錄所有的連線,包括地址和持續時間。這些資訊對追蹤攻擊和發生的未授權訪問的事件事很有用的。
使用應用程式代理防火牆的缺點有:
必須在一定範圍內定製使用者的系統,這取決於所用的應用程式。
一些應用程式可能根本不支援代理連線。
4.NAT
使用NAT的優點有:
所有內部的IP地址對外面的人來說是隱蔽的。因為這個原因,網路之外沒有人可以通過指定IP地址的方式直接對網路內的任何一臺特定的計算機發起攻擊。
如果因為某種原因公共IP地址資源比較短缺的話,NAT可以使整個內部網路共享一個IP地址。
可以啟用基本的包過濾防火牆安全機制,因為所有傳入的包如果沒有專門指定配置到NAT,那麼就會被丟棄。內部網路的計算機就不可能直接訪問外部網路。
使用NAT的缺點:
NAT的缺點和包過濾防火牆的缺點是一樣的。雖然可以保障內部網路的安全,但它也是一些類似的侷限。而且內網可以利用現流傳比較廣泛的木馬程式可以通過NAT做外部連線,就像它可以穿過包過濾防火牆一樣的容易。
注意:現在有很多廠商開發的防火牆,特別是狀態/動態檢測防火牆,除了它們應該具有的功能之外也提供了NAT的功能。
5.個人防火牆
個人防火牆的優點有:
增加了保護級別,不需要額外的硬體資源。
個人防火牆除了可以抵擋外來攻擊的同時,還可以抵擋內部的攻擊。
個人防火牆是對公共網路中的單個系統提供了保護。例如一個家庭使用者使用的是Modem或ISDN/ADSL上網,可能一個硬體防火牆對於他來說實在是太昂貴了,或者說是太麻煩了。而個人防火牆已經能夠為使用者隱蔽暴露在網路上的資訊,比如IP地址之類的資訊等。
個人防火牆的缺點:
個人防火牆主要的缺點就是對公共網路只有一個物理介面。要記住,真正的防火牆應當監視並控制兩
個或更多的網路介面之間的通訊。這樣一來的話,個人防火牆本身可能會容易受到威脅,或者說是具有這樣一個弱點,網路通訊可以繞過防火牆的規則。
好了,在上面我們已經介紹了幾類防火牆,並討論了每種防火牆的優缺點。要記住,任何一種防火牆只是為網路通訊或者是資料傳輸提供了更有保障的安全性,但是我們也不能完全依賴於防火牆。除了靠防火牆來保障安全的同時,我們也要加固系統的安全性,提高自身的安全意識。這樣一來,資料和通訊以及Web站點就會更有安全保障。
如何建立安全防火牆相關文章:
1.例項講解如何建立安全防火牆
2.Web應用防火牆基礎知識
3.用組策略部署Windows防火牆
4.WIN7防火牆在哪裡設定
5.
6.快速解決 Windows系統防火牆的配置問題
7.安裝防毒軟體與設定防火牆 保障電腦安全
怎樣構建安全的企業防火牆