张奥晨,胡曦明,2,吴振强,2,王 亮,2
(1.陕西师范大学 计算机科学学院,陕西 西安 710119;2.现代教学技术教育部重点实验室,陕西 西安 710119)
疫情防控期间,我国高教战线开创了全员线上教学—“停课不停教、停课不停学”这一史无前例的中国实践。信息技术创新驱动教育教学深度变革既是新冠肺炎疫情下大规模线上教学成功实践的经验总结,同时也是后疫情时期教学改革面向未来的聚焦点。以此视角反思疫情防控期间物联网专业课程线上教学实施情况,不难发现线上教学囿于“不停教、不停学”层面而鲜有“不停练”,对于高实践性内在要求突出的物联网课程而言,大规模线上物联网实验的开设与教学质量成为实现物联网课程线上教学与线下教学“实质等效”的关键与难点。
就现阶段而言,线上实验常用两种传统教学方式,一是基于线上资源的虚拟仿真实验,二是基于线下设备的远程实物实验。但是从疫情期间教学实践来看,采用现有方式实施线上物联网实验教学却“寸步难行”,原因在于以下两方面。
教育部统计数据显示,抗疫期间教育部先后组织37个在线平台,免费开放2.4万余门优质在线课程资源,国家虚拟仿真实验教学项目共享平台(www.ilab-x.com)开放虚拟仿真实验资源达2 000余项,但这其中与物联网相关的线上实验资源仅有2项,并且实验科目只限于物联网在地铁运营、矿井安全方面的某一单项应用,这对于整个物联网课程实验教学体系所需资源体量来说微不足道。由于线上实验资源匮乏,疫情期间物联网实验教学或是被迫暂停或是降格为教师在线实验说课,而学生则“以看代练”。
反观计算机专业程序类线上实验,无论种类、科目与要素都相当丰富、完备,以抗疫期间首批开放的EduCoder在线实践教学平台(www.educoder.net)为例,提供超1 000余种在线实验教学资源,近乎涵盖所有流行编程语言。疫情期间,以EduCoder平台资源为支撑,华中科技大学计算机科学与技术学院顺利实施线上C语言实验教学与线上实验自动评测、国防科技大学计算机学院“大学计算”课程“停课不停练”,确保线上教学同样达成培养学生编程能力与计算思维的目标,“EduCoder+直播”教学模式生动诠释了什么是“化危为机”。通过上述对比不难发现,物联网线上实验资源匮乏是导致疫情下线上实验教学“停摆”的关键因素。从2013年开始,教育部认定的300家国家级虚拟仿真实验教学中心,其中仅有吉林大学物联网虚拟仿真实验教学中心1家,这说明物联网线上实验资源匮乏的窘境并非疫情所致的突发状况,而是长期存在的短板。
远程实物实验通过将线下硬件实验设备上网开放,支持用户通过网络远程登录设备并异地实时远程操控设备开展实验,使实验过程全部运行在真实设备上。疫情期间,多所高校硬件类课程采用远程实物实验的方式实现了“停课不停练”,例如:东南大学电工电子实验教学示范中心在“东南在线实验”实物实验平台上线“数字逻辑”等3门硬件课程实验,疫情期间累计供83所高校共开设631个实验教学班;哈尔滨工业大学计算机学院基于可编程逻辑器件FPGA和物联网技术搭建“无处不在”的远程硬件课程实验平台并推广应用。远程实物实验之所以能够为学生提供“实而不虚”的学习体验,关键在于具备优越的设备硬件条件以及完备的设备管理配套,与单基于FPGA搭建硬件课程远程实验平台相比,搭建物联网远程实物实验平台所需设备种类繁多,小到声光电温等各类传感器,大到物联网云服务器,建设成本高且集成化管理技术复杂。如此之高的经费投入与技术门槛事实上形成的“实验设备鸿沟”并非一般高校能够跨越,例如深圳大学举国家级计算机实验教学示范中心、广东省重点实验室以及深圳市物联网专用集成电路设计工程实验室等3个重点实验室之力,建设物联网设备设计实验教学系统。众多普通高校特别是高职物联网专业只能“望而却步”或是退而求其次,寻求变通。无锡商业职业技术学院物联网技术学院基于智能家居与树莓派打造ZigBee网络环境下的实物实验平台就是例证之一。
综上所述,线上物联网实验的新需求随着抗疫期间高校在线教学全面开展而呈井喷式爆增,但由于线上实验资源匮乏与线下实验设备鸿沟,致使在程序类、硬件类等其他专业课程线上实验常用并且管用的两种传统教学方式(虚拟仿真实验、远程实物实验)并不适用于开展物联网线上实验教学。面对新需求与传统教学方式之间的矛盾与挑战,基于成本、管理与技术门槛等现实约束条件,同时面向疫情后物联网实验教学改革与发展,探索线上物联网实验新途径成为当前具有紧迫性和现实意义的新课题。
以产教融合新思路突破传统在线实验教学不是基于虚拟仿真就是基于实物的固化模式,将物联网产业的商用公共云平台引入高校物联网实验教学,提出基于“物联网公共云平台+个人终端”(简称“云端+终端”)打造真实物联网云服务环境支撑下个人终端实训实操的在线物联网实验技术。
“云端+终端”线上物联网实验技术总体架构由三部分组成,具体设计如图1所示。
图1 “云端+终端”线上物联网实验技术总体架构
(1)物联网云平台配置
根据实验科目涉及的应用场景与具体内容,对应引入提供相关物联网服务与应用的公共云平台,例如:综合型实验可引入中国移动物联网云OneNET、行业细分型实验可引入新大陆物联网云NLECloud;如实验只涉及某一项技术,则可引入对应的专用物联网云平台,以降低实验成本与设备配置要求,例如,MQTT物联网消息传输与处理实验可引入EMQ。
(2)个人移动端
个人移动终端借助智能手机打造,首先通过开发或安装物联网实验用APP,使普通手机具备开展物联网实验所需的服务订阅、参数设置、安全管理等操作功能,随后个人即可操作手机通过互联网远程接入物联网云平台并运行APP,完成构造实验业务逻辑、调用云平台服务、控制实验过程等一系列实验步骤。例如,开展物联网MQTT协议相关的线上实验,安卓手机安装MyMQTT、苹果手机安装MQTTool,手机安装并运行APP之后即“变身”为支持MQTT协议的实验操作端,可与MQTT云平台(如EMQ)交互并开展云平台远程操作。
(3)测量与分析端
配置个人电脑,通过监听手机与物联网云平台交互的传输端口采集实验数据,由个人电脑运行Wireshark、Tcpdump等协议,对物联网协议交互、消息加密、安全漏洞等进行可视化分析,还可对网络时延等实验指标开展长时间监测。
“云端+终端”线上物联网实验技术工作过程如图2所示。
图2 “云端+终端”线上物联网实验技术工作过程
(1)物联网云平台配置
根据实验科目要求,在物联网公共云控制台配置相关参数,包括服务器IP、安全等级和消息发布格式等,完成物联网云服务环境的配置,进而搭建所需的实验网络。
(2)个人移动端操作
根据个人移动端操作系统的不同,安装对应的物联网APP等实验工具,从而将个人移动端接入物联网公共云,使个人终端成为物联网云客户端。客户端连接成功后,测试物联网云服务提供的订阅主题、发布和接收消息等业务功能。
(3)基础实验
个人移动端与物联网公共云通信过程中产生交互数据,采用Wireshark等可视化分析工具进行语法、语义和时序解析。针对不同类型的个人移动端选择相应的侦听网卡捕获数据,通过报文过滤查看目标协议报文,进而开展报文保密性分析、通信功能分类、服务质量验证等基础性实验,为后续综合实验提供支撑。
(4)综合实验
针对物联网攻击与防御开展综合性实验。以中间人攻击为例,通过修改服务器订阅权限来监听被攻击端的通信过程,以分析截获报文为基础向被攻击端进行伪造报文发送等网络攻击实验,通过网络攻击开展物联网接入控制、安全保密和信息完整性等安全测试实验;在此基础上,针对安全威胁引入网络防御工具(如OpenSSL),进一步开展报文加密、身份认证、证书签名等综合性实验。
MQTT自2013年正式成为OASIS标准化物联网消息传递协议以来,凭借在低可靠性、低带宽的受限网络环境下实现物联网感知层与应用层多样化数据交互功能的突出优势,相较受限应用协议(Constrained Application Protocol, CoAP)、可扩展通信与表示协议(eXtensible Messaging and Presence Protocol, XMPP)等同类协议得到了更为广泛的应用。但实际测量发现,目前已公开的大规模应用MQTT服务安全性不容乐观,使用未加密端口的MQTT服务占83.7%,这些服务器极易造成针对数据隐私、数据完整性、中间人进行攻击的安全隐患。因此,近年来MQTT的安全性成为关注的热点。
(1)实验拓扑
当前,EMQ(杭州映云科技有限公司)是OASIS MQTT技术委员会中唯一拥有投票权的中国公司,本实验采用EMQ提供的开源MQTT云服务与个人手机(h1、h2)交互来模拟物联网MQTT业务端。配置手机h3向h1、h2发起中间人攻击,采用笔记本电脑作为测量分析模块实时采集、测量并分析被攻击端h1、h2与攻击端h3的交互数据,具体实验拓扑与连接关系如图3所示。
图3 “云端+终端”物联网在线实验教学案例实验拓扑
(2)环境配置
EMQ服务器与个人手机(h1、h2、h3)的实验分工与配置参数见表1列。
表1 实验设备分工和参数表
3.2.1 操作与配置
对于MQTT公共业务而言,中间人攻击(MITM)是常见的网络攻击之一。实验中,攻击者利用MQTT通配符“#”订阅所有的消息主题,从而在服务器与客户端不知情的情况下获取双方通信的主题消息,以此达到MQTT中间人攻击效果。其中,关键配置是如何开启MQTT通配符“#”权限,EMQ的具体实现见表2所列。
表2 配置EMQ开启MQTT通配符“#”权限
攻击端从截获的报文中获取被攻击端的用户名密码、消息主题等通信信息后,向被攻击端发送虚假消息进行网络攻击。个人移动端中间人攻击实验配置与操作见表3所列。
表3 个人移动端中间人攻击实验配置与操作
3.2.2 数据测量与可视化分析
攻击端进行网络攻击的过程可视化如图4所示。
图4 中间人攻击过程可视化
造成中间人攻击的安全隐患主要是因为服务器订阅“#”通配符的权限被修改和采用MQTT协议无数据加密保护机制的方式通信。针对实验中设备暴露的安全威胁,采用SSL/TLS安全加密连接方式展开安全性防御实验。用TLS建立加密连接时,通信双方会互相检查对方的身份,确保数据传输信道的安全性。
(1)操作与配置
以SSL/TLS加密的方案展开安全性防御实验,使用OpenSSL工具生成的自签名证书模拟数据加密通信过程。实验配置与操作见表4所列。
表4 加密防御实验配置与操作
(2)数据测量与可视化分析
开启SSL/TLS连接通信方法,并使用生成的证书认证连接,实验过程可视化如图5所示。
图5 加密防御实验过程可视化
由图5可知,采用SSL/TLS安全加密连接方式通信时,会话密钥由通信双方协商产生,任何第三方都无法知晓通信内容。即使一次会话的密钥泄露,也并不影响其他会话的安全性。消息传输的内容使用密钥加密,数据很难被篡改且不被发现,确保了消息通信的安全性和完整性。
疫情防控期间,高校全员线上教学对物联网在线实验提出新的需求。通过教学实践发现,在程序类、硬件类等其他课程开展线上实验,如虚拟仿真实验与远程实物实验等传统线上实验方式并不适用于物联网课程,由此造成物联网线上实验教学停开的短板。本文突破上述两种传统线上实验方式的弊端,提出基于物联网公共云与个人终端的“云端+终端”线上实验技术,在此基础上给出物联网协议MQTT中间人攻击与加密防御的线上实验教学案例。实践表明,“云端+终端”线上物联网实验技术成本低、简便易行、安全稳定,并且针对不同实验科目可选择搭配提供相应服务的物联网公共云,从而打造可扩展的“7×24”物联网线上实验室,为发展人人、时时、处处皆可学习的高质量物联网课程形成有力支撑。