定義
所謂防火牆指的是一個由軟體和硬體設備組合而成、在內部網和外部網之間、專用網與公共網之間的界面上構造的保護屏障.是一種獲取安全性方法的形象說法,它是一種計算機硬體和軟體的結合,使Internet與Intranet之間建立起一個安全網關(SecurityGateway),從而保護內部網免受非法用戶的侵入,防火牆主要由服務訪問規則、驗證工具、包過濾和套用網關4個部分組成。防火牆就是一個位於計算機和它所連線的網路之間的軟體或硬體(其中硬體防火牆用的較少,例如國防部以及大型機房等地才用,因為它價格昂貴)。該計算機流入流出的所有網路通信均要經過此防火牆。防火牆英語為firewall《英漢證券投資詞典》的解釋為:金融機構內部將銀行業務與證券業務嚴格區分開來的法律屏障,旨在防止可能出現的內幕訊息共享等不公平交易出現。使用防火牆比喻不要引火燒身。當然,既然打算由淺入深的來了解,就要先看看防火牆的概念了。防火牆是汽車中一個部件的名稱。在汽車中,利用防火牆把乘客和引擎隔開,以便汽車引擎一旦著火,防火牆不但能保護乘客安全,而同時還能讓司機繼續控制引擎。在電腦術語中,當然就不是這個意思了,我們可以類比來理解,在網路中,所謂“防火牆”,是指一種將內部網和公眾訪問網(如Internet)分開的方法,它實際上是一種隔離技術。防火牆是在兩個網路通訊時執行的一種訪問控制尺度,它能允許你“同意”的人和數據進入你的網路,同時將你“不同意”的人和數據拒之門外,最大限度地阻止網路中的黑客來訪問你的網路。在防火牆上開啟NAT功能,可以讓內部終端通過防火牆上網際網路,也可以讓網際網路用戶訪問公司內部終端。
作用
防火牆就是一個位於計算機和它所連線的網路之間的軟體。該計算機流入流出的所有網路通信均要經過此防火牆。個人病毒防火牆它可以保護個人電腦不受到病毒和惡意軟體的破壞。不受到黑客,木馬程式等的攻擊。請求您的允許,以阻止或取消阻止某些連線請求。創建記錄(安全日誌),可用於記錄對計算機的成功連線嘗試和不成功的連線嘗試。此日誌可用作故障排除工具。防火牆對流經它的網路通信進行掃描,這樣能夠過濾掉一些攻擊,以免其在目標計算機上被執行。防火牆還可以關閉不使用的連線埠。而且它還能禁止特定連線埠的流出通信,封鎖特洛伊木馬。最後,它可以禁止來自特殊站點的訪問,從而防止來自不明入侵者的所有通信。防火牆有不同類型。一個防火牆可以是硬體自身的一部分,你可以將網際網路連線和計算機都插入其中。防火牆也可以在一個獨立的機器上運行,該機器作為它背後網路中所有計算機的代理和防火牆。最後,直接連在網際網路的機器可以使用個人防火牆。防火牆具有很好的保護作用。入侵者必須首先穿越防火牆的安全防線,才能接觸目標計算機。你可以將防火牆配置成許多不同保護級別。高級別的保護可能會禁止一些服務,如視頻流等,但至少這是你自己的保護選擇。分類
軟硬體形式
如果從防火牆的軟、硬體形式來分的話,防火牆可以分為軟體防火牆和硬體防火牆以及晶片級防火牆。第一種:軟體防火牆
軟體防火牆運行於特定的計算機上,它需要客戶預先安裝好的計算機作業系統的支持,一般來說這台計算機就是整個網路的網關。俗稱“個人防火牆”。軟體防火牆就像其它的軟體產品一樣需要先在計算機上安裝並做好配置才可以使用。防火牆廠商中做網路版軟體防火牆最出名的莫過於Checkpoint。使用這類防火牆,需要網管對所工作的作業系統平台比較熟悉。
第二種:硬體防火牆
這裡說的硬體防火牆是指“所謂的硬體防火牆”。之所以加上"所謂"二字是針對晶片級防火牆說的了。它們最大的差別在於是否基於專用的硬體平台。目前市場上大多數防火牆都是這種所謂的硬體防火牆,他們都基於PC架構,就是說,它們和普通的家庭用的PC沒有太大區別。在這些PC架構計算機上運行一些經過裁剪和簡化的作業系統,最常用的有老版本的Unix、Linux和FreeBSD系統。值得注意的是,由於此類防火牆採用的依然是別人的核心,因此依然會受到OS(作業系統)本身的安全性影響。傳統硬體防火牆一般至少應具備三個連線埠,分別接區域網路,外網和DMZ區(非軍事化區),現在一些新的硬體防火牆往往擴展了連線埠,常見四連線埠防火牆一般將第四個連線埠做為配置口、管理連線埠。很多防火牆還可以進一步擴展連線埠數目。
第三種:晶片級防火牆
晶片級防火牆基於專門的硬體平台,沒有作業系統。專有的ASIC晶片促使它們比其他種類的防火牆速度更快,處理能力更強,性能更高。做這類防火牆最出名的廠商有NetScreen、FortiNet、Cisco等。這類防火牆由於是專用OS(作業系統),因此防火牆本身的漏洞比較少,不過價格相對比較高昂。
技術
防火牆技術雖然出現了許多,但總體來講可分為“包過濾型”和“套用代理型”兩大類。前者以以色列的Checkpoint防火牆和美國Cisco公司的PIX防火牆為代表,後者以美國NAI公司的Gauntlet防火牆為代表。
(1)包過濾(Packetfiltering)型
包過濾型防火牆工作在OSI網路參考模型的網路層和傳輸層,它根據數據包頭源地址,目的地址、連線埠號和協定類型等標誌確定是否允許通過。只有滿足過濾條件的數據包才被轉發到相應的目的地,其餘數據包則被從數據流中丟棄。包過濾方式是一種通用、廉價和有效的安全手段。之所以通用,是因為它不是針對各個具體的網路服務採取特殊的處理方式,適用於所有網路服務;之所以廉價,是因為大多數路由器都提供數據包過濾功能,所以這類防火牆多數是由路由器集成的;之所以有效,是因為它能很大程度上滿足了絕大多數企業安全要求。在整個防火牆技術的發展過程中,包過濾技術出現了兩種不同版本,稱為“第一代靜態包過濾”和“第二代動態包過濾”。
●第一代靜態包過濾類型防火牆
這類防火牆幾乎是與路由器同時產生的,它是根據定義好的過濾規則審查每個數據包,以便確定其是否與某一條包過濾規則匹配。過濾規則基於數據包的報頭信息進行制訂。報頭信息中包括IP源地址、IP目標地址、傳輸協定(TCP、UDP、ICMP等等)、TCP/UDP目標連線埠、ICMP訊息類型等。
●第二代動態包過濾類型防火牆
這類防火牆採用動態設定包過濾規則的方法,避免了靜態包過濾所具有的問題。這種技術後來發展成為包狀態監測(StatefulInspection)技術。採用這種技術的防火牆對通過其建立的每一個連線都進行跟蹤,並且根據需要可動態地在過濾規則中增加或更新條目。包過濾方式的優點是不用改動客戶機和主機上的應用程式,因為它工作在網路層和傳輸層,與套用層無關。但其弱點也是明顯的:過濾判別的依據只是網路層和傳輸層的有限信息,因而各種安全要求不可能充分滿足;在許多過濾器中,過濾規則的數目是有限制的,且隨著規則數目的增加,性能會受到很大地影響;由於缺少上下文關聯信息,不能有效地過濾如UDP、RPC(遠程過程調用)一類的協定;另外,大多數過濾器中缺少審計和報警機制,它只能依據包頭信息,而不能對用戶身份進行驗證,很容易受到“地址欺騙型”攻擊。對安全管理人員素質要求高,建立安全規則時,必須對協定本身及其在不同應用程式中的作用有較深入的理解。因此,過濾器通常是和套用網關配合使用,共同組成防火牆系統。
(2)套用代理(ApplicationProxy)型
套用代理型防火牆是工作在OSI的最高層,即套用層。其特點是完全"阻隔"了網路通信流,通過對每種套用服務編制專門的代理程式,實現監視和控制套用層通信流的作用。其典型網路結構如圖所示。在代理型防火牆技術的發展過程中,它也經歷了兩個不同的版本,即:第一代套用網關型代理防火和第二代自適應代理防火牆。
第一套用網關(ApplicationGateway)型防火牆
這類防火牆是通過一種代理(Proxy)技術參與到一個TCP連線的全過程。從內部發出的數據包經過這樣的防火牆處理後,就好像是源於防火牆外部網卡一樣,從而可以達到隱藏內部網結構的作用。這種類型的防火牆被網路安全專家和媒體公認為是最安全的防火牆。它的核心技術就是代理伺服器技術。
第二代自適應代理(Adaptiveproxy)型防火牆
它是近幾年才得到廣泛套用的一種新防火牆類型。它可以結合代理類型防火牆的安全性和包過濾防火牆的高速度等優點,在毫不損失安全性的基礎之上將代理型防火牆的性能提高10倍以上。組成這種類型防火牆的基本要素有兩個:自適應代理伺服器(AdaptiveProxyServer)與動態包過濾器(DynamicPacketfilter)。
在“自適應代理伺服器”與“動態包過濾器”之間存在一個控制通道。在對防火牆進行配置時,用戶僅僅將所需要的服務類型、安全級別等信息通過相應Proxy的管理界面進行設定就可以了。然後,自適應代理就可以根據用戶的配置信息,決定是使用代理服務從套用層代理請求還是從網路層轉發包。如果是後者,它將動態地通知包過濾器增減過濾規則,滿足用戶對速度和安全性的雙重要求。
代理類型防火牆的最突出的優點就是安全。由於它工作於最高層,所以它可以對網路中任何一層數據通信進行篩選保護,而不是像包過濾那樣,只是對網路層的數據進行過濾。另外代理型防火牆採取是一種代理機制,它可以為每一種套用服務建立一個專門的代理,所以內外部網路之間的通信不是直接的,而都需先經過代理伺服器審核,通過後再由代理伺服器代為連線,根本沒有給內、外部網路計算機任何直接會話的機會,從而避免了入侵者使用數據驅動類型的攻擊方式入侵內部網。代理防火牆的最大缺點就是速度相對比較慢,當用戶對內外部網路網關的吞吐量要求比較高時,代理防火牆就會成為內外部網路之間的瓶頸。那因為防火牆需要為不同的網路服務建立專門的代理服務,在自己的代理程式為內、外部網路用戶建立連線時需要時間,所以給系統性能帶來了一些負面影響,但通常不會很明顯。
結構
從防火牆結構上分,防火牆主要有:單一主機防火牆、路由器集成式防火牆和分散式防火牆三種。單一主機防火牆是最為傳統的防火牆,獨立於其它網路設備,它位於網路邊界。
這種防火牆其實與一台計算機結構差不多(如下圖),同樣包括CPU、記憶體、硬碟等基本組件,當然主機板更是不能少了,且主機板上也有南、北橋晶片。它與一般計算機最主要的區別就是一般防火牆都集成了兩個以上的乙太網卡,因為它需要連線一個以上的內、外部網路。其中的硬碟就是用來存儲防火牆所用的基本程式,如包過濾程式和代理伺服器程式等,有的防火牆還把日誌記錄也記錄在此硬碟上。雖然如此,但我們不能說它就與我們平常的PC機一樣,因為它的工作性質,決定了它要具備非常高的穩定性、實用性,具備非常高的系統吞吐性能。正因如此,看似與PC機差不多的配置,價格甚遠。
隨著防火牆技術的發展及套用需求的提高,原來作為單一主機的防火牆現在已發生了許多變化。最明顯的變化就是現在許多中、高檔的路由器中已集成了防火牆功能,還有的防火牆已不再是一個獨立的硬體實體,而是由多個軟、硬體組成的系統,這種防火牆,俗稱“分散式防火牆”。原來單一主機的防火牆由於價格非常昂貴,僅有少數大型企業才能承受得起,為了降低企業網路投資,現在許多中、高檔路由器中集成了防火牆功能。如CiscoIOS防火牆系列。但這種防火牆通常是較低級的包過濾型。這樣企業就不用再同時購買路由器和防火牆,大大降低了網路設備購買成本。分散式防火牆再也不是只是位於網路邊界,而是滲透於網路的每一台主機,對整個內部網路的主機實施保護。在網路伺服器中,通常會安裝一個用於防火牆系統管理軟體,在伺服器及各主機上安裝有集成網卡功能的PCI防火牆卡,這樣一塊防火牆卡同時兼有網卡和防火牆的雙重功能。這樣一個防火牆系統就可以徹底保護內部網路。各主機把任何其它主機傳送的通信連線都視為“不可信”的,都需要嚴格過濾。而不是傳統邊界防火牆那樣,僅對外部網路發出的通信請求“不信任”。
套用部署
如果按防火牆的套用部署位置分,可以分為邊界防火牆、個人防火牆和混合防火牆三大類。
邊界防火牆是最為傳統的那種,它們於內、外部網路的邊界,所起的作用的對內、外部網路實施隔離,保護邊界內部網路。這類防火牆一般都是硬體類型的,價格較貴,性能較好。個人防火牆安裝於單台主機中,防護的也只是單台主機。這類防火牆套用於廣大的個人用戶,通常為軟體防火牆,價格最便宜,性能也最差。混合式防火牆可以說就是“分散式防火牆”或者“嵌入式防火牆”,它是一整套防火牆系統,由若干個軟、硬體組件組成,分布於內、外部網路邊界和內部各主機之間,既對內、外部網路之間通信進行過濾,又對網路內部各主機間的通信進行過濾。它屬於最新的防火牆技術之一,性能最好,價格也最貴。
性能
如果按防火牆的性能來分可以分為百兆級防火牆和千兆級防火牆兩類。
因為防火牆通常位於網路邊界,所以不可能只是十兆級的。這主要是指防火的通道頻寬(Bandwidth),或者說是吞吐率。當然通道頻寬越寬,性能越高,這樣的防火牆因包過濾或套用代理所產生的延時也越小,對整個網路通信性能的影響也就越小。
以作用的TCP
第一類網路層防火牆網路層防火牆可視為一種IP分組過濾器,運作在底層的TCP/IP協定堆疊上。我們可以以枚舉的方式,只允許符合特定規則的分組通過,其餘的一概禁止穿越防火牆。這些規則通常可以經由管理員定義或修改,不過某些防火牆設備可能只能套用自帶的規則。我們也能以另一種較寬鬆的角度來制定防火牆規則,只要分組不符合任何一項“否定規則”就予以放行。現在的作業系統及網路設備大多已自帶防火牆功能。較新的防火牆能利用分組的多樣屬性來進行過濾,例如:來源IP位址、來源連線埠號、目的IP位址或連線埠號、服務類型(如WWW或是FTP)。也能經由通信協定、TTL值、來源的網域名稱或網段...等屬性來進行過濾。
第二類套用層防火牆
套用層防火牆是在TCP/IP堆疊的“套用層”上運作,使用瀏覽器時所產生的數據流或是使用FTP時的數據流都是屬於這一層。套用層防火牆可以攔截進出某應用程式的所有分組,並且封鎖其他的分組(通常是直接將分組丟棄)。理論上,這一類的防火牆可以完全阻絕外部的數據流進到受保護的機器里。防火牆藉由監測所有的分組並找出不符規則的屬性,可以防範電腦蠕蟲或是木馬程式的快速蔓延。不過就實現而言,這個方法既煩且雜(因軟體種類極其繁多),所以大部分的防火牆都不會考慮以這種方法設計。XML防火牆是一種新型態的套用層防火牆。
第三類代理服務
代理服務(Proxy)設備(可能是一台專屬的硬體,或只是普通電腦上的一套軟體)也能像應用程式一樣回應輸入分組(例如連線要求),同時封鎖其他的分組,達到類似於防火牆的效果。代理會使從外部網路竄改一個內部系統更加困難,且只要對於代理有良好的設定,即使內部系統出現問題也不一定會造成安全上的漏洞。相反地,入侵者也許劫持一個公開可及的系統和使用它作為代理人為他們自己的目的;代理人偽裝作為那個系統對其它內部機器。當對內部地址空間的用途加強安全,破壞狂也許仍然使用方法譬如IP欺騙(IPspoofing)試圖通過小包對目標網路。防火牆經常有網路地址轉換(NAT)的功能,並且主機被保護在防火牆之後共同地使用所謂的“私人地址空間”,定義在RFC1918。防火牆的適當的配置要求技巧和智慧型,它要求管理員對網路協定和電腦安全有深入的了解,因小差錯可使防火牆不能作為安全工具。
防火牆架設
堡壘主機式防火牆
此防火牆需有兩片網卡,一片與網際網路連線,另一片與內部網路連線,如此網際網路與內部網路的通路,無法直接接通,所有分組都需要通過堡壘主機轉送。
雙閘式防火牆
此防火牆除了堡壘主機式防火牆的兩片網卡設計外,另有安裝一稱為套用服務轉送器的軟體,所有網路分組都須經過此軟體檢查,此軟體將過濾掉不被系統所允許的分組。
屏障單機式防火牆
此防火牆的硬體設備除需要主機外,還需要另一路由器,路由器需具有分組過濾的功能,主機則負責過濾及處理網路服務要求的分組,當網際網路的分組進入屏障單機式防火牆時,路由器會先檢查此分組是否滿足過濾規則,再將過濾成功的分組,轉送到主機做網路服務層的檢查與轉送。
屏障雙閘式防火牆
將屏障單機式防火牆的主機換成,雙閘式防火牆。
屏障子網域式防火牆
此防火牆藉由多台主機與兩個路由器組成,電腦分成兩個區塊,屏障子網域與內部網路,分組經由以下路徑,第一個路由器->屏障子網域->第二路由器->內部網路,此設計因有階段式的過濾功能,因此兩個路由器可以有不同的過濾規則,讓網路分組使用更有效率。若一分組通過第一過濾器分組,會先在屏障子網域做服務處理,若要做更深入內部網路的服務,則要通過第二路由器的過濾。
缺點
正常況下,所有網際網路的分組軟體都應經過防火牆的過濾,這將造成網路交通的瓶頸,例如在攻擊性分組出現時,攻擊者會不時寄出分組,讓防火牆疲於過濾分組,而使一些合法分組軟體,亦無法正常進出防火牆。防火牆雖然可以過濾網際網路的分組,但卻無法過濾內部網路的分組,因此若有人從內部網路攻擊時,防火牆是毫無用武之地的。而電腦本身作業系統,亦可能一些系統漏洞,使入侵者可以利用這些系統漏洞來繞過防火牆的過濾,進而入侵電腦。無法有效阻擋病毒的攻擊,尤其是隱藏在數據中的病毒。