近日有讀者提問:你能解釋一下硬件防火墻與軟件防火墻有什么區(qū)別嗎?據(jù)我所知,幾乎所有的路由器都隨帶內(nèi)置防火墻,是不是說我確實也需要在自己的個人電腦上安裝防火墻軟件?
答復(fù)如下:在典型的家庭辦公室環(huán)境下,硬件防火墻和軟件防火墻可以執(zhí)行互為補充的功能;結(jié)合使用可以提供比單獨使用更有力的保護。
先來說說硬件防火墻。
硬件防火墻很重要,因為它們提供了第一道防線,可以抵御來自外界的幾種常見類型的攻擊。另外,它們一般幾乎不用什么配置就能起到很好的效果,可以保護本地網(wǎng)絡(luò)上的每臺機器。
典型寬帶路由器中的硬件防火墻使用一項名為數(shù)據(jù)包過濾的技術(shù),這項技術(shù)可以分析數(shù)據(jù)包報頭,確定其源地址和目的地址。這些信息與一組預(yù)先定義的規(guī)則及/或用戶定義的規(guī)則進行比對,確定該數(shù)據(jù)包是不是合法的,因而再確定是允許進入還是拒之門外。
一種更先進的技術(shù)名為狀態(tài)數(shù)據(jù)包檢測(SPI),它會檢查數(shù)據(jù)包的另外特點,比如數(shù)據(jù)包的性質(zhì)和實際來源(也就是說該數(shù)據(jù)來自互聯(lián)網(wǎng)還是來自本地網(wǎng)絡(luò))、入站流量是不是現(xiàn)有出站連接(如網(wǎng)頁請求)的響應(yīng)。
簡而言之,寬帶路由器中的硬件防火墻主要負責(zé)阻止外面的不良流量進入。這種防火墻的局限性在于,它通常把從本地網(wǎng)絡(luò)傳送到互聯(lián)網(wǎng)的各種流量也當(dāng)作是安全的,這有時候是個問題。
不妨考慮這種情形:你打開了一封電子郵件,或者訪問一個網(wǎng)站,里面含有一個隱藏的惡意程序,目的在于偷偷把自己植入到你的機器上(或者騙你安裝它),然后通過互聯(lián)網(wǎng)把信息發(fā)送出去--此舉可能是為了竊取你的個人數(shù)據(jù),也可能是將你的機器當(dāng)作分布式拒絕服務(wù)(DDoS)攻擊的僵尸機器。目前這是一種最常見的感染方法。
由于這類程序生成的流量貌似合法(畢竟它來自你的網(wǎng)絡(luò)內(nèi)部),一般會被允許離開網(wǎng)絡(luò)。如果硬件防火墻經(jīng)配置后,可以阻止經(jīng)由惡意程序使用的某個或某些TCP/IP端口傳輸?shù)某稣玖髁浚涂梢宰柚箰阂饬髁?但是考慮到可能使用的端口有65000多個,無法確信這種性質(zhì)的程序可能會使用哪些端口,所以阻止合適端口的可能性就微乎其微。
此外,阻止端口還阻止了在你的任何聯(lián)網(wǎng)個人電腦上運行的合法程序使用這些端口。比如說,如果硬件防火墻阻止了旨在從你的機器生成和發(fā)送垃圾電子郵件的某個惡意軟件,同時也就阻止了使用微軟Outlook或Mozilla Thunderbird的功能(因為它們都生成同一種流量:經(jīng)由端口25傳輸?shù)腟MTP流量)。
再來說說軟件防火墻的優(yōu)點。
這時候軟件防火墻的優(yōu)點正好可以彌補硬件防火墻的不足。由于軟件防火墻直接在計算機上運行,它勢必能夠了解關(guān)于網(wǎng)絡(luò)流量的更多情況,而不是只了解使用哪個端口、流量去向哪里;它還知道哪個程序試圖訪問互聯(lián)網(wǎng),該程序是合法程序還是惡意程序(軟件防火墻會查詢定期更新的數(shù)據(jù)庫,來確定這一點)。
根據(jù)這些信息,軟件防火墻可以允許或禁止程序收發(fā)數(shù)據(jù)的功能。如果防火墻對于該程序的性質(zhì)不太確定,就會提示用戶進一步確認,之后才允許流量通過。
簡而言之,軟件防火墻能夠更深入地檢查惡意流量,及時攔截,以免它離開你的計算機。
軟件防火墻的主要缺點在于,它們只能保護安裝了軟件防火墻的機器, 所以要用軟件防火墻來保護多臺計算機,必須購買多套軟件防火墻(或多個許可證),安裝到每一臺機器上,并逐一配置。這樣一來成本可能很高,管理起來也有難度,不過許多面向企業(yè)的防火墻軟件的確提供了集中安裝和管理的功能。
值得一提的是,Windows 7和Vista中的內(nèi)置防火墻在默認情況下不會自動阻止出站流量,它們只會阻止入站流量。這是考慮使用第三方防火墻的原因之一,因為第三方防火墻在默認情況下一般就能處理入站流量和出站流量。(你得手動配置Windows防火墻來阻止出站流量,但對用戶來說不是很方便。)
這里有一個好辦法可以概括硬件防火墻與軟件防火墻之間的區(qū)別。不妨把硬件防火墻當(dāng)成是夜總會的看門人,他手持名單檢查每個來者的身份,確保他們收到了邀請函。另一方面,軟件防火墻就好比是安保人員,確保沒有人偷偷溜進來,在里面搞些不適宜的活動,同時確保沒人把什么東西偷偷帶出去。