董春華
LINUX防火墻系統的設計過程中,采用模塊化設計,該設計思想相對來說易于操作、也易于后面的擴展。系統由各個模塊組成,系統運行的優劣取決于各模塊的性能。因此做好每一個模塊的功能設計是整個防火墻良好應用的基礎。下面主要闡述各模塊的主要功能:
1、包過濾模塊的功能:包過濾模塊檢測數據包,每個包有兩個部分:數據部分和包頭。過濾規則以用于工P順行處理的包頭信息為基礎,不理會包內的正文信息內容。包頭信息包括:IP源地址、IP目的地址、封裝協議,TCP/UDP源端口、ICMP包類型、包輸入接口和包輸出接口。如果找到一個匹配,且規則允許這包,這一包則根據路由表中的信息前行。如果找到一個匹配,且規則拒絕此包,這一包則被舍棄。如果無匹配規則,一個用戶配置的缺省參數將決定此包是前行還是被舍棄。
2、狀態檢測模塊的功能:防火墻近幾年才應用的新技術模塊。傳統的包過濾防火墻只是通過檢測工P包頭的相關信息來決定數據流的通過還是拒絕,而狀態檢測技術采用的是一種基于連接的狀態檢測機制,將屬于同一連接的所有包作為一個整體的數據流看待,構成連接狀態表,通過規則表與狀態表的共同配合,對表中的各個連接狀態因素加以識別。這里動態連接狀態表中的記錄可以是以前的通信信息,也可以是其他相關應用程序的信息,因此,與傳統包過濾防火墻的靜態過濾規則表相比,它具有更好的靈活性和安全性。先進的狀態檢測防火墻讀取、分析和利用了全面的網絡通信信息和通信狀態。
3、地址轉換模塊的功能:主要實現靜態網絡地址轉換、動態網絡地址轉換、反向網絡地址轉換、端口重定向的功能。基本網絡地址轉換(Basic NAT)是一種將一組IP地址映射到另一組工P地址的技術,這對終端用戶來說是透明的。網絡地址端口轉換是一種將群體網絡地址及其對應TCP/UDP端口翻譯成單個網絡地址及其對應TCP/UDP端口的方法。這兩種操作,即傳統NAT提供了一種機制,將只有私有地址的內部領域連接到有全球唯一注冊地址的外部領域。
4、身份驗證模塊的功能:是防火墻策略的一個不可或缺的部分。雖然規則可以應用于IP地址,但是通常僅允許訪問已使用專門配置的身份驗證機制對自身進行了身份驗證的特定用戶。身份驗證對于傳入請求(即來自目標的請求)和傳出請求都很有意義。如果防火墻客戶端所請求的內容不是HTTP,ISA服務器將確定是否配置了適用于特定用戶或組的相應規則。對于傳出的Web請求,應針對用戶所在的特定網絡配置身份驗證。對于防火墻客戶端,ISA服務器在建立會話時要求提供憑據。然后,當防火墻客戶端請求對象時,ISA服務器并不要求客戶端重新進行身份驗證,因為會話已具有身份。當配置適用于用戶(而不是IP地址)的訪問規則時,必須至少指定一種身份驗證機制,以便發出請求的用戶可以真正地證明自己的身份。否則,將拒絕所有請求。可以同時在Web偵聽器上使用下列身份驗證機制:基本、摘要、集成以及客戶端證書身份驗證。選定后,RADIUS,SecurID或基于窗體的身份驗證方法必須是所配置的唯一的身份驗證機制。當使用HTTPS時,客戶端證書身份驗證是首選的身份驗證機制,它優先于選定的其他任何身份驗證機制。只有在客戶端使用客戶端證書進行身份驗證失敗時,才使用其他的身份驗證機制。
LINUX作為一個開放源代碼的操作系統,其最大的優點是可以根據自己的需要來定制,從而獲得最好系統性能。因此在我們的設計中需要對LINUX內核進行改造,充分發揮系統的潛能,最大限度地提高防火墻的可用性和有效性。
以上就是我們對于各個模塊設計的設想,其功能在上述分析中已有所體現。具體的功能將在后續的設計和測試中體現出來。
一、系統模塊設計的基本思想
模塊化設計是目前各種設計的主流思想。模塊化設計,便于把一項大的復雜的工作簡單化。本設計也采用這種思想來對LINUX防火墻進行設計。采用這種思想可以在大型設計任務中多人共同合作,保證各人工作的銜接有效性,提高設計效率,同時使整個系統易于管理和維護,當系統中某一部分出現問題時只需要將該部分進行拆卸和修理。
二、防火墻系統的軟件設計
本文主要是根據某單位的實際情況,把防火墻系統分為Web管理模塊、轉換模塊、內部處理模塊和內核模塊四個模塊。如圖1所示。
從上圖中可以看出,本防火墻系統的程序有兩個觸發入口,分別是防火墻啟動或重啟時觸發和正在運行或進行用戶信息管理時觸發。
三、防火墻系統的硬件設計
從前面的分析中可以看到,我們在設計LINUX防火墻時,要考慮到系統的成本,各種環境因素以及硬件的穩定性和安全性,同時在設計的過程中,還要注意盡量減少設備的體積,降低功耗。因此在設計時要做到對防火墻的配置文件的設計,磁盤的使用情況問題和注意到CPU的負載問題,對系統的應用程序、系統文件及日志進行備份和做常規性的檢查,雖然并不能立刻檢查到硬件防火墻可能遇到的所有問題和隱患,但持之以恒地檢查對硬件防火墻穩定可靠地運行是非常重要的。同時可以用數據包掃描程序來確認硬件防火墻配置的正確與否,甚至可以更進一步地采用漏洞掃描程序來進行模擬攻擊,以考核硬件防火墻的能力。設計時,把軟件系統以及裁減后的LINUX核心、文件系統寫入flash中,這樣可以有效的避免將要執行的程序從硬盤上調入內存中再執行,從而提高了防火墻的執行效率。
參考文獻:
[1]韓東海.入侵檢測系統實例剖析[M].清華大學出版社,2012.
[2]劉正海.基于嵌入式LINUX防火墻的研究與實現[D].重慶工業大學碩士學位論文,2007.
[3]朱革媚.網絡安全與新型防火墻技術[J].計算機工程與設計,2011(01).