陈红松
北京科技大学计算机与通信工程学院 北京 100083
2016年6月,国家网信办、教育部等六部委联合发布《关于加强网络安全学科建设和人才培养的意见》,意见指出网络空间的竞争归根结底是人才竞争。从总体上看,我国网络安全人才还存在数量缺口较大、能力素质不高、结构不尽合理等问题,与维护国家网络安全、建设网络强国的要求不相适应。而网络安全人才培育过程中,实验教学作为提高学生实践动手能力的重要环节正逐步得到重视。实验教学就是利用实验的方法进行发现和验证知识的一种教学方法。它是一种有别于纯理论教学的实践性教学方法和过程[1]。实验教学是连接理论知识与工程应用的桥梁,是培养学生实践能力和创新意识的重要途径,深化实验教学改革、提高实验教学质量是当前高校教学改革的重要任务[2]。完整深入地传授给学生网络安全课程的基本概念及原理,对学生构建完整的网络安全知识结构体系是必不可少的[3]。但是,如果教师只单纯进行网络安全理论讲授,学生对某些网络安全知识会感到难以理解、无法运用,学生迫切希望能够通过实验来进一步理解知识技术,学以致用。
美国实用主义教育家杜威提出了知识与行为相结合的认知教育理念,认为学生在做的过程中学习是比在听讲更好的方法,强调个体在获取知识上的主动性问题,鼓励学生通过探究活动获取知识和经验,而不是被动地接受知识。因此,实验教学成为加强学生主动探究获取知识的重要教学方法。
我国著名教育家陶行知先生在“教学做合一”理论中提到:“教学做合一”是生活法,也就是教育法。教的方法根据学的方法,学的方法根据“做”的方法。事怎样做便怎样学,怎样学便怎样教。教与学都是以做为中心。由此可见,“做”是教学的核心。因此,实验教学是网络安全教学的核心,也是学生掌握网络安全知识的重要方式。
由于网络安全课程所涉及内容与实践结合比较密切,理论与实验结合的教学方式逐渐成为网络安全教学的主流。
1.1.1 网络安全理论与实验结合比较密切
网络安全是一门实践性较强的学科,强调理论与实践的密切结合,脱离实验支撑的纯理论授课,而脱离理论指导的纯实验操作均无法达到良好的教学效果[4]。
1.1.2 网络安全实验工具种类繁多
目前,互联网上各种开源的网络安全工具软件种类繁多、内容庞杂,例如,Kali Linux自带约有300多种安全类工具软件,Parrot Security OS自带安全类工具软件大约有600多种。教师需要根据课程教学内容要求从中分类筛选出一些适合网络安全实验教学的安全工具设计实验教学内容。
1.1.3 部分网络安全实验有一定破坏性
一些网络安全实验,如网络病毒、网络攻击等具有一定的破坏性,在进行网络安全实验过程中需要一些特定的安全隔离手段保护实验者的计算机和网络系统安全。
1.1.4 大多基于虚拟化技术
由于部分网络安全实验具有一定的破坏性,目前大多数网络安全实验教学平台通常采用虚拟机、Docker容器等虚拟化技术实现实验系统与物理系统的隔离,当做完实验后通过释放虚拟化资源,使得系统快速恢复到初始状态。
1.1.5 强调网络安全攻防对抗特点
网络安全技术与网络攻击技术如同网络空间里“矛与盾”的关系,只有深入理解网络攻击技术才能更好做好网络安全防御。
目前,只有在软硬件实验条件较好、投入资金较充沛的高校才建立了网络信息安全实验室和实验环境。现有的网络安全实验教学方法仍然需要面临以下几个问题,只有有效解决这些问题才能进一步提高网络安全教育教学质量。
(1)网络安全实验教学仍处于辅助地位。 实验教学在网络安全教学过程中重视程度不够,没有充分发挥实验教学的特殊作用,缺乏与网络安全理论教学的有机联系。
(2)网络安全实验教学内容较分散、不成系统,不能完全反映真实的网络攻防环境。
(3)网络安全实验室建设成本较高。
(4)学生根据预设步骤做实验,缺乏独立思考和应用知识的主动性。
网络信息安全类课程最显著的一个特点是强调应用、时效性强,理论与实践联系密切,适合采用案例法进行教学。康晓凤提出了综合应用多媒体教学、互动教学、实战案例教学和现实生活案例教学提高本门课程的教学效果[5]。案例教学法是一种以案例为基础的教学法(case-based teaching),它把理论和实践有机联系在一起,提高学生分析问题、解决问题的能力[6]。案例是针对一个真实、具体发生事件的反思与探讨,是对已经发生事实的再现与思考[7]。不同的案例之间应由浅入深、逐步深入,所涉及到的知识点之间应相互联系、前后连贯[8]。为进一步拓展教学的深度与广度,吴淮等在实验中引入虚拟仿真实验教学平台[9],该实验课程面向有意参加全国信息安全大赛及对信息安全感兴趣的学生,课程内容包括信息安全、计算机相关技术、文档写作、项目答辩等各种技能。
本文针对网络信息安全课程实验教学设计了3种不同类型的实验教学案例,如图1所示,分为以下3大类:演示型实验案例、验证型实验案例、综合型实验案例。
图1 网络信息安全实验教学案例体系示意图
由图1可知,本文设计的网络信息安全实验教学案例体系包括演示型、验证型、综合性3种不同类型的实验教学案例,由教师与学生共同参与实验教学过程,分别在实验教案书、实验指导书、实验任务书等教学规范文件指导下完成相关实验教学任务;每种实验教学案例从不同角度调动学生主动参与学习的积极性,这些实验教学案例由浅入深、逐步深入,分别通过教师演示并提问、学生验证并扩展、综合应用并研讨等师生互动环节促进教学相长,形成了网络安全实验教学案例体系。
下面举例说明本课程采用的实验教学案例的实施过程。
在网络信息安全实验教学中,需要任课教师选定部分关键知识点设定网络信息安全场景,在课堂上先讲授实验原理,再依据实验教案书演示实验步骤,通过网络安全实验演示该知识点及应用场景,培养学生记录和分析实验结果、根据所观察实验现象联系所学理论知识的能力,最后总结归纳相关知识点,加深学生对该应用场景的印象,通过对关键知识点的三遍传授,促进其将所学理论与实践相结合以及对相关知识点的掌握与理解。
实验教学案例题目:Linux Iptables网络防火墙安全规则实验。
实验教学目的:通过演示Iptables网络防火墙安全规则的设计运用,使学生理解包过滤网络防火墙原理,并能灵活运用安全规则对网络突发流量进行安全管控。
实验仪器及环境:Vmware虚拟机管理软件、Linux操作系统、Iptables网络防火墙软件。
实验原理:Iptables是Linux下网络数据包过滤防火墙,工作在网络层,针对TCP/IP数据包实施过滤和限制。Iptables利用网络数据包过滤机制分析网络数据包的报头部分数据,根据报头数据与用户定义的安全规则来决定该数据包是进入主机、进行修改还是直接丢弃。Iptables可以对流入和流出网络的信息进行细粒度控制。它采用状态机制(STATEFUL),通过不同规则进行匹配;Iptables包括filter,nat,mangle,raw共4张表,包括INPUT,OUTPUT,FORWARD,PREROUTING,POSTROUTING共5条链。Iptables的表链结构如图2所示。
图2 Iptables防火墙的表链结构
Iptables网络防火墙数据包过滤工作流程如图3所示。
图3 Iptables网络防火墙数据包过滤工作流程
由图3可知,Iptables防火墙可在Input,Output,Forward等5个链上分别设置检查点进行网络数据封包的检测与规则匹配,在每个检查点上根据规则匹配的结果实施相应的操作。
Iptables网络防火墙演示实验采用由易到难、由初级实验到中级实验再到高级实验的逐级演示实施方式,让学生对网络防火墙的认识有逐步深入的过程。
初级实验:防火墙基本参数的使用
iptables -L
# -L是列举的意思,作用就是把FILTRE TABLE的所有链的规则都列举。
iptables -A
# -A是追加新规则的意思,作用是把新的规则将追加到链尾。
iptables -F
# -F是清除的意思,作用就是把FILTRE TABLE的所有链的规则都清空。
中级实验:通过网络防火墙限制部分主机通过SSH远程登录。
iptables -A INPUT -s 172.16.0.6 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j DROP
#这两条规则只允许通过172.16.0.6主机通过ssh远程登录防火墙主机,其它计算机禁止使用ssh登录防火墙主机。
高级实验:通过网络防火墙对抗网络DDOS拒绝服务攻击
iptables -P INPUT DROP
#首先设置iptables默认安全策略为拒绝
iptables -A FORWARD -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 1/sec -j ACCEPT
#限制tcp包每秒一个
iptables -A FORWARD -f -m limit --limit 100/sec--limit-burst 100 -j ACCEPT
#限制IP碎片,每秒钟只允许100个IP碎片通过,限制触发条件是100个包,用来防止DoS拒绝服务攻击
iptables -A FORWARD -p icmp -m limit --limit 1/sec--limit-burst 10 -j ACCEPT
#限制ICMP包每秒一个,限制触发条件是10个包
实验数据及分析:通过iptables -L命令查看实验配置,网络防火墙配置如图4所示。
图4 网络防火墙配置
实验思考:用户如何合理设置防火墙安全规则实现安全目标?引导学生从单条安全规则理解到多条安全规则组合理解,并通过网络防火墙规则配置实验演示,促进学生理解网络防火墙安全规则及组合的重要作用,提高对本课程学习的兴趣。在演示实验过程中,要不断地引导学生积极思考、参与设计、共同研讨,激发学生创新思维,让其知其然,更要知其所以然,达到灵活运用所学知识的教学目的。
实验扩展:结合安全需求制订安全规则的过程,然后让学生分别以网络安全管理员、入侵者及网络用户等不同角色理解并体会网络防火墙的作用,以及在规则配置中应注意的问题。学生可以建立一个小型局域网,重现课堂实验演示的内容,通过扩展安全规则和应用场景进一步发现Iptables的新用法,提升学生利用已有安全软件工具对所学知识进行扩展创新的能力。
实验总结:通过设置初级、中级、高级不同难度等级的演示实验,学生可以由浅入深、逐步理解Iptables防火墙安全规则的作用和配置方法,实现限制tcp包、ip包、icmp包速率以及新建网络连接数量,通过制订防火墙访问控制规则丢弃拒绝服务类攻击包、限制流量速率,实现防护拒绝服务攻击的安全目标。所设计实施的网络安全教学案例取得了良好的教学效果,获得学生的一致认可。
根据信息安全本科课程的教学目标和教学内容开展实验案例教学体系研究与实践,提出3种不同类型的实验教学案例,形成信息安全实验教学案例体系。以网络防火墙为例设计了实验教学案例,实验教案包括实验题目、实验目的、实验仪器及环境、实验原理、实验教学步骤及内容、实验思考、实验扩展、实验总结等结构及内容。实验教学实践表明实验案例教学法有利于学生对网络信息安全知识的理解与认识,能促进学生对理论课程的深层思考和全面认识,可提高学生的实践创新能力,使学生变被动接受为主动学习,取得了良好的教学效果。