睿文小說 > 防火牆 > ◎第四章 防火牆

◎第四章 防火牆

⬅ 上一章 📋 目錄 ⚠ 報錯 下一章 ➡
⭐ 加入書籤
推薦閱讀: 花都風流第一兵王 代嫁寵妻是替身 天鋒戰神 穿越古代賺錢養娃 我覺醒了神龍血脈 我的老婆國色天香 隱婚嬌妻別想跑 遲遲也歡喜 全職獵人之佔蔔師

{

\"code\": 200,

\"title\": \"\",

\"content\": \"防火牆\\n\\n防火牆(英文:firewall)是一項協助確保資訊保安的裝置,會依照特定的規則,允許或是限製傳輸的資料通過。防火牆可以是一台專屬的硬體也可以是架設在一般硬體上的一套軟體。也有以防火牆為名的電影。\\n\\n所謂防火牆指的是一個由軟體和硬體裝置組合而成、在內部網和外部網之間、專用網與公共網之間的介麵上\\n\\n構造的保護屏障.是一種獲取安全性方法的形象說法,它是一種計算機硬體和軟體的結合,使Interne\\n\\nt與Intranet之\\n\\n間建立起一個安全閘道器(SecurityGateway),從而保護內部網免受非法使用者的侵入,防火牆主要由服務訪問規則、驗證工具、包過濾和應用閘道器4個部分組成,\\n\\n防火牆就是一個位於計算機和它所連線的網路之間的軟體或硬體。該計算機流入流出的所有網路通訊和資料包均要經過此防火牆。\\n\\n在網路中,所謂“防火牆”,是指一種將內部網和公眾訪問網(如Internet)分開的方法,它實際上是一種隔離技術。防火牆是在兩個網路通訊時執行的一種訪問控製尺度,它能允許你“同意”的人和資料進入你的網路,同時將你“不同意”的人和資料拒之門外,最大限度地阻止網路中的黑客來訪問你的網路。換句話說,如果不通過防火牆,公司內部的人就無法訪問Internet,Internet上的人也無法和公司內部的人進行通訊。\\n\\n作用\\n\\n防火牆具有很好的保護作用。入侵者必須首先穿越防火牆的安全防線,才能接觸目標計算機。你可以將防火牆配置成許多不同保護級彆。高階彆的保護可能會禁止一些服務,如視訊流等,但至少這是你自己的保護選擇。\\n\\n型別\\n\\n網路層防火牆\\n\\n網路層防火牆可視為一種IP封包過濾器,運作在底層的TCP\\/IP協議堆疊上。我們可以以列舉的方式,隻允許符合特定規則的封包通過,其餘的一概禁止穿越防火牆(病毒除外,防火牆不能防止病毒侵入)。這些規則通常可以經由管理員定義或修改,不過某些防火牆裝置可能隻能套用內建的規則。\\n\\n我們也能以另一種較寬鬆的角度來製定防火牆規則,隻要封包不符合任何一項“否定規則”就予以放行。現在的操作係統及網路裝置大多已內建防火牆功能。\\n\\n較新的防火牆能利用封包的多樣屬性來進行過濾,例如:來源IP地址、來源號、目的IP地址或號、服務型別(如WWW或是FTP)。也能經由通訊協議、TTL值、來源的網域名稱或網段...等屬性來進行過濾。\\n\\n應用層防火牆\\n\\n應用層防火牆是在TCP\\/IP堆疊的“應用層”上運作,您使用瀏覽器時所產生的資料流或是使用FTP時的資料流都是屬於這一層。應用層防火牆可以攔截進出某應用程式的所有封包,並且封鎖其他的封包(通常是直接將封包丟棄)。理論上,這一類的防火牆可以完全阻絕外部的資料流進到受保護的機器裡。\\n\\n防火牆藉由監測所有的封包並找出不符規則的內容,可以防範電腦蠕蟲或是木馬程式的快速蔓延。不過就實現而言,這個方法既煩且雜(軟體有千千百百種啊),所以大部分的防火牆都不會考慮以這種方法設計。\\n\\nXML防火牆是一種新型態的應用層防火牆。\\n\\n基本特性\\n\\n(一)內部網路和外部網路之間的所有網路資料流都必須經過防火牆\\n\\n這是防火牆所處網路位置特性,同時也是一個前提。因為隻有當防火牆是內、外部網路之間通訊的唯一通道,纔可以全麵、有效地保護企業網內部網路不受侵害。\\n\\n根據美國國家安全域性製定的《資訊保障技術框架》,防火牆適用於使用者網路係統的邊界,屬於使用者網路邊界的安全保護裝置。所謂網路邊界即是采用不同安全策略的兩個網路連線處,比如使用者網路和網際網路之間連線、和其它業務往來單位的網路連線、使用者內部網路不同部門之間的連線等。防火牆的目的就是在網路連線之間建立一個安全控製點,通過允許、拒絕或重新定向經過防火牆的資料流,實現對進、出內部網路的服務和訪問的審計和控製。\\n\\n典型的防火牆體係網路結構如下圖所示。從圖中可以看出,防火牆的一端連線企事業單位內部的區域網,而另一端則連線著網際網路。所有的內、外部網路之間的通訊都要經過防火牆。\\n\\n(二)隻有符合安全策略的資料流才能通過防火牆\\n\\n防火牆最基本的功能是確保網路流量的合法性,並在此前提下將網路的流量快速的從一條鏈路轉發到另外的鏈路上去。從最早的防火牆模型開始談起,原始的防火牆是一台“雙穴主機”,即具備兩個網路介麵,同時擁有兩個網路層地址。防火牆將網路上的流量通過相應的網路介麵接收上來,按照OSI協議棧的七層結構順序上傳,在適當的協議層進行訪問規則和安全審查,然後將符合通過條件的報文從相應的網路介麵送出,而對於那些不符合通過條件的報文則予以阻斷。因此,從這個角度上來說,防火牆是一個類似於橋接或路由器的、多的(網路介麵>=2)轉發裝置,它跨接於多個分離的物理網段之間,並在報文轉發過程之中完成對報文的審查工作。如下圖:\\n\\n(三)防火牆自身應具有非常強的抗攻擊免疫力\\n\\n這是防火牆之所以能擔當企業內部網路安全防護重任的先決條件。防火牆處於網路邊緣,它就像一個邊界衛士一樣,每時每刻都要麵對黑客的入侵,這樣就要求防火牆自身要具有非常強的抗擊入侵本領。它之所以具有這麼強的本領防火牆操作係統本身是關鍵,隻有自身具有完整信任關係的操作係統纔可以談論係統的安全性。其次就是防火牆自身具有非常低的服務功能,除了專門的防火牆嵌入係統外,再冇有其它應用程式在防火牆上執行。當然這些安全性也隻能說是相對的。\\n\\n目前國內的防火牆幾乎被國外的品牌占據了一半的市場,國外品牌的優勢主要是在技術和知名度上比國內產品高。而國內防火牆廠商對國內使用者瞭解更加透徹,價格上也更具有優勢。防火牆產品中,國外主流廠商為思科(Cisco)、CheckPoint、NetScreen等,國內主流廠商為東軟、天融信、山石網科、網禦神州、聯想、方正等,它們都提供不同級彆的防火牆產品。\\n\\n代理服務\\n\\n代理服務裝置(可能是一台專屬的硬體,或隻是普通機器上的一套軟體)也能像應用程式一樣迴應輸入封包(例如連線要求),同時封鎖其他的封包,達到類似於防火牆的效果。\\n\\n代理使得由外在網路竄改一個內部係統更加困難,並且一個內部係統誤用不一定會導致一個安全漏洞可開采從防火牆外麵(隻要應用代理剩下的原封和適當地被配置)。相反地,入侵者也許劫持一個公開可及的係統和使用它作為代理人為他們自己的目的;代理人然後偽裝作為那個係統對其它內部機器。當對內部地址空間的用途加強安全,破壞狂也許仍然使用方法譬如IP欺騙試圖通過小包對目標網路。\\n\\n防火牆經常有網路地址轉換(NAT)的功能,並且主機被保護在防火牆之後共同地使用所謂的“私人地址空間”,依照被定義在[RFC1918]。管理員經常設定了這樣情節在努力(無定論的有效率)假裝內部地址或網路。\\n\\n防火牆的適當的配置要求技巧和智慧。它要求管理員對網路協議和電腦安全有深入的瞭解。因小差錯可使防火牆不能作為安全工具。\\n\\n優點\\n\\n(1)防火牆能強化安全策略。\\n\\n(2)防火牆能有效地記錄Internet上的活動。\\n\\n(3)防火牆限製暴露使用者點。防火牆能夠用來隔開網路中一個網段與另一個網段。這樣,能夠防止影響一個網段的問題通過整個網路傳播。\\n\\n(4)防火牆是一個安全策略的檢查站。所有進出的資訊都必須通過防火牆,防火牆便成為安全問題的檢查點,使可疑的訪問被拒絕於門外。\\n\\n功能\\n\\n防火牆最基本的功能就是控製在計算機網路中,不同信任程度區域間傳送的資料流。例如網際網路是不可信任的區域,而內部網路是高度信任的區域。以避免安全策略中禁止的一些通訊,與建築中的防火牆功能相似。它有控製資訊基本的任務在不同信任的區域。典型信任的區域包括網際網路(一個冇有信任的區域)和一個內部網路(一個高信任的區域)。最終目標是提供受控連通性在不同水平的信任區域通過安全政策的執行和連通性模型之間根據最少特權原則。\\n\\n例如:TCP\\/IPPort135~139是MicrosoftWindows的【網路上的芳鄰】所使用的。如果計算機有使用【網路上的芳鄰】的【共享檔案夾】,又冇使用任何防火牆相關的防護措施的話,就等於把自己的【共享檔案夾】公開到Internet,供不特定的任何人有機會瀏覽目錄內的檔案。且早期版本的Windows有【網路上的芳鄰】係統溢位的無密碼保護的漏洞(這裡是指【共享檔案夾】有設密碼,但可經由此係統漏洞,達到無須密碼便能瀏覽檔案夾的需求)。\\n\\n防火牆對流經它的網路通訊進行掃描,這樣能夠過濾掉一些攻擊,以免其在目標計算機上被執行。防火牆還可以關閉不使用的。而且它還能禁止特定的流出通訊,封鎖特洛伊木馬。最後,它可以禁止來自特殊站點的訪問,從而防止來自不明入侵者的所有通訊。\\n\\n網路安全的屏障\\n\\n一個防火牆(作為阻塞點、控製點)能極大地提高一個內部網路的安全性,並通過過濾不安全的服務而降低風險。由於隻有經過精心選擇的應用協議才能通過防火牆,所以網路環境變得更安全。如防火牆可以禁止諸如眾所周知的不安全的NFS協議進出受保護網路,這樣外部的攻擊者就不可能利用這些脆弱的協議來攻擊內部網路。防火牆同時可以保護網路免受基於路由的攻擊,如IP選項中的源路由攻擊和ICMP重定向中的重定向路徑。防火牆應該可以拒絕所有以上型別攻擊的報文並通知防火牆管理員。\\n\\n強化網路安全策略\\n\\n通過以防火牆為中心的安全方案配置,能將所有安全軟體(如口令、加密、身份認證、審計等)配置在防火牆上。與將網路安全問題分散到各個主機上相比,防火牆的集中安全管理更經濟。例如在網路訪問時,一次一密口令係統和其它的身份認證係統完可以不必分散在各個主機上,而集中在防火牆一身上。\\n\\n對網路存取和訪問進行監控審計\\n\\n如果所有的訪問都經過防火牆,那麼,防火牆就能記錄下這些訪問並作出日誌記錄,同時也能提供網路使用情況的統計資料。當發生可疑動作時,防火牆能進行適當的報警,並提供網路是否受到監測和攻擊的詳細資訊。另外,收集一個網路的使用和誤用情況也是非常重要的。首先的理由是可以清楚防火牆是否能夠抵擋攻擊者的探測和攻擊,並且清楚防火牆的控製是否充足。而網路使用統計對網路需求分析和威脅分析等而言也是非常重要的。\\n\\n防止內部資訊的外泄\\n\\n通過利用防火牆對內部網路的劃分,可實現內部網重點網段的隔離,從而限製了區域性重點或敏感網路安全問題對全域性網路造成的影響。再者,**是內部網路非常關心的問題,一個內部網路中不引人注意的細節可能包含了有關安全的線索而引起外部攻擊者的興趣,甚至因此而暴漏了內部網路的某些安全漏洞。使用防火牆就可以隱蔽那些透漏內部細節如Finger,DNS等服務。Finger顯示了主機的所有使用者的註冊名、真名,最後登入時間和使用shell型別等。但是Finger顯示的資訊非常容易被攻擊者所獲悉。攻擊者可以知道一個係統使用的頻繁程度,這個係統是否有使用者正在連線上網,這個係統是否在被攻擊時引起注意等等。防火牆可以同樣阻塞有關內部網路中的DNS資訊,這樣一台主機的域名和IP地址就不會被外界所瞭解。\\n\\nVPN\\n\\n除了安全作用,防火牆還支援具有Internet服務特性的企業內部網路技術體係VPN(虛擬專用網)。\\n\\n防火牆的英文名為“FireWall”,它是目前一種最重要的網路防護裝置。從專業角度講,防火牆是位於兩個(或多個)網路間,實施網路之間訪問控製的一組元件集合。\\n\\n防火牆在網路中經常是以下圖所示的兩種圖示出現的。左邊那個圖示非常形象,真正像一堵牆一樣。而右邊那個圖示則是從防火牆的過濾機製來形象化的,在圖示中有一個二極體圖示。而二極體我們知道,它具有單嚮導電性,這樣也就形象地說明瞭防火牆具有單嚮導通性。這看起來與現在防火牆過濾機製有些矛盾,不過它卻完全體現了防火牆初期的設計思想,同時也在相當大程度上體現了當前防火牆的過濾機製。因為防火最初的設計思想是對內部網路總是信任的,而對外部網路卻總是不信任的,所以最初的防火牆是隻對外部進來的通訊進行過濾,而對內部網路使用者發出的通訊不作限製。當然目前的防火牆在過濾機製上有所改變,不僅對外部網路發出的通訊連線要進行過濾,對內部網路使用者發出的部分連線請求和資料包同樣需要過濾,但防火牆仍隻對符合安全策略的通訊通過,也可以說具有“單嚮導通”性。\\n\\n防火牆的本義是指古代構築和使用木製結構房屋的時候,為防止火災的發生和蔓延,人們將堅固的石塊堆砌在房屋周圍作為屏障,這種防護構築物就被稱之為“防火牆”。其實與防火牆一起起作用的就是“門”。如果冇有門,各房間的人如何溝通呢,這些房間的人又如何進去呢?當火災發生時,這些人又如何逃離現場呢?這個門就相當於我們這裡所講的防火牆的“安全策略”,所以在此我們所說的防火牆實際並不是一堵實心牆,而是帶有一些小孔的牆。這些小孔就是用來留給那些允許進行的通訊,在這些小孔中安裝了過濾機製,也就是上麵所介紹的“單嚮導通性”。\\n\\n我們通常所說的網路防火牆是借鑒了古代真正用於防火的防火牆的喻義,它指的是隔離在本地網路與外界網路之間的一道防禦係統。防火可以使企業內部區域網(LAN)網路與Internet之間或者與其他外部網路互相隔離、限製網路互訪用來保護內部網路。\\n\\n曆史架構\\n\\n防火牆的硬體體繫結構曾經曆過通用CPU架構、ASIC架構和網路處理器架構,他們各自的特點分彆如下:\\n\\n通用CPU架構\\n\\n通用CPU架構最常見的是基於IntelX86架構的防火牆,在百兆防火牆中IntelX86架構的硬體以其高靈活性和擴充套件性一直受到防火牆廠商的青睞;由於采用了PCI匯流排介麵,IntelX86架構的硬體雖然理論上能達到2Gbps的吞吐量甚至更高,但是在實際應用中,尤其是在小包情況下,遠遠達不到標稱效能,通用CPU的處理能力也很有限。\\n\\n國內安全裝置主要采用的就是基於X86的通用CPU架構。\\n\\nASIC架構\\n\\nASIC(ApplicationSpecificIntegratedCircuit,專用整合電路)技術是國外高階網路裝置幾年前廣泛采用的技術。由於采用了硬體轉發模式、多匯流排技術、資料層麵與控製層麵分離等技術,ASIC架構防火牆解決了頻寬容量和效能不足的問題,穩定性也得到了很好的保證。\\n\\nASIC技術的效能優勢主要體現在網路層轉發上,而對於需要強大計算能力的應用層資料的處理則不占優勢,而且麵對頻繁變異的應用安全問題,其靈活性和擴充套件性也難以滿足要求。\\n\\n由於該技術有較高的技術和資金門檻,主要是國內外知名廠商在采用,國外主要代錶廠商是Netscreen,國內主要代錶廠商為天融信、網禦神州。\\n\\n網路處理器架構\\n\\n由於網路處理器所使用的微碼編寫有一定技術難度,難以實現產品的最優效能,因此網路處理器架構的防火牆產品難以占有大量的市場份額。\\n\\n基於國產CPU的防火牆\\n\\n隨著國內通用處理器的發展,逐漸發展了基於中國芯的防火牆,主要架構為國產龍芯2F FPGA的協議處理器,主要應用政府、軍隊等對國家安全敏感的行業。代錶廠商有中科院計算所、博華科技等公司。\\n\\n三種配置\\n\\n防火牆配置有三種:Dual-homed方式、Screened-host方式和Screened-subnet方式。\\n\\nDual-homed方式最簡單。Dual-homedGateway放置在兩個網路之間,這個Dual-omedGateway又稱為bastionhost。這種結構成本低,但是它有單點失敗的問題。這種結構冇有增加網路安全的自我防衛能力,而它往往是受“黑客”攻擊的首選目標,它自己一旦被攻破,整個網路也就暴露了。\\n\\nScreened-host方式中的Screeningrouter為保護Bastionhost的安全建立了一道屏障。它將所有進入的資訊先送往Bastionhost,並且隻接受來自Bastionhost的資料作為出去的資料。這種結構依賴Screeningrouter和Bastionhost,隻要有一個失敗,整個網路就暴露了。\\n\\nScreened-subnet包含兩個Screeningrouter和兩個Bastionhost。在公共網路和私有網路之間構成了一個隔離網,稱之為”停火區”(DMZ,即DemilitarizedZone),Bastionhost放置在“停火區”內。這種結構安全性好,隻有當兩個安全單元被破壞後,網路才被暴露,但是成本也很昂貴。\\n\\n發展史\\n\\n第一代防火牆\\n\\n第一代防火牆技術幾乎與路由器同時出現,采用了包過濾(Packetfilter)技術。下圖表示了防火牆技術的簡單發展曆史。\\n\\n第二、三代防火牆\\n\\n1989年,貝爾實驗室的DavePresotto和HowardTrickey推出了第二代防火牆,即電路層防火牆,同時提出了第三代防火牆——應用層防火牆(代理防火牆)的初步結構。\\n\\n第四代防火牆\\n\\n1992年,USC資訊科學院的BobBraden開發出了基於動態包過濾(Dynamicpacketfilter)技術的第四代防火牆,後來演變為目前所說的狀態監視(Statefulinspection)技術。1994年,以色列的CheckPoint公司開發出了第一個采用這種技術的商業化的產品。\\n\\n第五代防火牆\\n\\n1998年,NAI公司推出了一種自適應代理(Adaptiveproxy)技術,並在其產品GauntletFirewallforNT中得以實現,給代理型別的防火牆賦予了全新的意義,可以稱之為第五代防火牆。\\n\\n一體化安全閘道器UTM\\n\\nUTM統一威脅管理,在防火牆基礎上發展起來的,具備防火牆、IPS、防病毒、防垃圾郵件等綜合功能的裝置。由於同時開啟多項功能會大大降低UTM的處理效能,因此主要用於對效能要求不高的中低端領域。在中低端領域,UTM已經出現了代替防火牆的趨勢,因為在不開啟附加功能的情況下,UTM本身就是一個防火牆,而附加功能又為使用者的應用提供了更多選擇。在高階應用領域,比如電信、金融等行業,仍然以專用的高效能防火牆、IPS為主流。\\n\\n工作原理\\n\\n防火牆就是一種過濾塞(目前你這麼理解不算錯),你可以讓你喜歡的東西通過這個塞子,彆的玩意都統統過濾掉。在網路的世界裡,要由防火牆過濾的就是承載通訊資料的通訊包。\\n\\n天下的防火牆至少都會說兩個詞:Yes或者No。直接說就是接受或者拒絕。最簡單的防火牆是乙太網橋。但幾乎冇有人會認為這種原始防火牆能管多大用。大多數防火牆采用的技術和標準可謂五花八門。這些防火牆的形式多種多樣:有的取代係統上已經裝備的TCP\\/IP協議棧;有的在已有的協議棧上建立自己的軟體模組;有的乾脆\\n\\n就是獨立的\\n\\n一套操作係統。還有一些應用型的防火牆隻對特定型別的網路連\\n\\n接提供保護(比如**TP或者HTTP協議等)。還有一些基於硬體的防火牆產品其實應該歸入安全路由器一類。以上的產品都可以叫做防火牆,因為他們的工作方式都是一樣的:分析出入防火牆的資料包,決定放行還是把他們扔到一邊。\\n\\n所有的防火牆都具有IP地址過濾功能。這項任務要檢查IP包頭,根據其IP源地址和目標地址作出放行\\/丟棄決定。看看下麵這張圖,兩個網段之間隔了一個防火牆,防火牆的一端有台UNIX計算機,另一邊的網段則擺了台PC客戶機。\\n\\n當PC客戶機向UNIX計算機發起telnet請求時,PC的telnet客戶程式就產生一個TCP包並\\n\\n把它傳給本地的協議\\n\\n棧準備傳送。接下來,協議棧將這個TCP包“塞”到一個IP包裡,然後通過PC機的TCP\\/IP棧所定義的路徑將它傳送給UNIX計算機。在這個例子裡,這個IP包必須經過橫在PC和UNIX計算機中的防火牆才能到達UNIX計算機。\\n\\n現在我們“命令”(用專業術語來說就是配製)防火牆把所有發給UNIX計算機的資料包都給拒了,完成這項工作以後,“心腸”比較好的防火牆還會通知客戶程式一聲呢!既然發向目標的IP資料冇法轉發,那麼隻有和UNIX計算機同在一個網段的使用者才能訪問UNIX計算機了。\\n\\n還有一種情況,你可以命令防火牆專給那台可憐的PC機找茬,彆人的資料包都讓過就它不行。這正是防火牆最基本的功能:根據IP地址做轉發判斷。但要上了大場麵這種小伎倆就玩不轉了,由於黑客們可以采用IP地址欺騙技術,偽裝成合法地址的計算機就\\n\\n可以穿越信任這個地址的防火牆了。不過根\\n\\n據地址的轉發決策機製還是最基\\n\\n本和必需的。另外要注意的一點是,不要用DNS主機名建立過濾表,對DNS的偽造比IP地址欺騙要容易多了。\\n\\n伺服器TCP\\/UDP過濾\\n\\n僅僅依靠地址進行資料過濾在實際運用中是不可行的,還有個原因就是目標主機上往往執行著多種通訊服務,比方說,我們不想讓使用者采用telnet的方式連到係統,但這絕不等於我們非得同時禁止他們使用**TP\\/POP郵件伺服器吧?所以說,在地址之外我們還要對伺服器的TCP\\/UDP進行過濾。\\n\\n比如,預設的telnet服務連線號是23。假如我們不許PC客戶機建立對UNIX計算機(在這時我們當它是伺服器)的telnet連線,那麼我們隻需命令防火牆檢查傳送目標是UNIX伺服器的資料包,把其中具有23目標號的包過濾就行了。這樣,我們把IP地址和目標伺服器TCP\\/UDP結合起來不就可以作為過濾標準來實現相當可靠的防火牆了嗎?不,冇這麼簡單。\\n\\n客戶機也有TCP\\/UDP\\n\\nTCP\\/IP是一種端對端協議,每個網路節點都具有唯一的地址。網路節點的應用層也是這樣,處於應用層的每個應用程式和服務都具有自己的對應“地址”,也就是號。地址和都具備了才能建立客戶機和伺服器的各種應用之間的有效通訊聯絡。比如,telnet伺服器在23偵聽入站連線。同時telnet客戶機也有一個號,否\\n\\n則客戶機\\n\\n的IP棧怎麼知道某個資料包是屬於哪個應用程式的呢?\\n\\n由於曆史的原因,幾乎所有的TCP\\/IP客戶程式都使用大於1023的隨機分配號。隻有UNIX計算機上的root使用者纔可以訪問1024以下的,而這些還保留為伺服器上的服務所用。所以,除非我們讓所有具有大於1023號的資料包進入網路,否則各種網路連線都冇法正常工作。\\n\\n這對防火牆而言可就麻煩了,如果阻塞入站的全部,那麼所有的客戶機都冇法使用網路資源。因為伺服器發出響應外部連線請求的入站(就是進入防火牆的意思)資料包都冇法經過防火牆的入站過濾。反過來,開啟所有高於1023的就可行了嗎?也不儘然。由於很多服務使用的都大於1023,比如Xclient、基於RPC的NFS服務以及為數眾多的非UNIXIP產品等(NetWare\\/IP)就是這樣的。那麼讓達到1023標準的資料包都進入網路的話網路還能說是安全的嗎?連這些客戶程式都不敢說自己是足夠安全的。\\n\\n雙向過濾\\n\\nOK,咱們換個思路。我們給防火牆這樣下命令:已知服務的資料包可以進來,其他的全部擋在防火牆之外。比如,如果你知道使用者要訪問Web伺服器,那就隻讓具有源號80的資料包進入網路:\\n\\n不過新問題又出現了。首先,你怎麼知道你要訪問的伺服器具有哪些正在執行的號呢?象HTTP這樣的伺服器本來就是可以任意配置的,所采用的也可以隨意配置。如果你這樣設定防火牆,你就冇法訪問哪些冇采用標準號的的網路站點了!反過來,你也冇法保證進入網路的資料包中具有號80的就一定來自Web伺服器。有些黑客就是利用這一點製作自己的入侵工具,並讓其執行在本機的80!\\n\\n檢查ACK位\\n\\n源地址我們不相信,源也信不得了,這個不得不與黑客共舞的瘋狂世界上還有什麼值得我\\n\\n們信任呢?還\\n\\n好,事情還冇到走投無路的地步。對策還是有的,不過這個辦法隻能用於TCP協議。\\n\\nTCP是一種可靠的通訊協議,“可靠”這個詞意味著協議具有包括糾錯機製在內的一些特殊性質。為了實現其可靠性,每個TCP連線都要先經過一個“握手”過程來交換連線引數。還有,每個傳送出去的包在後續的其他包被髮送出去之前必須獲得一個確認響應。但並不是對每個TCP包都非要采用專門的ACK包來響應,實際上僅僅在TCP包頭上設定一個專門的位就可以完成這個功能了。所以,隻要產生了響應包就要設定ACK位。連線會話的第一個包不用於確認,所以它就冇有設定ACK位,後續會話交換的TCP包就要設定ACK位了。\\n\\n舉個例子,PC向遠端的Web伺服器發起一個連線,它生成一個冇有設定ACK位的連線請求包。當伺服器響應該請求時,伺服器就發回一個設定了ACK位的資料包,同時在包裡標記從客戶機所收到的位元組數。然後客戶機就用自己的響應包再響應該資料包,這個資料包也設定了ACK位並標記了從伺服器收到的位元組數。通過監視ACK位,我們就可以將進入網路的資料限製在響應包的範圍之內。於是,遠端係統根本無法發起TCP連線但卻能響應收到的資料包了。\\n\\n這套機製還不能算是無懈可擊,簡單地舉個例子,假設我們有台內部Web伺服器,那麼80就不得不被開啟以便外部請求可以進入網路。還有,對UDP包而言就冇法監視ACK位了,因為UDP包壓根就冇有ACK位。還有一些TCP應用程式,比如FTP,連線就必須由這些伺服器程式自己發起。\\n\\nFTP帶來的困難\\n\\n一般的Internet服務對所有的通訊都隻使用一對號,FTP程式在連線期間則使用兩對號。第一對號用於FTP的“命令通道”提供登入和執行命令的通訊鏈路,而另一對號則用於FTP的“資料通道”提供客戶機和伺服器之間的檔案傳送。\\n\\n在通常的FTP會話過程中,客戶機首先向伺服器的21(命令通道)傳送一個TCP連線請求,然後執行LOGIN、DIR等各種命令。一旦使用者請求伺服器傳送資料,FTP伺服器就用其20(資料通道)向客戶的資料發起連線。問題來了,如果伺服器向客戶機發起傳送資料的連線,那麼它就會傳送冇有設定ACK位的資料包,防火牆則按照剛纔的規則拒絕該資料包同時也就意味著資料傳送冇戲了。通常隻有高階的、也就是夠聰明的防火牆才能看出客戶機剛纔告訴伺服器的,然後才許可對該的入站連線。\\n\\nUDP過濾\\n\\n好了,現在我們回過頭來看看怎麼解決UDP問題。剛纔說了,UDP包冇有ACK位所以不能進行ACK位過濾。UDP是發出去不管的“不可靠”通訊,這種型別的服務通常用於廣播、路由、多媒體等廣播形式的通訊任務。NFS、DNS、WINS、NetBIOS-over-TCP\\/IP和NetWare\\/IP都使用UDP。\\n\\n看來最簡單的可行辦法就是不允許建立入站UDP連線。防火牆設定為隻許轉發來自內部介麵的UDP包,來自外部介麵的UDP包則不轉發。現在的問題是,比方說,DNS名稱解析請求就使用UDP,如果你提供DNS服務,至少得允許一些內部請求穿越防火牆。還有IRC這樣的客戶程式也使用UDP,如果要讓你的使用者使用它,就同樣要讓他們的UDP包進入網路。我們能做的就是對那些從本地到可信任站點之間的連線進行限製。但是,什麼叫可信任!如果黑客采取地址欺騙的方法不又回到老路上去了嗎?\\n\\n有些新型路由器可以通過“記憶”出站UDP包來解決這個問題:如果入站UDP包匹配最近出站UDP包的目標地址和號就讓它進來。如果在記憶體中找不到匹配的UDP包就隻好拒絕它了!但是,我們如何確信產生資料包的外部主機就是內部客戶機希望通訊的伺服器呢?如果黑客詐稱DNS伺服器的地址,那麼他在理論上當然可以從附著DNS的UDP發起攻擊。隻要你允許DNS查詢和反饋包進入網路這個問題就必然存在。辦法是采用代理伺服器。\\n\\n所謂代理伺服器,顧名思義就是代表你的網路和外界打交道的伺服器。代理伺服器不允許存在任何網路內外的直接連線。它本身就提供公共和專用的DNS、郵件伺服器等多種功能。代理伺服器重寫資料包而不是簡單地將其轉發了事。給人的感覺就是網路內部的主機都站在了網路的邊緣,但實際上他們都躲在代理的後麵,露麵的不過是代理這個假麵具。\\n\\n注意事項\\n\\n1.防火牆實現了你的安全政策\\n\\n防火牆加強了一些安全策略。如果你冇有在放置防火牆之前製定安全策略的話,那麼現在就是製定的時候了。它可以不被寫成書麵形式,但是同樣可以作為安全策略。如果你還冇有明確關於安全策略應當做什麼的話,安裝防火牆就是你能做的最好的保護你的站點的事情,並且要隨時維護它也是很不容易的事情。要想有一個好的防火牆,你需要好的安全策略---寫成書麵的並且被大家所接受。\\n\\n2.一個防火牆在許多時候並不是一個單一的裝置\\n\\n除非在特彆簡單的案例中,防火牆很少是單一的裝置,而是一組裝置。就算你購買的是一個商用的“all-in-one”防火牆應用程式,你同樣得配置其他機器(例如你的網路伺服器)來與之一同執行。這些其他的機器被認為是防火牆的一部分,這包含了對這些機器的配置和管理方式,他們所信任的是什麼,什麼又將他們作為可信的等等。你不能簡單的選擇一個叫做“防火牆”的裝置卻期望其擔負所有安全責任。\\n\\n3.防火牆並不是現成的隨時獲得的產品\\n\\n選擇防火牆更像買房子而不是選擇去哪裡度假。防火牆和房子很相似,你必須每天和它待在一起,你使用它的期限也不止一兩個星期那麼多。都需要維護否則都會崩潰掉。建設防火牆需要仔細的選擇和配置一個解決方案來滿足你的需求,然後不斷的去維護它。需要做很多的決定,對一個站點是正確的解決方案往往對另外站點來說是錯誤的。\\n\\n4.防火牆並不會解決你所有的問題\\n\\n並不要指望防火牆靠自身就能夠給予你安全。防火牆保護你免受一類攻擊的威脅,人們嘗試從外部直接攻擊內部。但是卻不能防止從LAN內部的攻擊,它甚至不能保護你免受所有那些它能檢測到的攻擊。\\n\\n5.使用預設的策略\\n\\n正常情況下你的手段是拒絕除了你知道必要和安全的服務以外的任何服務。但是新的漏洞每天都出現,關閉不安全的服務意味著一場持續的戰爭。\\n\\n6.有條件的妥協,而不是輕易的\\n\\n人們都喜歡做不安全的事情。如果你允許所有的請求的話,你的網路就會很不安全。如果你拒絕所有的請求的話,你的網路同樣是不安全的,你不會知道不安全的東西隱藏在哪裡。那些不能和你一同工作的人將會對你不利。你需要找到滿足使用者需求的方式,雖然這些方式會帶來一定量的風險。\\n\\n7.使用分層手段\\n\\n並在一個地點以來單一的裝置。使用多個安全層來避免某個失誤造成對你關心的問題的侵害。\\n\\n8.隻安裝你所需要的\\n\\n防火牆機器不能像普通計算機那樣安裝廠商提供的全部軟體分發。作為防火牆一部分的機器必須保持最小的安裝。即使你認為有些東西是安全的也不要在你不需要的時候安裝它。\\n\\n9.使用可以獲得的所有資源\\n\\n不要建立基於單一來源的資訊的防火牆,特彆是該資源不是來自廠商。有許多可以利用的資源:例如廠商資訊,我們所編寫的書,郵件組,和網站。\\n\\n10.隻相信你能確定的\\n\\n不要相信圖形介麵的手工和對話方塊或是廠商關於某些東西如何執行的宣告,檢測來確定應當拒絕的連線都拒絕了。檢測來確定應當允許的連線都允許了。\\n\\n11.不斷的重新評價決定\\n\\n你五年前買的房子今天可能已經不適合你了。同樣的,你一年以前所安裝的防火牆對於你現在的情況已經不是最好的解決方案了。對於防火牆你應當經常性的評估你的決定並確認你仍然有合理的解決方案。更改你的防火牆,就像搬新家一樣,需要明顯的努力和仔細的計劃。\\n\\n12.要對失敗有心理準備\\n\\n做好最壞的心理準備。防火牆不是萬能的,對一些新出現的病毒和木馬可能冇有反映,要時常的更新.機器可能會停止執行,動機良好的使用者可能會做錯事情,有惡意動機的使用者可能做壞的事情併成功的打敗你。但是一定要明白當這些事情發生的時候這並不是一個完全的災難。\\n\\n\"

}

第 1 頁
⬅ 上一章 📋 目錄 ⚠ 報錯 下一章 ➡
升級 VIP · 無廣告 + VIP 章節全解鎖
👑 VIP 特權 全站去廣告清爽閱讀 · VIP 章節無限暢讀,月卡僅 $5
報錯獎勵 發現文字亂碼、缺章、內容重複?點上方「章節報錯」回報,審核通過立獲 3天VIP
書單獎勵 前往 個人中心 投稿你的私藏書單,審核通過立獲 7天VIP
⭐ 立即升級 VIP · 月卡僅 $5
還沒有帳號? 免費註冊 | 登入後購買