基于OpenStack的网络安全实验平台

2015-06-16 20:01廉龙颖王希斌刘文强陈荣丽
教学研究 2015年2期
关键词:实验平台网络安全

廉龙颖+王希斌+刘文强+陈荣丽

[摘要]

为了解决网络安全实验受到硬件条件和虚拟化技术限制的问题,设计实现了基于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

猜你喜欢
实验平台网络安全
邯郸市档案馆积极开展网络安全宣传教育
全国多地联动2020年国家网络安全宣传周启动
新量子通信线路保障网络安全
全省教育行业网络安全培训班在武汉举办
保护个人信息安全,还看新法
云计算在职业院校中的应用与思考
生物医学工程专业创新人才培养策略
单片机仿真实验平台的设计分析
基于LabVIEW下嵌入式系统实验平台的设计与实现分析
基于LabVIEW的虚拟实验平台设计