防火墻的基本分類大全
Internet的迅速發(fā)展給現(xiàn)代人的生產(chǎn)和生活都帶來了前所未有的飛躍,大大提高了工作效率,豐富了人們的生活,彌補(bǔ)了人們的精神空缺;而與此同時(shí)給人們帶來了一個(gè)日益嚴(yán)峻的問題――網(wǎng)絡(luò)安全。網(wǎng)絡(luò)的安全性成為當(dāng)今最熱門的話題之一,很多企業(yè)為了保障自身服務(wù)器或數(shù)據(jù)安全都采用了防火墻。隨著科技的發(fā)展,防火墻也逐漸被大眾所接受。但是,由于防火墻是屬于高科技產(chǎn)物,許多的人對(duì)此還并不是了解的十分透徹。這篇是介紹防火墻的分類,希望你能多了解增長(zhǎng)知識(shí)。
防火墻的基本分類
1.包過濾防火墻
第一代防火墻和最基本形式防火墻檢查每一個(gè)通過的網(wǎng)絡(luò)包,或者丟棄,或者放行,取決于所建立的一套規(guī)則。這稱為包過濾防火墻。
本質(zhì)上,包過濾防火墻是多址的,表明它有兩個(gè)或兩個(gè)以上網(wǎng)絡(luò)適配器或接口。例如,作為防火墻的設(shè)備可能有兩塊網(wǎng)卡(NIC),一塊連到內(nèi)部網(wǎng)絡(luò),一塊連到公共的Internet。防火墻的任務(wù),就是作為“通信警察”,指引包和截住那些有危害的包。
包過濾防火墻檢查每一個(gè)傳入包,查看包中可用的基本信息(源地址和目的地址、端口號(hào)、協(xié)議等)。然后,將這些信息與設(shè)立的規(guī)則相比較。如果已經(jīng)設(shè)立了阻斷telnet連接,而包的目的端口是23的話,那么該包就會(huì)被丟棄。如果允許傳入Web連接,而目的端口為80,則包就會(huì)被放行。
多個(gè)復(fù)雜規(guī)則的組合也是可行的。如果允許Web連接,但只針對(duì)特定的服務(wù)器,目的端口和目的地址二者必須與規(guī)則相匹配,才可以讓該包通過。
最后,可以確定當(dāng)一個(gè)包到達(dá)時(shí),如果對(duì)該包沒有規(guī)則被定義,接下來將會(huì)發(fā)生什么事情了。通常,為了安全起見,與傳入規(guī)則不匹配的包就被丟棄了。如果有理由讓該包通過,就要建立規(guī)則來處理它。
建立包過濾防火墻規(guī)則的例子如下:
對(duì)來自專用網(wǎng)絡(luò)的包,只允許來自內(nèi)部地址的包通過,因?yàn)槠渌徽_的包頭部信息。這條規(guī)則可以防止網(wǎng)絡(luò)內(nèi)部的任何人通過欺騙性的源地址發(fā)起攻擊。而且,如果黑客對(duì)專用網(wǎng)絡(luò)內(nèi)部的機(jī)器具有了不知從何得來的訪問權(quán),這種過濾方式可以阻止黑客從網(wǎng)絡(luò)內(nèi)部發(fā)起攻擊。
在公共網(wǎng)絡(luò),只允許目的地址為80端口的包通過。這條規(guī)則只允許傳入的連接為Web連接。這條規(guī)則也允許與Web連接使用相同端口的連接,所以它并不是十分安全。
丟棄從公共網(wǎng)絡(luò)傳入的包,而這些包都有你的網(wǎng)絡(luò)內(nèi)的源地址,從而減少IP欺騙性的攻擊。丟棄包含源路由信息的包,以減少源路由攻擊。要記住,在源路由攻擊中,傳入的包包含路由信息,它覆蓋了包通過網(wǎng)絡(luò)應(yīng)采取得正常路由,可能會(huì)繞過已有的安全程序。通過忽略源路由信息,防火墻可以減少這種方式的攻擊。
2.狀態(tài)/動(dòng)態(tài)檢測(cè)防火墻
狀態(tài)/動(dòng)態(tài)檢測(cè)防火墻,試圖跟蹤通過防火墻的網(wǎng)絡(luò)連接和包,這樣防火墻就可以使用一組附加的標(biāo)準(zhǔn),以確定是否允許和拒絕通信。它是在使用了基本包過濾防火墻的通信上應(yīng)用一些技術(shù)來做到這點(diǎn)的。
當(dāng)包過濾防火墻見到一個(gè)網(wǎng)絡(luò)包,包是孤立存在的。它沒有防火墻所關(guān)心的歷史或未來。允許和拒絕包的決定完全取決于包自身所包含的信息,如源地址、目的地址、端口號(hào)等。包中沒有包含任何描述它在信息流中的位置的信息,則該包被認(rèn)為是無狀態(tài)的;它僅是存在而已。
一個(gè)有狀態(tài)包檢查防火墻跟蹤的不僅是包中包含的信息。為了跟蹤包的狀態(tài),防火墻還記錄有用的信息以幫助識(shí)別包,例如已有的網(wǎng)絡(luò)連接、數(shù)據(jù)的傳出請(qǐng)求等。
例如,如果傳入的包包含視頻數(shù)據(jù)流,而防火墻可能已經(jīng)記錄了有關(guān)信息,是關(guān)于位于特定IP地址的應(yīng)用程序最近向發(fā)出包的源地址請(qǐng)求視頻信號(hào)的信息。如果傳入的包是要傳給發(fā)出請(qǐng)求的相同系統(tǒng),防火墻進(jìn)行匹配,包就可以被允許通過。
一個(gè)狀態(tài)/動(dòng)態(tài)檢測(cè)防火墻可截?cái)嗨袀魅氲耐ㄐ?,而允許所有傳出的通信。因?yàn)榉阑饓Ω檭?nèi)部出去的請(qǐng)求,所有按要求傳入的數(shù)據(jù)被允許通過,直到連接被關(guān)閉為止。只有未被請(qǐng)求的傳入通信被截?cái)唷?/p>
如果在防火墻內(nèi)正運(yùn)行一臺(tái)服務(wù)器,配置就會(huì)變得稍微復(fù)雜一些,但狀態(tài)包檢查是很有力和適應(yīng)性的技術(shù)。例如,可以將防火墻配置成只允許從特定端口進(jìn)入的通信,只可傳到特定服務(wù)器。如果正在運(yùn)行Web服務(wù)器,防火墻只將80端口傳入的通信發(fā)到指定的Web服務(wù)器。
狀態(tài)/動(dòng)態(tài)檢測(cè)防火墻可提供的其他一些額外的服務(wù)有:
將某些類型的連接重定向到審核服務(wù)中去。例如,到專用Web服務(wù)器的連接,在Web服務(wù)器連接被允許之前,可能被發(fā)到SecutID服務(wù)器(用一次性口令來使用)。
拒絕攜帶某些數(shù)據(jù)的網(wǎng)絡(luò)通信,如帶有附加可執(zhí)行程序的傳入電子消息,或包含ActiveX程序的Web頁面。
跟蹤連接狀態(tài)的方式取決于包通過防火墻的類型:
TCP包。當(dāng)建立起一個(gè)TCP連接時(shí),通過的第一個(gè)包被標(biāo)有包的SYN標(biāo)志。通常情況下,防火墻丟棄所有外部的連接企圖,除非已經(jīng)建立起某條特定規(guī)則來處理它們。對(duì)內(nèi)部的連接試圖連到外部主機(jī),防火墻注明連接包,允許響應(yīng)及隨后再兩個(gè)系統(tǒng)之間的包,直到連接結(jié)束為止。在這種方式下,傳入的包只有在它是響應(yīng)一個(gè)已建立的連接時(shí),才會(huì)被允許通過。
UDP包。UDP包比TCP包簡(jiǎn)單,因?yàn)樗鼈儾话魏芜B接或序列信息。它們只包含源地址、目的地址、校驗(yàn)和攜帶的數(shù)據(jù)。這種信息的缺乏使得防火墻確定包的合法性很困難,因?yàn)闆]有打開的連接可利用,以測(cè)試傳入的包是否應(yīng)被允許通過??墒牵绻阑饓Ω櫚臓顟B(tài),就可以確定。對(duì)傳入的包,若它所使用的地址和UDP包攜帶的協(xié)議與傳出的連接請(qǐng)求匹配,該包就被允許通過。和TCP包一樣,沒有傳入的UDP包會(huì)被允許通過,除非它是響應(yīng)傳出的請(qǐng)求或已經(jīng)建立了指定的規(guī)則來處理它。對(duì)其他種類的包,情況和UDP包類似。防火墻仔細(xì)地跟蹤傳出的請(qǐng)求,記錄下所使用的地址、協(xié)議和包的類型,然后對(duì)照保存過的信息核對(duì)傳入的包,以確保這些包是被請(qǐng)求的。
3.應(yīng)用程序代理防火墻
應(yīng)用程序代理防火墻實(shí)際上并不允許在它連接的網(wǎng)絡(luò)之間直接通信。相反,它是接受來自內(nèi)部網(wǎng)絡(luò)特定用戶應(yīng)用程序的通信,然后建立于公共網(wǎng)絡(luò)服務(wù)器單獨(dú)的連接。網(wǎng)絡(luò)內(nèi)部的用戶不直接與外部的服務(wù)器通信,所以服務(wù)器不能直接訪問內(nèi)部網(wǎng)的任何一部分。
另外,如果不為特定的應(yīng)用程序安裝代理程序代碼,這種服務(wù)是不會(huì)被支持的,不能建立任何連接。這種建立方式拒絕任何沒有明確配置的連接,從而提供了額外的安全性和控制性。
例如,一個(gè)用戶的Web瀏覽器可能在80端口,但也經(jīng)??赡苁窃?080端口,連接到了內(nèi)部網(wǎng)絡(luò)的HTTP代理防火墻。防火墻然后會(huì)接受這個(gè)連接請(qǐng)求,并把它轉(zhuǎn)到所請(qǐng)求的Web服務(wù)器。
這種連接和轉(zhuǎn)移對(duì)該用戶來說是透明的,因?yàn)樗耆怯纱矸阑饓ψ詣?dòng)處理的。
代理防火墻通常支持的一些常見的應(yīng)用程序有:
HTTP
HTTPS/SSL
SMTP
POP3
IMAP
NNTP
TELNET
FTP
IRC
應(yīng)用程序代理防火墻可以配置成允許來自內(nèi)部網(wǎng)絡(luò)的任何連接,它也可以配置成要求用戶認(rèn)證后才建立連接。要求認(rèn)證的方式由只為已知的用戶建立連接的這種限制,為安全性提供了額外的保證。如果網(wǎng)絡(luò)受到危害,這個(gè)特征使得從內(nèi)部發(fā)動(dòng)攻擊的可能性大大減少。
4.NAT
討論到防火墻的主題,就一定要提到有一種路由器,盡管從技術(shù)上講它根本不是防火墻。網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)協(xié)議將內(nèi)部網(wǎng)絡(luò)的多個(gè)IP地址轉(zhuǎn)換到一個(gè)公共地址發(fā)到Internet上。
NAT經(jīng)常用于小型辦公室、家庭等網(wǎng)絡(luò),多個(gè)用戶分享單一的IP地址,并為Internet連接提供一些安全機(jī)制。
當(dāng)內(nèi)部用戶與一個(gè)公共主機(jī)通信時(shí),NAT追蹤是哪一個(gè)用戶作的請(qǐng)求,修改傳出的包,這樣包就像是來自單一的公共IP地址,然后再打開連接。一旦建立了連接,在內(nèi)部計(jì)算機(jī)和Web站點(diǎn)之間來回流動(dòng)的通信就都是透明的了。
當(dāng)從公共網(wǎng)絡(luò)傳來一個(gè)未經(jīng)請(qǐng)求的傳入連接時(shí),NAT有一套規(guī)則來決定如何處理它。如果沒有事先定義好的規(guī)則,NAT只是簡(jiǎn)單的丟棄所有未經(jīng)請(qǐng)求的傳入連接,就像包過濾防火墻所做的那樣。
可是,就像對(duì)包過濾防火墻一樣,你可以將NAT配置為接受某些特定端口傳來的傳入連接,并將它們送到一個(gè)特定的主機(jī)地址。
5.個(gè)人防火墻
現(xiàn)在網(wǎng)絡(luò)上流傳著很多的個(gè)人防火墻軟件,它是應(yīng)用程序級(jí)的。個(gè)人防火墻是一種能夠保護(hù)個(gè)人計(jì)算機(jī)系統(tǒng)安全的軟件,它可以直接在用戶的計(jì)算機(jī)上運(yùn)行,使用與狀態(tài)/動(dòng)態(tài)檢測(cè)防火墻相同的方式,保護(hù)一臺(tái)計(jì)算機(jī)免受攻擊。通常,這些防火墻是安裝在計(jì)算機(jī)網(wǎng)絡(luò)接口的較低級(jí)別上,使得它們可以監(jiān)視傳入傳出網(wǎng)卡的所有網(wǎng)絡(luò)通信。
一旦安裝上個(gè)人防火墻,就可以把它設(shè)置成“學(xué)習(xí)模式”,這樣的話,對(duì)遇到的每一種新的網(wǎng)絡(luò)通信,個(gè)人防火墻都會(huì)提示用戶一次,詢問如何處理那種通信。然后個(gè)人防火墻便記住響應(yīng)方式,并應(yīng)用于以后遇到的相同那種網(wǎng)絡(luò)通信。
例如,如果用戶已經(jīng)安裝了一臺(tái)個(gè)人Web服務(wù)器,個(gè)人防火墻可能將第一個(gè)傳入的Web連接作上標(biāo)志,并詢問用戶是否允許它通過。用戶可能允許所有的Web連接、來自某些特定IP地址范圍的連接等,個(gè)人防火墻然后把這條規(guī)則應(yīng)用于所有傳入的Web連接。
基本上,你可以將個(gè)人防火墻想象成在用戶計(jì)算機(jī)上建立了一個(gè)虛擬網(wǎng)絡(luò)接口。不再是計(jì)算機(jī)的操作系統(tǒng)直接通過網(wǎng)卡進(jìn)行通信,而是以操作系統(tǒng)通過和個(gè)人防火墻對(duì)話,仔細(xì)檢查網(wǎng)絡(luò)通信,然后再通過網(wǎng)卡通信。