簡單了解防火墻
防火墻和路由器一樣,工作在OSI的網絡層,防火墻也被稱為防護墻,它是一種位于內部網絡與外部網絡之間的網絡安全系統,可以將內部網絡和外部網絡隔離。通常,防火墻可以保護內部/私有局域網免受外部攻擊,并防止重要數據泄露。
在沒有防火墻的情況下,路由器會在內部網絡和外部網絡之間盲目傳遞流量且沒有過濾機制,而防火墻技術的功能主要在于及時發現并處理計算機網絡運行時可能存在的安全風險、數據傳輸等問題,其中處理措施包括隔離與保護,同時可對計算機網絡安全當中的各項操作實施記錄與檢測,以確保計算機網絡運行的安全性,保障用戶資料與信息的完整性,為用戶提供更好、更安全的計算機網絡使用體驗。
防火墻較于路由器,主要多了安全策略,應用層網關以及基于session來轉發數據包

防火墻基本部署
除了將內網與外部Internet隔離之外,防火墻還可以將局域網中的普通數據和重要數據進行分離,所以也可以避免內部入侵。

內網隔離
防火墻的工作原理
防火墻有硬件防火墻和軟件防火墻兩種類型,硬件防火墻允許通過端口的傳輸控制協議(TCP)或用戶數據報協議(UDP)來定義阻塞規則,例如:可以禁止不必要的端口和IP地址的訪問。軟件防火墻就像互聯內部網絡和外部網絡的代理服務器,它可以讓內部網絡不直接與外部網絡進行通信,但是很多企業和數據中心會將這兩種類型的防火墻進行結合,主要是因為這樣做可以更加有效地提升網絡的安全性。
防火墻的分類
包過濾防火墻
包過濾防火墻控制OSI的三、四層,一般是通過ACL來匹配數據包內容,以決定哪些包被允許和哪些包被拒絕。
優點:
- 能以很快的速度處理數據包
- 易于匹配絕大多數的3、4層報頭信息
缺點:
- ACL過多導致配置復雜
- 不能阻止應用層的攻擊
- 不能檢測和阻止某些類型的TCP/IP攻擊,比如TCP SYN泛洪和IP欺騙
狀態檢測防火墻
控制OSI的三、四、五層
狀態檢測防火墻工作在數據鏈路層和網絡層之間,對于新建的應用連接,它從這里截取數據包提取出的信息,并根據對應的安全策略及過濾規則處理數據包,生成狀態表,這樣防火墻確保了截取和檢查所有通過網絡的原始數據包。然后將相關信息組合起來,進行一些邏輯或數學運算,獲得相應的結論,進行相應的操作,如允許數據包通過、拒絕數據包、認證連接,加密數據等。狀態檢測防火墻雖然工作在協議棧較低層,但它檢測所有應用層的數據包,從中提取有用信息,如IP地址、端口號等,這樣安全性得到很大提高。另外在這種防火墻中一旦一個連接建立起來,就不用再對這個連接做更多工作,系統可以去處理別的連接,執行效率明顯提高。
狀態檢測防火墻實現了基于UDP應用的安全,通過在UDP通信之上保持一個虛擬連接來實現。防火墻保存通過網關的每一個連接的狀態信息,允許穿過防火墻的UDP請求包被記錄,當UDP包在相反方向上通過時,依據連接狀態表確定該UDP包是否被授權的,若已被授權,則通過,否則拒絕。如果在指定的一段時間內響應數據包沒有到達,連接超時,則該連接被阻塞,這樣所有的攻擊都被阻塞。狀態檢測防火墻可以控制無效連接的連接時間,避免大量的無效連接占用過多的網絡資源,可以很好的降低DOS和DDoS攻擊的風險。

狀態檢測防火墻規則
缺點:
狀態檢測防火墻雖然繼承了包過濾防火墻和應用網關防火墻的優點,克服了它們的缺點,但它仍只是檢測數據包的第三層信息,無法徹底的識別數據包中大量的垃圾郵件、廣告以及木馬程序等。
應用網關防火墻
控制OSI的三、四、五、七層
能截獲用戶的初始化連接請求,并發送給用戶一個認證信息的請求
所以進出網絡的應用程序報文都必須通過應用網關。當某應用客戶進程向服務器發送一份請求報文時,先發送給應用網關,應用網關在應用層打開該報文,查看該請求是否合法(可根據應用層用戶標識ID或其他應用層信息來確定)。如果請求合法,應用網關以客戶進程的身份將請求報文轉發給原始服務器。如果不合法,報文則被丟棄。例如,一個郵件網關在檢查每一個郵件時,根據郵件地址,或郵件的其他首部,甚至是報文的內容(如有沒有"哈哈","呵呵"等自定義敏感詞)來確定該郵件能否通過防火墻。
雖然這種類型的防火墻是很安全的,但因為這種類型的防火墻必須為每個傳輸層服務設置一個代理,任何要使用新服務必須安裝一個相應的代理,并通過該代理來操作發起連接。每個應用都需要一個不同的應用網關(可以運行在同一臺主機上)。其次在應用層轉發和處理報文,處理負擔比較重。另外,對應用程序不透明,需要在應用程序客戶端配置應用網關地址。