廉龍穎+王希斌+劉文強+陳榮麗



[摘要]
為了解決網絡安全實驗受到硬件條件和虛擬化技術限制的問題,設計實現了基于OpenStack的網絡安全實驗平臺。該平臺采用抽象分層模式,通過整合實驗項目設計虛擬網絡拓撲結構,并在OpenStack中使用SDN網絡虛擬化技術搭建。通過教學實踐表明,該平臺具有真實性、可編程性、隔離性和擴展性等特點,為用戶提供了一個良好的網絡安全實驗教學環境,具有一定的研究和應用價值。
[關鍵詞]OpenStack;虛擬網絡;網絡安全;實驗平臺
[中圖分類號]G642.0[文獻標識碼]A[文章編號]1005-4634(2015)02-0095-05
0引言
網絡安全課程是計算機專業的一門專業主干課程。實驗教學是本門課程的重要環節,是培養學生實踐能力和創新意識的重要手段[1]。目前,各高校的網絡安全實驗基本采用兩種方式來搭建網絡攻防環境:(1)基于硬件設備搭建真實網絡; (2)基于VMware搭建虛擬網絡[2]。網絡安全實驗涉及到各種網絡設備,需要構建特定的、復雜的網絡拓撲結構,實驗以攻防為主,具有一定的攻擊性和破壞性。采用方式一構建真實網絡,受到實驗室的硬件資源限制,存在成本高、易癱瘓等問題;采用方式二構建虛擬網絡,受到虛擬化技術限制,VMware允許用戶創建自己的虛擬機,但無法虛擬其它網絡設備,存在虛擬網絡設備不足、網絡環境簡單等問題[3-5]。由此可見,采用以上兩種方式搭建實驗平臺,都不能完全滿足網絡安全實驗的需求,實驗環境的構建成為阻礙網絡安全教學的一大因素,搭建新型網絡安全實驗平臺具有重要意義。
為了解決網絡安全實驗需求與網絡環境限制這一矛盾,黑龍江科技大學展開相關研究,搭建了基于OpenStack的網絡安全實驗平臺。該平臺提供了真實的、隔離的、可擴展的、可編程的實驗環境,并實現虛擬資源的統一管理。該平臺已在黑龍江科技大學投入使用,并應用于網絡安全課程教學中,支持網絡安全創新實驗。
1基于OpenStack的網絡安全實驗平臺
設計與搭建
實驗平臺采用抽象分層模式,根據網絡安全實驗項目,設計一個可滿足實驗需求的網絡拓撲結構,使用SDN網絡虛擬化技術在OpenStack中完成實驗平臺搭建。
1.1實驗平臺結構設計
實驗平臺按照資源、管控和應用三個方面進行抽象,自下而上進行分層的結構設計,將復雜的平臺設計簡單化。采用抽象分層的設計模式,邏輯上進行集中管理和控制,可使實驗用戶從復雜的實驗環境配置中分離出來,實現個性化定制實驗網絡拓撲結構[6-8]。
實驗平臺抽象為3層結構:面向底層虛擬化的硬件資源管理層,面向OpenStack的網絡虛擬化層,以及面向用戶的實驗應用層。經過抽象分層后,實驗平臺結構如圖1所示。實驗用戶注冊后,申請實驗資源,將用戶的需求轉化為虛擬網絡拓撲描述語言,傳遞給網絡虛擬化層。網絡虛擬化層根據硬件資源使用情況和用戶提出的實驗資源申請,生成滿足用戶需求的虛擬網絡,并通過映射來完成對虛擬節點的配置,并反饋給用戶,用戶即可在平臺中進行實驗。
1.2實驗平臺拓撲結構設計
網絡安全實驗教學內容主要包括攻擊和防御兩部分,攻擊實驗項目包括:代理跳板隱藏IP、掃描服務器漏洞、暴力破解工作主機的SAM數據庫、遠程入侵Web服務器、遠程入侵數據庫服務器、DDoS攻擊等;防御實驗項目包括:防火墻配置、DDoS攻擊檢測、漏洞補丁、數據備份與恢復、數據加密等。
整合攻防實驗項目所需的網絡環境,設計實驗平臺中虛擬網絡拓撲結構,如圖2所示,搭建出一個完整的網絡安全實驗場景。在實驗場景拓撲圖中,整個實驗網絡劃分為公司內網和外網,其中公司內網由內網(net1)與非軍事化保護區DMZ(net2)組成。net1包含網絡管理服務器server1、數據庫服務器server2、密鑰服務器server3、網絡管理員主機pc1和工作人員主機pc2。net2包含Web服務器server4、郵件服務器server5、FTP服務器server6、DNS服務器server7和入侵檢測系統IDS。外網中包含攻擊者主機pc3和普通用戶主機pc4。內網通過交換機S1與F1相連,防火墻F1和F2之間為DMZ區,外網通過路由器R1和防火墻F2相連。
圖2實驗場景拓撲圖
1.3實驗平臺搭建
在OpenStack中使用SDN網絡虛擬化技術,通過Neutron組件來創建和配置虛擬網絡,實現網絡安全實驗平臺搭建。
虛擬網絡是指采用網絡虛擬化技術,在底層物理設施之上,將虛擬節點與虛擬鏈路進行邏輯連接的虛擬拓撲集合[9-11]。SDN是一種新興的基于軟件的網絡架構及技術,SDN的一個重要價值是實現網絡虛擬化。
開源云計算管理平臺OpenStack工作在SDN應用層。首先,在其網絡資源管理組件中增加Neutron組件,然后使用Neutron組件提供的虛擬網絡、子網、端口抽象等API,分別創建虛擬網絡、路由器、負載均衡等各種網絡節點,最后根據實驗需求對虛擬節點進行配置和管理,最終完成創建圖2所示的虛擬網絡拓撲,實現網絡安全實驗平臺的搭建[12]。
在OpenStack中使用SDN虛擬化技術搭建實驗平臺的優勢如下。
1)在SDN虛擬網絡中,虛擬機的增加、刪除、遷移等都不依賴于物理設備,更不需要對物理網絡做任何修改,所有的網絡設備創建、改動等操作都由軟件來定義。
2)可模擬真實的網絡環境搭建虛擬網絡拓撲,實現網絡安全防御功能,比如負載均衡、防火墻、VPN等。
3)支持用戶自定義虛擬網絡,網絡規則和控制策略。因此,利用SDN虛擬化技術搭建網絡安全實驗平臺,具有良好的可擴展性、實現真實網絡環境和深度可編程性等優點,完全能夠滿足網絡安全實驗需求[13-15]。
1.4實驗平臺特點
1)真實性。實驗平臺由軟件定義的虛擬網絡構建,能夠反映網絡實際運行狀況,營造真實的網絡環境,實驗中的代碼幾乎可以無縫遷移到真實的硬件環境中。
2)可編程性。實驗平臺采用SDN網絡虛擬化技術,可以保障實驗平臺的可編程性。在結構上,支持用戶根據實驗虛求自定義網絡拓撲結構;在應用上,支持用戶自定義各種網絡安全配置。
3)隔離性。實驗平臺在OpenStack中運行,支持不同實驗共享虛擬網絡資源,支持多個實驗并行開展,保證不同實驗流量的互不影響和有效隔離。
4)可擴展性。實驗平臺采用抽象分層的模式,提供標準化的管理接口,方便軟硬件的移植和擴展。
2實驗流程
用戶(學生或教師)在實驗平臺中進行網絡安全實驗之前,需要注冊并通過平臺管理員審核。審核通過后,用戶提交資源使用申請,管理員按照實驗項目進行資源分配。項目申請通過后,用戶在實驗網絡中進行創建鏡像、設計協議、配置虛擬節點等操作,完成后即可進行實驗。實驗流程如圖3所示。
圖3實驗流程
3網絡安全實驗教學
實驗平臺已在黑龍江科技大學網絡安全實驗教學中得到具體應用,下面僅以防火墻配置實驗項目中一個任務作為實例演示。本實驗任務要求學生通過linux下的iptables工具配置流表規則,完成在pc1中配置禁止SSH數據包的過濾服務。通過本實驗,了解控制器與防火墻之間的消息交換流程,理解基于OpenFlow防火墻的工作原理。在實驗中,學生可在實驗場景拓撲結構中,選擇pc1作為OpenFlow控制器,pc2作為用戶主機A,pc4作為用戶主機B,s1作為OpenFlow交換機,該實驗的網絡拓撲圖如圖4所示。學生在實驗網絡中利用OpenFlow協議中的流表項構建ACL,實現防火墻功能,并使用Wireshark網絡封包分析軟件抓取數據包。
圖4防火墻實驗虛擬網絡拓撲圖
3.1實驗原理
主機A和主機B之間經過OpenFlow交換機進行通信,主機A向交換機發出訪問主機B的請求,如果該請求在交換機中無匹配的轉發規則,則轉發該請求數據包的副本到OpenFlow控制器,控制器的防火墻應用模塊進行訪問策略檢查,并且將響應結果返回給交換機,如果交換機收到規則“來自主機A的數據包可以被發送給主機B”,則交換機響應主機A的請求,數據從主機A轉發到交換機,再從交換機轉發到主機B。在使用SDN虛擬化技術構建的虛擬實驗網絡中,防火墻以反應模式進行工作,控制部分作為一個程序應用轉移到控制器中,轉發部分則駐留在交換機中。
3.2實驗操作
實驗要求防火墻實現禁止SSH數據包的過濾服務,SSH 是建立在應用層和傳輸層基礎上的安全協議,使用TCP協議,默認監聽端口為22。因此,本實驗需要關閉所有TCP端口22的訪問,流表項形式的防火墻ACL如圖5所示。
1)清除原有規則。iptables-F 清除預設表filter中的所有規則鏈的規則;iptables-X 清除預設表filter中使用者自定鏈中的規則。
2)關閉ssh服務,默認端口號為22:iptables-A INPUT-p tcp-dport 22-j DROP;iptables-A OUTPUT-p tcp-sport 22-j DROP。
至此,通過防火墻實驗項目中一個簡單任務案例,詳細的介紹了基于OpenStack的網絡安全實驗的過程,驗證了使用OpenStack平臺搭建虛擬網絡實驗環境,進行網絡安全實驗教學的可行性。
4結束語
課題組分析了常用的網絡安全實驗環境構建方案的不足,提出了基于OpenStack的網絡安全實驗教學平臺設計方案。該平臺采用抽象分層模式,通過整合網絡安全實驗項目設計網絡拓撲結構,在OpenStack中采用SDN網絡虛擬化技術創建虛擬網絡,搭建出具有真實性、可編程性、隔離性和可擴展性的網絡安全實驗平臺。通過在黑龍江科技大學網絡安全實驗教學中的應用,發現該平臺完全能夠滿足網絡安全課程實驗環境需求,并且可以推廣到其它網絡相關課程的實驗教學中。
目前,基于OpenStack的網絡安全實驗平臺僅提供實驗應用,未來進一步的開發工作將集中在如下2個方面:(1)提供更高性能的實驗環境構建,即支持大規模網絡拓撲的快速和自動化部署;(2)提供實時監測功能,對實驗中的關鍵節點進行實時數據、流量和狀態監測。今后將擴大該平臺的應用部署范圍,加強實踐應用和改進,使該平臺成為具有廣泛認同度的網絡安全實驗平臺。
參考文獻
[1] ?吳迪,薛政,潘嶸.基于XEN云平臺的網絡安全實驗教學[J].實驗室研究與探索,2013,32(7):62-66.
[2] 姚青.網絡虛擬化的關鍵技術研究[D].南京:南京郵電大學,2013.
[3] 史景慧.網絡安全虛擬實驗系統的設計與實踐[D].北京:北京郵電大學,2012.
[4] 王芳,李勇,周燁.基于分層抽象思想的虛擬化網絡實驗平臺設計[J].清華大學學報:自然科學版,2012,52(11):1535-1539.
[5] 周燁,李勇,王芳.基于OpenFlow的網絡實驗平臺技術[J].清華大學學報:自然科學版,2012,52(11):1540-1544.
[6] 汪淵,楊槐,朱安國.基于插件的網絡攻防訓練模擬系統設計與實現[J].計算機技術與發展,2010,20(7):172-174.
[7] 翟繼強,陳宜冬.虛擬網絡安全實驗平臺[J].實驗室研究與探索,2009,28(6):79-82.
[8] 康辰,朱志祥.基于云計算技術的網絡攻防實驗平臺[J].西安郵電大學學報,2013,18(3):87-91.
[9] N K Chowdhury,R Boutaba.Network virtualization:state of the art and research challenges[J],JEEE Communieations Magazine. 2009,47(7):20-26.
[10] Wen H,Tiwary P K,Le-Ngoc T.Network Virtualization Technologies and Techniques[M]. New York:Springer International Publishing,2013:25-40.
[11] Bonner S,Pulley C,Kureshi I,et al. Using OpenStack to improve student experience in an HE environment[C].Science and Information Conference (SAI). IEEE,2013:888-893.
[12] 龔宇,李帥,李勇.基于云計算的網絡創新實驗平臺[J].計算機工程,2012,38(24):5-13.
[13] Hua Q. Using virtual machine technology to establish Network Security teaching platform[C].Electronics, Computer and Applications, 2014: 707-709.
[14] Braga R, Mota E, Passito A. Lightweight DDoS flooding attack detection using NOX/OpenFlow[C].Local Computer Networks (LCN), 2010 IEEE 35th Conference, 2010: 408-415.
[15] Corradi A, Fanelli M, Foschini L. VM consolidation:a real case based on openstack cloud[J]. Future Generation Computer Systems, 2014, 32: 118-127.
OpenStack-based experimental platform for network security
LIAN Long-ying,WANG Xi-bin,LIU Wen-qiang,CHEN Rong-li
(School of Computer and Information Engineering,Heilongjiang University of Science
and Technology,Harbin,Heilongjiang150022,China)
AbstractIn order to solve the problem of limitation of hardware conditions and virtualization technology for network security experiment,OpenStack-based experimental platform for network security is designed and implemented.The platform adopts the abstract hierarchical pattern,through integrating experimental project to design virtual network topology,and uses SDN network virtualization technology to build the experimental platform in OpenStack.Teaching practice indicates that the platform possesses the features of authenticity,programmability,isolation and expandability,it can provide a good network security experiment teaching environment for users and possess certain research and application value.
Key wordsOpenStack;virtual network;network security;experimental platform