防火墻
功能
防火墻最基本的功能就是隔離網(wǎng)絡(luò),通過將網(wǎng)絡(luò)劃分成不同的區(qū)域(通常情況下稱為ZONE),制定出不同區(qū)域之間的訪問控制策略來控制不同信任程度區(qū)域間傳送的數(shù)據(jù)流。例如互聯(lián)網(wǎng)是不可信任的區(qū)域,而內(nèi)部網(wǎng)絡(luò)是高度信任的區(qū)域。以避免安全策略中禁止的一些通信。它有控制信息基本的任務(wù)在不同信任的區(qū)域。 典型信任的區(qū)域包括互聯(lián)網(wǎng)(一個沒有信任的區(qū)域) 和一個內(nèi)部網(wǎng)絡(luò)(一個高信任的區(qū)域) 。 最終目標(biāo)是提供受控連通性在不同水平的信任區(qū)域通過安全政策的運行和連通性模型之間根據(jù)最少特權(quán)原則 例如:TCP/IPPort 135~139是Microsoft Windows的【網(wǎng)上鄰居】所使用的。如果電腦有使用【網(wǎng)上鄰居】的【共享文件夾】,又沒使用任何防火墻相關(guān)的防護(hù)措施的話,就等于把自己的【共享文件夾】公開到Internet,供不特定的任何人有機會瀏覽目錄內(nèi)的文件。且早期版本的Windows有【網(wǎng)上鄰居】系統(tǒng)溢出的無密碼保護(hù)的漏洞(這里是指【共享文件夾】有設(shè)密碼,但可經(jīng)由此系統(tǒng)漏洞,達(dá)到無須密碼便能瀏覽文件夾的需求)。
防火墻類型
針對普通用戶的個人防火墻,通常是在一部電腦上具有數(shù)據(jù)包過濾功能的軟件,如ZoneAlarm及Windows XP SP2后內(nèi)置的防火墻程序。而專業(yè)的防火墻通常為網(wǎng)絡(luò)設(shè)備,或是擁有2個以上網(wǎng)絡(luò)接口的電腦。以作用的TCP/IP堆棧區(qū)分,主要分為網(wǎng)絡(luò)層防火墻和應(yīng)用層防火墻兩種,但也有些防火墻是同時運作于網(wǎng)絡(luò)層和應(yīng)用層。
網(wǎng)絡(luò)層防火墻
網(wǎng)絡(luò)層防火墻可視為一種 IP 數(shù)據(jù)包過濾器,運作在底層的TCP/IP協(xié)議堆棧上。我們可以以枚舉的方式,只允許匹配特定規(guī)則的數(shù)據(jù)包通過,其余的一概禁止穿越防火墻。這些規(guī)則通??梢越?jīng)由管理員定義或修改,不過某些防火墻設(shè)備可能只能應(yīng)用內(nèi)置的規(guī)則。
我們也能以另一種較寬松的角度來制定防火墻規(guī)則,只要數(shù)據(jù)包不匹配任何一項“否定規(guī)則”就予以放行?,F(xiàn)在的操作系統(tǒng)及網(wǎng)絡(luò)設(shè)備大多已內(nèi)置防火墻功能。
較新的防火墻能利用數(shù)據(jù)包的多樣屬性來進(jìn)行過濾,例如:來源 IP 地址、來源端口號、目的 IP 地址或端口號、服務(wù)類型(如 HTTP 或是 FTP)。也能經(jīng)由通信協(xié)議、TTL 值、來源的網(wǎng)域名稱或網(wǎng)段...等屬性來進(jìn)行過濾。
應(yīng)用層防火墻
防火墻的視察軟件接口示例,紀(jì)錄IP進(jìn)出的情況與對應(yīng)事件
應(yīng)用層防火墻是在TCP/IP堆棧的“應(yīng)用層”上運作,使用瀏覽器時所產(chǎn)生的數(shù)據(jù)流或是使用 FTP 時的數(shù)據(jù)流都是屬于這一層。應(yīng)用層防火墻可以攔截進(jìn)出某應(yīng)用程序的所有數(shù)據(jù)包,并且封鎖其他的數(shù)據(jù)包(通常是直接將數(shù)據(jù)包丟棄)。理論上,這一類的防火墻可以完全阻絕外部的數(shù)據(jù)流進(jìn)受保護(hù)的機器里。
防火墻借由監(jiān)測所有的數(shù)據(jù)包并找出不符規(guī)則的內(nèi)容,可以防范電腦蠕蟲或是木馬程序的快速蔓延。實際上,這個方法繁復(fù)(因軟件種類極多),所以大部分防火墻都不會考慮以這種方法設(shè)計。
截至2012年,所謂的下一代防火墻(NGFW)都只是“拓寬”并“深化”了在應(yīng)用棧檢查的能力。例如,現(xiàn)有支持深度分組檢測的現(xiàn)代防火墻均可擴(kuò)展成入侵預(yù)防系統(tǒng)(IPS),用戶身份集成(用戶ID與IP或MAC地址綁定),和Web應(yīng)用防火墻(WAF)。
代理服務(wù)
代理(Proxy)設(shè)備(可能是一臺專屬的硬件,或只是普通電腦上的一套軟件)也能像應(yīng)用程序一樣回應(yīng)輸入數(shù)據(jù)包(例如連接要求),同時封鎖其他的數(shù)據(jù)包,達(dá)到類似于防火墻的效果。
代理會使從外部網(wǎng)絡(luò)竄改一個內(nèi)部系統(tǒng)更加困難,且只要對于代理有良好的設(shè)置,即使內(nèi)部系統(tǒng)出現(xiàn)問題也不一定會造成安全上的漏洞。相反地,入侵者也許劫持一個公開可及的系統(tǒng)和使用它作為代理人為他們自己的目的;代理人偽裝作為那個系統(tǒng)對其它內(nèi)部機器。當(dāng)對內(nèi)部地址空間的用途增加安全,破壞者也許仍然使用方法譬如IP欺騙(IP spoofing)試圖通過數(shù)據(jù)包對目標(biāo)網(wǎng)絡(luò)。
防火墻經(jīng)常有網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT) 的功能,并且主機被保護(hù)在防火墻之后共同地使用所謂的“私人地址空間”,定義在RFC 1918。
防火墻的適當(dāng)?shù)呐渲靡蠹记珊椭悄埽蠊芾韱T對網(wǎng)絡(luò)協(xié)議和電腦安全有深入的了解,因小差錯可使防火墻不能作為安全工具。
防火墻架構(gòu)
主機型防火墻
此防火墻需有兩張網(wǎng)卡,一張與互聯(lián)網(wǎng)連接,另一張與內(nèi)部網(wǎng)連接,如此互聯(lián)網(wǎng)與內(nèi)部網(wǎng)的通道無法直接接通,所有數(shù)據(jù)包都需要通過主機發(fā)送。
雙閘型防火墻
此防火墻除了主機型防火墻的兩張網(wǎng)卡外,另安裝應(yīng)用服務(wù)轉(zhuǎn)送器的軟件,所有網(wǎng)絡(luò)數(shù)據(jù)包都須經(jīng)過此軟件檢查,此軟件將過濾掉不被系統(tǒng)所允許的數(shù)據(jù)包。
屏障單機型防火墻
此防火墻的硬件設(shè)備除需要主機外,還需要一個路由器,路由器需具有數(shù)據(jù)包過濾的功能,主機則負(fù)責(zé)過濾及處理網(wǎng)絡(luò)服務(wù)要求的數(shù)據(jù)包,當(dāng)互聯(lián)網(wǎng)的數(shù)據(jù)包進(jìn)入屏障單機型防火墻時,路由器會先檢查此數(shù)據(jù)包是否滿足過濾規(guī)則,再將過濾成功的數(shù)據(jù)包,轉(zhuǎn)送到主機進(jìn)行網(wǎng)絡(luò)服務(wù)層的檢查與發(fā)送。
屏障雙閘型防火墻
將屏障單機型防火墻的主機換成雙閘型防火墻。
屏障子網(wǎng)域型防火墻
此防火墻借由多臺主機與兩個路由器組成,電腦分成兩個區(qū)塊,屏障子網(wǎng)域與內(nèi)部網(wǎng),數(shù)據(jù)包經(jīng)由以下路徑,第一個路由器->屏障子網(wǎng)域->第二路由器->內(nèi)部網(wǎng),此設(shè)計因有階段式的過濾功能,因此兩個路由器可以有不同的過濾規(guī)則,讓網(wǎng)絡(luò)數(shù)據(jù)包更有效率。若一數(shù)據(jù)包通過第一過濾器數(shù)據(jù)包,會先在屏障子網(wǎng)域進(jìn)行服務(wù)處理,若要進(jìn)行更深入內(nèi)部網(wǎng)的服務(wù),則要通過第二路由器過濾。
缺點
正常狀況下,所有互聯(lián)網(wǎng)的數(shù)據(jù)包軟件都應(yīng)經(jīng)過防火墻的過濾,這將造成網(wǎng)絡(luò)交通的瓶頸。例如在攻擊性數(shù)據(jù)包出現(xiàn)時,攻擊者會不時寄出數(shù)據(jù)包,讓防火墻疲于過濾數(shù)據(jù)包,而使一些合法數(shù)據(jù)包軟件亦無法正常進(jìn)出防火墻。
相關(guān)條目
Windows 防火墻
計算機安全
TCP/IP端口列表
狀態(tài)防火墻
集成式威脅管理(UTM)
次世代防火墻
棱鏡計劃(美國)
賽門鐵克在線檢測
信息安全機構(gòu)Matousec.com對個人防火墻進(jìn)行的防漏洞測試(Leak test)排名
Juniper 網(wǎng)絡(luò)公司防火墻 / IPSec
免責(zé)聲明:以上內(nèi)容版權(quán)歸原作者所有,如有侵犯您的原創(chuàng)版權(quán)請告知,我們將盡快刪除相關(guān)內(nèi)容。感謝每一位辛勤著寫的作者,感謝每一位的分享。
- 有價值
- 一般般
- 沒價值
{{item.userName}} 舉報
{{item.time}} {{item.replyListShow ? '收起' : '展開'}}評論 {{curReplyId == item.id ? '取消回復(fù)' : '回復(fù)'}}
{{_reply.userName}} 舉報
{{_reply.time}}