


收稿日期:2024-01-27
基金項目:2022年嘉興職業技術學院訪問工程師校企合作項目(嘉職人〔2022〕93號)
DOI:10.19850/j.cnki.2096-4706.2024.07.032
摘? 要:軟件定義網絡(SDN)作為新的網絡技術,能很好地滿足現在對網絡規模和性能的要求。為了進一步提升SDN網絡的安全性,文章對SDN網絡的防火墻系統進行了研究,利用控制平面與數據平面分離的特點,采用控制平面對網絡集中進行實時監控與網絡管理,在SDN控制器中實現數據包過濾與入侵監測,通過自定義數據轉發和安全策略,實現集中式安全控制,最終實現網絡安全性能提升。
關鍵詞:網絡安全;軟件定義網絡;防火墻系統;數據包過濾;入侵監測
中圖分類號:TP311? ? 文獻標識碼:A? ? 文章編號:2096-4706(2024)07-0161-05
Design and Implementation of Firewall System Based on SDN Network
WANG Yuting
(College of Internet, Jiaxing Vocational & Technical College, Jiaxing? 314036, China)
Abstract: Software Defined Networking (SDN), as a new network technology, can well meet the current requirements for network size and performance. In order to further enhance the security protection for SDN network, this paper studies the firewall system of SDN network. By utilizing the separation characteristic of control plane and data plane, the control plane is used for real-time monitoring and network management of the network. The data packet filtering and intrusion monitoring are implemented in the SDN controller. By customizing data forwarding and security policies, centralized security control is achieved, ultimately improving network security performance.
Keywords: network security; SDN; firewall system; data packet filtering; intrusion monitoring
0? 引? 言
隨著大數據、云計算、物聯網等技術的興起,網絡技術得到了進一步的發展,人們對網絡的需求越來越大,對網絡的要求也越來越高,因此網絡發展面臨著巨大挑戰。同時網絡安全的理念日益深入人心,對網絡安全的重視程度也在加強,也對網絡安全性能進一步提出了更高要求。防火墻技術作為重要的網絡安全機制,部署在網絡邊緣,能有效地區隔內外網,保護私有網絡免受非法攻擊。但傳統網絡設備以封閉硬件形態交付,軟硬件強耦合,在傳統架構上進行防火墻部署受硬件影響,缺乏靈活性也難以進行二次開發,不能很好地滿足現在對網絡軟件化、自動化、協作化、智能化的要求[1]。網絡中引入新的網絡架構——軟件定義網絡(Software Defined Network, SDN)以適應網絡發展要求并克服傳統網絡中存在的弊端[2],SDN網絡具有可協同、軟件可編程、具有開放接口的特點,可以很好地實現軟硬件分離,數據平面與控制平面解耦,改變傳統網絡安全防護體系,數據平面中的網絡設備(如路由器、交換機等)僅執行控制平面下發的防火墻策略,而控制平面實現防火墻策略部署,能夠對網絡進行網絡全局監控和集中控制,實現安全策略的靈活部署和集中控制,有效提升網絡防護效率。
本文將設計一種基于SDN網絡的防火墻系統,通過控制平面集中收集網絡信息,并自定義傳輸路由規則和防火墻策略規則,實現對網絡安全策略的靈活部署與集中管理,能有效地對網絡進行安全管理并提升網絡防護效率。
1? 基于SDN網絡的防火墻系統
1.1? SDN網絡
軟件定義網絡SDN是由美國斯坦福大學Clean-Slate課題研究組最先提出,是一種基于OpenFlow技術的新型網絡創新架構[3],能夠有效實現網絡虛擬化。網絡結構由原本的分布式控制轉變為集中控制。該架構下將控制與轉發分離,實現網絡的轉控分離、集中控制、開放接口三個主要特征[4]。SDN網絡框架如圖1所示,由轉發設備和鏈路構成基礎轉發網絡,位于SDN網絡架構的轉發層,主要負責執行用戶數據的轉發,而控制層生成在轉發過程中需要的轉發表項,并通過OpenFlow協議由南向接口下發。控制層是整個網絡的控制中心,負責收集網絡信息,實現鏈路發現、拓撲管理、策略制定、表項下發等支持SDN網絡運行的基本操作[5]。應用層則是能承載體現用戶意志的上層用戶應用。
1.2? 防火墻技術
防火墻常被部署在網絡邊緣,如在企業內部網絡和不可信的外部公共網絡間[6],是一種常見的網絡安全保障措施,通過實施相關的安全策略(如允許、拒絕、監視、記錄)來保護網絡免受外界的干擾和破壞,從而確保網絡安全。防火墻結構如圖2所示,防火墻位于網絡邊緣,隔離需保護的內部網絡與外部公共網絡,對經過防火墻的每一個數據包均進行判斷,允許通過合法的數據,否則將丟棄數據,從而實現對網絡保護的作用。
按照防火墻的工作模式進行分類,防火墻技術可以分為包過濾防火墻、狀態檢測防火墻等[7]。包過濾防火墻是一種重要的防火墻技術,又稱分組過濾路由器或網絡層防火墻,主要工作于網絡層,一般以路由器作為網絡防火墻設備,過濾規則是在設備中預先設定的,將檢測數據包與過濾規則進行匹配,主要檢測地址、協議、端口等信息,通過匹配結果決定是否允許數據包通過,通常將過濾方式分為靜態和動態兩種。
包過濾防火墻簡單、有效,可以實現對網絡的保護和對網絡流量的控制,但該技術不對數據包內容進行分析檢測,無法實現復雜的控制,也容易被攻擊者繞過。
1.3? SDN網絡防火墻與傳統網絡防火墻對比
傳統網絡防火墻基本由硬件制造商制定相應防火墻策略,受硬件限制,難以根據用戶需求設置自定義策略,缺乏擴展性和靈活度,網絡的二次開發難度較大,當網絡中多地需要進行防火墻部署時,受分布式控制網絡結構影響會造成網絡管理困難。與傳統網絡防火墻相比,SDN網絡防火墻得益于軟硬件解耦以及集中控制的網絡結構,能通過控制層對網絡進行全局監控,收集網絡實時流量情況,并能根據收集到的網絡情況進行防火墻規則的集中設計,同時自定義傳輸數據的路由規則和策略規則,具有靈活性,改變網絡防護體系,提升網絡防護效率。
2? 系統設計
2.1? 基于SDN網絡的防火墻系統設計
基于SDN網絡的防火墻網絡部署圖如圖3所示,該結構下網絡部署與傳統網絡不同,傳統網絡需在廣域網與內部網絡之間部署防火墻設備,將防火墻策略設置在防火墻設備上,防火墻策略與設備存在強耦合關系,如果需要對多地進行防火墻管理則需部署多個防火墻設備。但在SDN網絡防火墻結構中可以在SDN控制器上集中部署防火墻策略,該控制器能夠對網絡中流量等信息進行實時監控,并通過數據流表的形式將安全策略下發給交換機等設備,交換機設備僅需執行SDN控制器的策略即可實現相應防火墻功能,在該部署情況下防火墻策略和傳輸策略等均可實現自定義,具有集中控制和靈活性,對多地的防火墻管理均可通過統一的控制器實現,能有效地提升網絡防護和數據傳輸效率。
基于SDN網絡的防火墻系統框架如圖4所示,系統主要由數據層和控制層兩部分組成。轉發層由網絡設備(如OpenFlow交換機等)組成,主要負責執行控制層制定的防火墻策略、轉發數據包以及對網絡流量的監控[8]。SDN控制器采用下發數據流表的方式對轉發層設備進行管理[9]。數據流表分為轉發流表和安全控制流表,轉發流表實現網絡二層轉發功能,通過相應信息(如MAC地址信息、設備端口號等)明確數據轉發路徑。安全控制流表則根據轉發層設備上傳的網絡流量信息對網絡情況進行分析,并下發對應網絡安全策略,根據該策略轉發層網絡設備進行策略執行。控制層由SDN控制器組成,主要負責根據網絡情況制定防火墻策略、進行網絡流量監控、網絡日志管理、拓撲發現等。控制層實現防火墻策略有:1)數據包過濾:部署過濾規則,設置允許或拒絕的數據包源的信息(如源地址、目的地址、端口號、協議類型等),通過該策略規則實現數據包篩選;2)入侵監測:根據數據包狀態及特征來判斷是否有網絡攻擊等。
2.2? 防火墻策略設計
在SDN網絡中控制層包含安全策略模塊,該模塊配置防火墻規則以及入侵監測。SDN控制器以主動方式下發流表項對轉發層設備進行管理,在產生新的防火墻規則時,則會通過OpenFlow流表轉發給網絡設備從而實現規則更新[10]。
包過濾防火墻對經過的數據包進行管理,管理依據為包過濾規則,防火墻規則如圖5所示,其中NW_SRC表示數據包源IP地址,NW_DST表示數據包目標IP地址,NW_PROTO表示協議類型,STATUS表示執行動作(允許或拒絕),RULE_ID表示規則ID。
包過濾防火墻工作流程如圖6所示,防火墻以事件為驅動,當監聽到有事件時則會主動按照規則構建防火墻規則,構造完成的防火墻規則會進一步構造為流表項,再通過OpenFlow協議下發給轉發層網絡設備,網絡設備根據規則對經過數據包執行相應操作。
SDN網絡中入侵監測也是其防火墻系統的重要組成部分,入侵監測流程如圖7所示。當有數據流輸入時,控制器會抓取數據包并對數據進行預處理,處理后的數據流會跟事先定義的規則庫進行比對,當數據流監測到正常數據流經過時則允許通過,但當被監測數據流為攻擊數據時則通過流表下發至設備拒絕數據通過并更新對應規則。
3? 實驗與結果
3.1? 實驗環境
本實驗使用MININET作為網絡仿真平臺來搭建SDN網絡架構,控制器采用RYU,防火墻策略運行在SDN控制器上,控制器主要負責策略的制定與下發,OpenFlow交換機作為網絡的主要組成單元,負責安全策略的執行。操作系統為Ubuntu 16.04。實驗網絡拓撲如圖8所示,其中c0為集中控制器,掌握網絡拓撲結構以及各鏈路數據傳輸速率等,集中管理整個網絡,根據網絡區域制定合適的安全策略,s1為OpenFlow交換機,負責執行SDN控制器制定的安全策略,允許或拒絕數據包的通過,h1~h3為網絡用戶,網絡結構通常存在一個非軍事區(Demilitarized Zone, DMZ),該區域主要用來解決外網設備需要對內網用戶的訪問,在實驗網絡結構中,h1用戶處于DMZ區域,h2和h3用戶處于內網區域。
3.2? 實驗結果
實驗網絡搭建結果如圖9所示,通過MININET實現SDN控制器、OpenFlow交換機以及3個網絡用戶構建,h1用戶處設置Web服務器對外端口為80,h1和h2將運行包過濾防火墻,對經過的數據包進行篩選,h3將運行入侵監測開啟對經過h3數據的檢測。
圖10是防火墻運行情況,實驗結果顯示在該網絡結構下構建防火墻成功,c0為控制器負責防火墻策略制定,s1為OpenFlow交換機負責防火墻策略執行。
用戶h1處于DMZ區域,用戶h2處于內網,通過在h1~h2之間增加包過濾防火墻,允許h1與h2之間通過ICMP數據包,用戶間的防火墻策略如圖11所示,在兩個用戶間增加允許通過的防火墻策略后,如圖12所示,可以發現h1和h2用戶可以執行ping指令。
用戶h1位于DMZ區域,DMZ區域設置的目的是為了解決部署防火墻以后外網無法對內網進行訪問的問題,是設立在安全區域與非安全區域之間的緩沖,圖13結果顯示在h1上部署了服務器,服務器對外端口為80,在h1上設立了包過濾防火墻允許外網用戶訪問DMZ區域的服務器。
用戶h3位于內網區域,對目標地址為h3的數據進行入侵監測,當數據流為正常時數據通過,否則將拒絕數據通過,如圖14所示對目標地址為h3的數據開啟監測功能。
4? 結? 論
本文使用新型網絡架構SDN網絡,采用集中控制式網絡,通過SDN控制器對網絡進行全局監控,實時收集網絡情況,并根據情況制定合適的防火墻策略,通過OpenFlow協議將數據轉發和安全控制流表下發至交換機等網絡設備,網絡設備對防火墻策略進行執行,該方案下設計的防火墻策略有包過濾規則和入侵監測,能夠對用戶進行有效保護,有利于構建新型的網絡安全防護體系,滿足網絡發展需求。
參考文獻:
[1] 甘興龍.綜合網管系統中多agent模型與結構的研究和實現 [D].北京:北京交通大學,2009.
[2] 高東松.基于SDN控制器和流量調度的負載均衡策略研究 [D].合肥:安徽大學,2022.
[3] 何亨,蔣俊君,宋亞州.面向創新人才培養的《軟件定義網絡》課程建設研究 [J].創新創業理論研究與實踐,2020,3(19):42-44.
[4] 陳松.基于SDN的故障檢測及恢復研究 [D].東營:中國石油大學(華東),2019.
[5] 王瑞雪.面向數據中心的軟件定義網絡技術研究 [D].北京:北京交通大學,2017.
[6] 董宏勇.網絡信息安全的管理與隱患防范研究 [D].呼和浩特:內蒙古大學,2011.
[7] 徐強.基于正則匹配和支持向量機的Web應用防火墻研究 [D].太原:中北大學,2019.
[8] 宋姝雨.基于軟件定義安全的防火墻系統設計與實現 [D].杭州:浙江大學,2020.
[9] 周亞球,任勇毛,李琢,等.基于SDN的科學DMZ研究與實現 [J].信息網絡安全,2019(9):134-138.
[10] 龔燕波,劉瑛,陳健林.基于OpenFlow流表的云網絡異常行為主動監測和處理 [J].電信工程技術與標準化,2019,32(7):34-39.
作者簡介:王玉婷(1991—),女,漢族,安徽池州人,助教,碩士,研究方向:大數據技術、5G技術。