APP下载

网络安全课程教学云平台的设计与实现

2019-01-21林玉梅方连花郭新华

关键词:服务器网络安全节点

林玉梅,方连花,郭新华

(1.泉州信息工程学院软件学院,福建 泉州 362000;2.泉州信息工程学院公基部,福建 泉州 362000)

0 引言

网络安全类的课程实验建设面临着诸多困难和挑战,比如:多样化的实验环境无法满足,实验过程不可逆,带有破坏性,可能影响真实的物理网络环境,影响正常的教学秩序。而且网络安全实验很多都是综合性和创新性比较强的实验。[1]因此,这就需要个性化的虚拟实验平台,以支持多学科融合、协同创新的环境。[2-3]

虚拟化网络安全教学平台已引起越来越多的关注。随着云计算应用的不断深入,云计算也被应用到网络安全入侵场景重建及网络攻防平台上。[4-5]作为一种新的计算模式,云计算可以通过Internet为学生提供虚拟化的、灵活的、动态易扩展的资源[4]。OpenStack是一个灵活的云平台,它采用模块化设计,很容易就能虚拟出实验所需的各类型OS的节点虚拟机。

因此,本文提出了依托OpenStack云计算平台来部署一个网络安全课程教学平台,旨在满足网络安全课程实验教学环境,提高学生学习网络安全课程的积极性,提高学习效果,培养专业能力强的网络安全人才。

1 相关技术

1.1 云计算平台

作为IaaS的一个解决方案,OpenStack提供实施简单、可扩展、开放式的云计算管理平台,让使用者方便地从共享资源池中获得自己想要的服务。[2]OpenStack包含多个功能组件,通过这些组件的协同工作,可实现一个云计算平台并提供服务。[6]

1.2 HTML5 canvas

一个系统前台显示层的界面要美观友好且易操作。本云平台的前台设计主要采用以下3种技术:

HTML5能充分满足Web应用多元化需求。开发人员可通过HTML5标签,轻松地在网页中实现表单自动验证和本地存储等方面的功能。而云技术,使得HTML5大放异彩。

JavaScript是一种在客户端浏览器上运行的动态的跨平台脚本语言。HTML5配合JavaScript处理脚本,能开发出各种复杂的Web页面。

CSS3:使用CSS3,以控制文字样式,实现动画效果,让页面的内容与其表现形式分离。

1.3 PHP语言

PHP作为一种服务器端执行的高效率的脚本语言,是一种现在最常用的服务器语言。它具有简洁的语法规则,实用性很强,可作为C、C++进行程序的扩展。

2 云平台架构及功能设计

2.1 云平台架构设计

OpenStack云平台架构的部署方案有很多种,本文提出的网络安全课程教学云平台架构如图1所示,云平台的拓扑结构由两个部分组成:前端的服务器部分、后台的OpenStack云平台部分。通过部署VPN服务器,学生可远程SSL VPN接入Web服务器,进行网络安全课程的学习或实验。所有的学生请求都将通过网络节点发送到控制节点(Web服务器)中。后台部署了控制节点、计算节点以及网络节点等3种节点,构成OpenStack云平台。[7]

图1 网络安全课程教学平台架构图

2.2 平台功能设计

网络安全课程教学云平台功能设计,包括教师管理后台和学生使用前台两部分。教师管理后台由实验管理、考核管理、学生管理、资源管理和系统管理等5个模块构成,其中资源管理模块包括实验课件管理和实验工具管理两个子模块;学生使用前台主要有虚拟实验区、实验资源区、个人中心等模块,如图2所示。

图2 网络安全课程教学云平台功能结构图

1)虚拟实验区提供虚拟实验的入口,主要提供网络安全课程教学体系的相关实验项目。实验分选修和必修,其中,必修实验必须在限定时间内完成。

2)实验资源区主要包括课件、工具包、实验案例操作视频等资源,并提供浏览和下载。如图3,对实验工具分类管理。

3)个人中心主要包括个人信息、完成实验日志以及实验交流等内容。

4)实验管理主要包括实验计划及实验成绩评定等内容。

5)系统管理主要包括信息发布、环境仿真、实验统计等内容。

云平台尽可能为学生学习网络安全课程提供一个架构合理、功能全面的虚拟仿真实验环境。

图3 资源管理下的实验工具管理

3 平台实现

3.1 云平台环境搭建

利用现有的kvm虚拟化技术和OpenStack套件构建一个分布式的高可用的虚拟化云计算平台,构成云计算的网络安全教学平台的基础环境。本文云平台目前的系统规模,由4台服务器组成,其中一台提供Web服务及操控其他节点的控制节点,两台承担计算功能的计算节点,还有一台提供大量网络服务的网络节点,四者紧密协作,彼此协调,形成一个性能较高的服务器集群。[8]所有终端对网络安全教学云平台的访问请求都将通过网络发送到网络节点,再转发到控制节点即Web服务器上。控制节点根据计算节点的负载,将这些请求按照一定的算法分发到计算节点上,实现负载均衡。

