張奧晨,胡曦明,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等實驗工具,從而將個人移動端接入物聯網公共云,使個人終端成為物聯網云客戶端??蛻舳诉B接成功后,測試物聯網云服務提供的訂閱主題、發布和接收消息等業務功能。
(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”物聯網線上實驗室,為發展人人、時時、處處皆可學習的高質量物聯網課程形成有力支撐。