王建宏, 劉嘉勇
(四川大學 信息安全研究所,四川 成都 610064)
實驗教學一直都是高等院校教學工作的重要組成部分,它在培養(yǎng)學生綜合素質和創(chuàng)新能力方面有著不可替代的重要作用。隨著網絡技術的發(fā)展,高校計算機相關專業(yè)的建立和發(fā)展,“做實驗”的概念不再是玻璃瓶里的化學藥品、電路板上的邏輯電路這樣的具體概念了,尤其是在計算機領域。計算機相關實驗教學現狀,大多需要PC機將網絡技術引入實驗教學的實驗環(huán)境,實現資源共享,降低實驗成本,使實驗的進行不受時間和地點的限制,有利于開放式教學體系的設計和創(chuàng)造型人才創(chuàng)新能力的培養(yǎng)[1]。
下面從功能設計、結構設計、平臺搭建、功能特點和安全配置幾個部分對本實驗管理平臺分別闡述。
模擬傳統(tǒng)實驗步驟和習慣,基于功能的角色(教師、學生和實驗室管理員)功能分類,本實驗管理系統(tǒng)功能結構分類如下。
用戶管理子模塊包括:用戶注冊,用戶登錄管理,修改口令,過期用戶注銷;
學生子模塊包括:實驗項目選擇,提交報告,查詢實驗報告,相關資料下載;
教師子模塊包括:實驗項目管理,學生實驗查看,學生期末成績,下載專區(qū)維護,學生賬號管理;
管理員子模塊包括:院系及專業(yè)管理,實驗項目管理,教師賬號管理,過期數據清理,防火墻地址設置。
(1)用戶管理子模塊
本子模塊為后臺管理系統(tǒng)提供合法用戶認證服務。設計了三種用戶角色,教師、學生和管理員。管理員可管理教師和學生賬號,教師管理實驗項目授權。本模塊實現了這三種用戶信息管理、用戶登錄管理的基本功能。除此之外,還實現了用戶注冊和過期用戶注銷功能,適應教學實驗系統(tǒng)學生用戶更新。
(2)學生子模塊
依照學生做實驗流程:上機→選擇實驗項目→下載實驗相關資料和工具→在線實驗→填寫實驗報告→提交實驗報告,本子模塊主要功能包括實驗項目選擇、在線提交和修改實驗報告、實驗工具和相關下載。學生可選擇進行教師用戶設定的授權實驗項目。
(3)教師子模塊
依照教師教學任務流程:布置實驗任務→上傳實驗資料和相關工具→收集檢查實驗報告→成績管理→學生實驗情況查看,本子模塊主要功能包括實驗項目選擇,學生實驗情況查看,學生實驗報告查閱,下載專區(qū)維護和學生賬號管理。教師即可根據具體實驗課程設置當前可進行實驗項目和相關實驗資料,也可在不同學年更新和管理學生賬號。
(4) 管理員子模塊
管理員子模塊主要用于特殊數據的設置和刪除以及批量數據的刪除。包含五個主要功能,院系及專業(yè)管理模塊、實驗項目管理模塊、教師帳號管理模塊、過期數據清理模塊和防火墻地址設置。
基于網絡的管理系統(tǒng)有C/S(Client/Server)、B/S(Browser/Server)兩種模式。C/S模式需要專門的客戶端安裝程序,開發(fā)周期長對各種環(huán)境兼容性差,不能夠實現快速部署安裝和配置,開發(fā)成本高[2]。而B/S模式具有分布性特點,開發(fā)速度快、成本低、客戶端零維護、系統(tǒng)擴展容易等特點,本管理系統(tǒng)采用B/S結構。在后面的描述中,本實驗管理系統(tǒng)依據的系統(tǒng)拓撲結構如圖1所示,主要特點有如下幾個。
①客戶端只需要安裝Web瀏覽器(IE,Netscape等)即可,其它的應用程序都安裝在Web服務器和數據庫服務器上。合法用戶只要擁有瀏覽器就可以十分容易的使用整個系統(tǒng);
②服務器端,連接客戶端和數據服務器,負責處理來自瀏覽器的用戶請求,啟動有關的腳本或應用程序執(zhí)行相關任務,調用數據庫服務器資源對客戶端的請求做出響應,將結果以網頁的形式發(fā)送給用戶的瀏覽器;
③數據庫服務器中保存系統(tǒng)的數據,實現數據的定義、維護、訪問、更新以及管理,并響應應用服務器的請求。
圖1 系統(tǒng)拓撲
通過對多種開發(fā)平臺的研究和比較,考慮到學校研發(fā)經費、適用環(huán)境、用戶需求和性能要求,本系統(tǒng)選擇了LAMP(Linux + Apache + MySQL + PHP)開源環(huán)境作為其開發(fā)平臺,分別表述如下。
①Linux是多用戶、多任務的操作系統(tǒng),繼承自UNIX操作系統(tǒng),具有齊全功能和較高的運行效率和系統(tǒng)穩(wěn)定性[3];
②Apache服務器是一種支持HTTP協(xié)議的Web服務器軟件,也是當前使用最廣的一種開源Web服務器。它有很好的跨平臺性,穩(wěn)定性和運行速度相對較高,完全能滿足校園實驗系統(tǒng)的需求;
③選用MySQL服務器作為數據庫服務器。它是真正的多用戶、多線程SQL數據庫服務器,適合于中小型數據系統(tǒng),運行速度快、具有健全的安全機制的網絡數據庫管理系統(tǒng);
④采用PHP(Personal Home Pages)。PHP是一種服務器端、跨平臺、HTML嵌入式的腳本語言。其一個突出特點就是快速,執(zhí)行網頁比CGI、Perl和ASP更快,并且具有豐富的功能,版本更新速度也很快。
另外PHP+Apache+Mysql配合使用于Linux平臺上,具有最高的性能價格比,這也是本平臺搭建之初如此配置的重要原因。
本實驗管理系統(tǒng)是針對實驗教學方面的需求而研發(fā)設計的。用它可以實現計算機、網絡、信息安全等專業(yè)學生的實驗管理。該系統(tǒng)由以下幾個特點。
(1)學生實驗異步
傳統(tǒng)實驗教學要求學生和老師的同步,學生與學生的同步。但是在實際情況中,由于學生學習習慣和學習能力的不同,不能保持絕對同步。而本實驗系統(tǒng),學生可以根據個人情況調整實驗進度,體現了學習的異步性。
(2)教員負擔輕
傳統(tǒng)的實驗教學中需要學生手動登記,但是即使這樣也無法保證學生到場真實情況,并且書面資料不好收集整理,本系統(tǒng)使用了在線用戶登錄系統(tǒng),便于教師實驗信息收集,并且減輕了教員收集整理書面數據的負擔。
(3)在線資料獲取便捷
本系統(tǒng)B/S結構使得用戶只要在接入該網絡的安裝了瀏覽器的主機上都可以隨時訪問,不需要安裝任何軟件。并且教師可以隨時將需要的文件資料上傳到服務器上,方便學生的使用。避免了使用類似網上鄰居等文件共享系統(tǒng)造成網絡傳輸的擁塞。也省去了拷貝資料的繁瑣,時間的浪費。
(4)實驗在線控制
教員可以指定學員可操作實驗項目,并且本系統(tǒng)設計了實驗記錄功能,保存學生參加的實驗項目信息,方便教員管理。
(5)在線實驗報告提交
學員可在線以電子文件提交實驗報告。在數字信息存儲普及得今天,這樣更便于實驗報告的收集整理。
實驗管理平臺的使用采用軟硬兩種控制方法,實驗室制度決定硬控制方式,這里主要介紹一下軟控制方式。軟控制方式包括界面程序控制方式和服務器控制方式[4]。參考信息系統(tǒng)安全策略基本原則[5],本實驗系統(tǒng)管理系統(tǒng)主要的安全配置有如下幾點:
① 修改默認信息:禁用默認的root管理員賬號;Apache服務器初始安裝時有一些默認參數,如用戶登陸名、服務端口、配置信息等,這些都給攻擊者留下了入侵的可能,重新設置或修改,避免使用默認參數[6];
② 腳本編輯器安全配置:禁止用戶輸入創(chuàng)建全局變量;特殊字符自動轉義;設置安全模式;禁止知道文件目錄外的文件操作;禁止錯誤信息顯示在網頁上;禁止遠程文件功能;傳輸數據加密;限制輸入長度與類型等;
③ 日志文件管理:將Apache服務器訪問日志保存在安全保護目錄中,并做定期分析;
④ 安全補丁及時更新:保證平臺各模塊保持最新補丁包,運行穩(wěn)定版本。
另外,現在的安全技術層出不窮,可以做很多安全配置的定制,而在Linux操作系統(tǒng)環(huán)境的安裝前中后,可參考文獻[3]做適當配置。而實現了最小特權和權責分離的SELinux強制訪問機制[7]也可在適當的環(huán)境下應用。
本實驗系統(tǒng)是針對高校個別專業(yè)學生設計的實驗系統(tǒng),系統(tǒng)用戶容量有限,主要應用在小型局域網中。如要應用于用戶規(guī)模大,復雜的網絡環(huán)境中時,在數據存儲和網絡配置等方面還需作更高級的配置和改進。
[1] 辜良瑤,潘迪夫.構建基于網絡技術的實驗教學系統(tǒng)[J].現代電子技術,2006(04):36-38.
[2] 張潤杰,劉維民,劉鵬,等.基于B/S模式的網絡版實驗室管理系統(tǒng)[J].首都師范大學學報,2005,26(02):16-18.
[3] 初振林.Linux安全強化方案[J].信息安全與通信保密,2007(11):49-50.
[4] 張松,陳志剛,金亮.開放實驗室管理系統(tǒng)設計方案比較及實現[J].計算機工程與應用,2004(03):230-232.
[5] 方勇,劉嘉勇,周安民,等.信息系統(tǒng)安全理論與技術[M].北京:高等教育出版社,2008:13-15.
[6] 傅宇旭.Apache服務配置和管理[M].北京:清華大學出版社,2002:17-111.
[7] 劉科淵,潘理,李建華.基于SELinux強制訪問控制機制的Web服務器安全增強[J].信息安全與通信保密,2004(04):28-30.