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