网络安全:包过滤防火墙和代理防火墙(应用网关防火墙)
一. 背景
????? 如今計算機安全最嚴重的威脅之一就是惡意用戶或軟件通過網絡對計算機系統的入侵或攻擊,加密技術并不能阻止植入了 “特洛伊木馬” 的計算機系統通過網絡向攻擊者泄露秘密信息,因此需要部署防火墻來保護個人或者企業的網絡安全。
用戶入侵包括:利用系統漏洞進行未授權登錄,或者授權用戶獲得更高級別的權限等。
軟件入侵的方式包括:(1)網絡傳播病毒、蠕蟲和特洛伊木馬。
???????????????????????????????????????? (2)阻止合法用戶正常使用服務的拒絕服務攻擊(DoS)
二. 防火墻
????? 最為常用的兩種防火墻是代理防火墻(proxy firewall ) 和包過濾防火墻(packet-filter)。它們的主要區別是所操作的協議棧的層次,以及由此決定的IP地址和端口號的使用是不同的。簡單來說,包過濾防火墻是一個互聯網路由器,能夠丟棄符合或者不符合特定條件的數據包。而代理防火墻是一個多宿主的服務器主機,它是TCP和UDP傳輸關聯的終點,通常不會再IP協議層中路由IP數據報。
1.包過濾防火墻
(1)包過濾防火墻的結構
????? 下圖是一個典型的包過濾防火墻,IGSA是全功能安全網關,DMZ是英文“demilitarized zone”的縮寫,中文名稱為“隔離區”,也稱“非軍事化區”。它是為了解決安裝防火墻后外部網絡的訪問用戶不能訪問內部網絡服務器的問題,而設立的一個非安全系統與安全系統之間的緩沖區。該緩沖區位于企業內部網絡和外部網絡之間的小網絡區域內。在這個小網絡區域內可以放置一些必須公開的服務器設施,如企業Web服務器、FTP服務器和Mail服務器等。另一方面,通過這樣一個DMZ區域,更加有效地保護了內部網絡。
?????
防火墻作IP路由器位于一個內網和Inernet之間,只允許特定的流量通過。一種常見的配置是允許所有內網到外網的流量通過,但相反的方向只允許小部分的流量。當使用一個DMZ時,只允許從Internet訪問其中的某些特定服務。
(2)包過濾防火墻的過濾規則
????? 包過濾防火墻是一種特殊編程的路由器,能夠過濾(丟棄)網絡流量。它們一般都可以配置為丟棄或轉發數據包頭中符合或者不符合標準的數據包,這些標準稱為過濾器。
簡單的過濾器包括網絡層或傳輸層報頭中各個部分的范圍比較。最流行的過濾器包括IP地址或者選項、ICMP報文的類型,以及根據數據包中端口號確定的各種UDP或TCP服務。網絡管理員回安裝過濾器或者訪問控制列表(Access Control List,ACL),配置ACL后,可以限制網絡流量,允許特定設備訪問,指定轉發特定端口數據包等。如可以配置ACL,禁止局域網內的設備訪問外部公共網絡,或者只能使用FTP服務。ACL既可以在路由器上配置,也可以在具有ACL功能的業務軟件上進行配置。
????? 包過濾防火墻既可以是無狀態的,即獨立處理每一個分組。也可以是有狀態的,即要跟蹤每個連接或會話的通信狀態。
無狀態的包過濾防火墻:最簡單的包過濾防火墻都是無狀態的,它單獨處理每一個數據報。
有狀態的包過濾防火墻:能夠通過關聯已經或者即將到達的數據包來推斷流或者數據報的信息,即那些屬于同一個傳輸關聯的數據包或構成同一個IP數據報的IP分片。IP分片使得防火墻的工作變得更加復雜,無狀態的包過濾防火墻極易被其混淆。
2.代理防火墻
(1)代理防火墻的原理
???? 代理防火墻并不是真正意義上的互聯網路由器,它是一個運行一個或多個應用層網關(Application-Layer Gateways, ALG)的主機,也叫應用網關防火墻,該主機有多個網絡接口,能夠在應用層中繼兩個連接之間的特定類型的流量。它通常不像路由器那樣做IP轉發,但現如今也出現了結合了各種功能的更復雜的代理防火墻。
????? 所以進出網絡的應用程序報文都必須通過應用網關。當某應用客戶進程向服務器發送一份請求報文時,先發送給應用網關,應用網關在應用層打開該報文,查看該請求是否合法(可根據應用層用戶標識ID或其他應用層信息來確定)。如果請求合法,應用網關以客戶進程的身份將請求報文轉發給原始服務器。如果不合法,報文則被丟棄。例如,一個郵件網關在檢查每一個郵件時,根據郵件地址,或郵件的其他首部,甚至是報文的內容(如,有沒有“核彈頭”,“導彈”等敏感詞)來確定該郵件能否通過防火墻。
????? 雖然這種類型的防火墻是很安全的,但它是以脆性和缺乏靈活性為代價的,因為這種類型的防火墻必須為每個傳輸層服務設置一個代理,任何要使用新服務必須安裝一個相應的代理,并通過該代理來操作發起連接。每個應用都需要一個不同的應用網關(可以運行在同一臺主機上)。其次,在應用層轉發和處理報文,處理負擔比較重。另外,對應用程序不透明,需要在應用程序客戶端配置應用網關地址。
(2)兩種常見的代理防火墻
????? 第一種是HTTP代理防火墻,也稱為Web代理,只能用于HTTP和HTTPS協議(Web),這些代理對于內網用戶來說就像是Web服務器,對于被訪問的外部網站來說就像是Web客戶端。這種代理往往提供Web緩存功能。這些緩存保存網頁的副本,以便以后訪問可以直接從緩存中獲取,而不再訪問原始的服務器,從而減少網頁的延遲。一些Web代理也經常被用來當做過濾器,能夠基于“黑名單”來阻止用戶訪問某些網站。
????? 第二種是基于SOCKS協議的防火墻,目前socks有兩個版本:第4版為代理傳輸提供了基本的支持,第5版增加了強大的認證,UDP傳輸和IPv6尋址。為使用SOCKS代理,應用程序開發時必須添加SOCKS代理支持功能,同時配置應用程序能夠獲知代理的位置和版本。一旦配置完成,客戶端使用SOCKS協議請求代理進行網絡連接,也可以選擇性的進行DNS查找。
????? QQ登錄的SOCKS代理:
總結
以上是生活随笔為你收集整理的网络安全:包过滤防火墙和代理防火墙(应用网关防火墙)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java有参构造_java的有参构造有什
- 下一篇: P3386 【模板】二分图最大匹配