每个物理机节点都安装Ubuntu Server 12.04,其中控制节点和计算节点先配置好域名解析文件并关闭防火墙,然后在其上部署OpenStack,云控制节点安装了所有的nova-service,包括API服务器和数据库服务器,计算节点只需要运行nova-compute服务。在多节点的安装里,只需要一个nova-network服务就行。但对于教学云平台,高可用性是必须要保证的。所以,云平台独立设置一个网络节点,安装并配置 OpenStack,安装网络时间协议,设置时间同步、 关闭 selinux 和 iptables。

3.1.1 控制节点配置

云平台的前台Web网站服务运行在控制节点上,提供了教学实验的入口。安装部署OpenStack,控制节点安装的服务主要有Horizon 、MySQL 、RabbitMQ、Keystone、Glance、Nova(nova-api,nova-scheduler,nova-controller,without nova-compute)、Cinder、swift、neutron-server和Identity等,即除了虚拟机和网络服务之外的所有云端需要的服务,如图2所示。其中,Horizon 用于Web展示界面操作平台,通过Nova与KVM虚拟机连接,让学生在浏览器端可以访问虚拟机。

3.1.2 网络节点服务器配置

网络节点将提供OpenStack的大量网络服务,需要安装的服务有:neutron-openvswitch-agent 、neutron-l3-agent、neutron-dhcp-agent及 neutron-metadata-agent等服务,保证各类数据的连通性。

3.1.3 计算节点服务器配置

同网络节点一样,计算节点也提供服务代理,主要用来管理中间层软件Hypervisor,提供各类的虚拟机实例。[9]所以在计算节点都安装KVM作为系统管理程序,并安装nova-compute服务及neutron-openvswitch-agent服务,通过libvirt中间件与底层KVM虚拟机通信,控制虚拟机的启动、暂停和销毁。

3.2 云平台服务器实现

本网络安全课程教学云平台采用B/S架构,使用HTML5+CSS3+Javascript构建前台页面,使用PHP作为后台服务器脚本引擎。[10]客户端和服务交互使用JSON数据格式,数据库系采用MySql作为整个系统的数据库引擎。主要数据库表的功能见表1,其中Node Info表的主要字段见表2。

表1 主要数据表

实验开始前,教师根据学生情况创建学生信息表,并按上课实验需求提前添加实验,如图4,构建实验环境模板,如虚拟机模板、所需实验工具,启动相应的实现环境。学生进入实验访问网页,登录或注册,进行身份认证,获得token,单击选择实验内容,发送token请求虚拟机,请求镜像,Web浏览器通过Virtual Network Computing (VNC) 会话URL方式来启动虚拟机,进行实验;实验结束后,销毁虚拟机,完成实验,实验访问流程如图5所示。

表2 Node Info表的主要字段信息

图4 教师添加实验图

图5 实验访问控制流程图

4 系统测试与效能评估

我们主要从网络环境实例构建效率进行了测试评估。网络环境构建,从创建虚拟网络,输入neutron net-list检查是否创建成功,使用demo学生进行操作,生成一个键值树,添加安全组,到最后启动实例。

创建实例命令:openstack server create—flavor m1.nano—image cirros—security-group default—key-name mykey demo-instance

从网络环境解析时间、实例创建及配置时间各方面来考虑网络环境实例构建效率,测试结果如图6所示。

从图6可以看出,网络环境解析所需的时间少,而实例创建时间所需的时间最多,创建60个实例大约需要110 s,当然,这和物理硬件环境配置有很大的关系。

该云平台已完成了1届网络工程专业学生的实验教学任务。和往届对比教学效果如图7所示,答疑人数比例和安全比赛报名率显著提高,学生的学习积极性提高明显。实验效果良好,达到了预期的效果。

图6 实例构建效率测试结果

图7 教学效果统计

5 结语

针对网络安全课程实验教学中的问题,本文设计了依托OpenStack搭建的网络安全课程教学云平台,并对系统进行测试及分析实验效果。相比原有的教学条件,本平台突破了传统课堂教学的时空约束和资源约束,给学生更多实验练习的机会,提供了全新的网络安全课程教学手段,进一步深化教学模式改革,提高学生学习网络安全课程的积极性。教学效果统计结果表明,该平台能够满足网络安全课程教学的要求,教学效果良好。

猜你喜欢

服务器网络安全节点
CM节点控制在船舶上的应用
Analysis of the characteristics of electronic equipment usage distance for common users
基于AutoCAD的门窗节点图快速构建
通信控制服务器(CCS)维护终端的设计与实现
网络安全
网络安全人才培养应“实战化”
上网时如何注意网络安全?
中国服务器市场份额出炉
得形忘意的服务器标准
计算机网络安全服务器入侵与防御