任仁, 謝炯, 陳曉宇, 李祺
(內(nèi)蒙古電力集團蒙電信息通信產(chǎn)業(yè)有限責(zé)任公司,內(nèi)蒙古,呼和浩特 010000)
隨著智能手機以及其他智能終端的飛速發(fā)展,利用可移動式便攜設(shè)備進行辦公已成為了十分普遍的辦公方式。這樣的辦公方式不受時間和地點的約束,大大提高了企事業(yè)單位的工作效率[1-5]。5G技術(shù)逐漸推廣進一步促進了移動辦公的發(fā)展。
利用手機等移動終端進行辦公時,需要在移動終端上安裝相應(yīng)的軟件,然后通過終端軟件與辦公系統(tǒng)之間進行數(shù)據(jù)傳輸。如果辦公過程中涉及對文檔進行編輯的工作,那么則需要額外安裝具有編輯功能的插件。當(dāng)移動終端在利用外網(wǎng)進行辦公時,復(fù)雜的網(wǎng)絡(luò)環(huán)境會使得辦公系統(tǒng)的安全性得不到保障,容易遭受到網(wǎng)絡(luò)攻擊或病毒攻擊導(dǎo)致內(nèi)部數(shù)據(jù)泄密等情況的發(fā)生。因此,解決移動辦公系統(tǒng)的安全性能是非常重要的。
虛擬化技術(shù)是一種云計算技術(shù),常用于移動辦公系統(tǒng)的安全管理中[6-8]。將虛擬化技術(shù)應(yīng)用于移動辦公系統(tǒng)中,其實是在辦公系統(tǒng)內(nèi)部服務(wù)器和移動辦公的智能移動終端之間增加了虛擬層。虛擬化技術(shù)通過ICA(Independent Computing Architecture)協(xié)議、RDP(Remote Desktop Protocol)協(xié)議等數(shù)據(jù)交換協(xié)議提供數(shù)據(jù)虛擬通道實現(xiàn)數(shù)據(jù)庫和終端之間的數(shù)據(jù)交換。虛擬化技術(shù)的應(yīng)用使得移動辦公由原本的分布式部署轉(zhuǎn)變?yōu)榱思惺讲渴?,不僅提高了工作效率、簡化了系統(tǒng)的維護,還在優(yōu)化系統(tǒng)的安全性方面起到了重要作用。
本虛擬化移動辦公平臺的整體架構(gòu)主要包括安全移動臺服務(wù)器端和安全移動平臺客戶端,如圖1所示。其中:服務(wù)器端的功能為內(nèi)部辦公數(shù)據(jù)的儲存、調(diào)取、管理以及工作任務(wù)的發(fā)布等;客戶端為辦公終端,其功能為接收工作任務(wù)、對工作任務(wù)進行編輯和執(zhí)行等。安全移動平臺服務(wù)器端包括了平臺管理模塊、身份認證模塊、應(yīng)用發(fā)布模塊、虛擬化模塊、虛擬化窗體展現(xiàn)和管理模塊。平臺管理模塊的主要功能是對整個辦公平臺系統(tǒng)運行的管理,包括運行日志、維護等管理;身份認證模塊主要是對用戶進行管理,每個用戶對應(yīng)一個ID和密碼,用以保證內(nèi)部平臺的權(quán)限管理;應(yīng)用發(fā)布模塊的功能是進行工作任務(wù)的發(fā)布;虛擬化模塊是實現(xiàn)虛擬化移動辦公和虛擬化關(guān)鍵技術(shù)實現(xiàn)的主要模塊;虛擬化窗體展現(xiàn)和管理模塊主要是利用虛擬化技術(shù)將內(nèi)部系統(tǒng)的數(shù)據(jù)通過窗體進行展示并進行管理的功能。安全移動平臺客戶端主要包括電腦、智能手機、平板電腦等移動智能設(shè)備,相應(yīng)的訪問端口可以為Web瀏覽器、電腦客戶端軟件和手機客戶端軟件;針對于不同系統(tǒng)的終端,具有不同的訪問方式。
圖1 虛擬化移動辦公平臺的整體架構(gòu)
系統(tǒng)平臺與移動設(shè)備客戶端之間是基于交互式鏡像技術(shù)進行數(shù)據(jù)傳輸?shù)?,因此在?shù)據(jù)傳輸過程中可以保證信息無損、功能無損;而且移動客戶端進行工作任務(wù)處理時,僅需要進行按鈕確認、鼠標(biāo)操作等簡單操作,工作簡化,效率提升。
虛擬化移動辦公系統(tǒng)的硬件結(jié)構(gòu)較為簡單,可分為客戶端和服務(wù)器端2大類,如圖2所示。客戶端包括電腦客戶端和手機客戶端,電腦客戶端供便攜式電腦使用,手機客戶端供智能手機和平板電腦使用。服務(wù)器包括了平臺服務(wù)器、業(yè)務(wù)應(yīng)用服務(wù)器、異步信息服務(wù)器、下載服務(wù)器、上傳服務(wù)器。平臺服務(wù)器具有鏡像服務(wù)、終端資源服務(wù)和信息推送服務(wù)等功能,與業(yè)務(wù)應(yīng)用服務(wù)器之間進行數(shù)據(jù)交換,啟動虛擬化應(yīng)用。當(dāng)利用電腦客戶端進行辦公時,業(yè)務(wù)應(yīng)用服務(wù)器與電腦客戶端之間通過HTTP應(yīng)用層協(xié)議進行數(shù)據(jù)交換,完成移動化辦公,手機客戶端具有鏡像代理、本地資源代理、信息推送代理和離線應(yīng)用等功能。當(dāng)采用手機客戶端進行辦公時,根據(jù)是否需要辦公人員進行數(shù)據(jù)編輯和操作,通過不同的途徑進行移動辦公。當(dāng)僅向客戶端下達簡單的離線命令和數(shù)據(jù)時,例如通知、公文等發(fā)布,業(yè)務(wù)應(yīng)用服務(wù)器先與異步信息服務(wù)器之間進行數(shù)據(jù)交換,然后在通過異步信息服務(wù)器與手機客戶端之間完成數(shù)據(jù)交換;若相應(yīng)的工作任務(wù)需要辦公人員在手機客戶端完成相應(yīng)操作時,比如信息補充、表格填寫等,則業(yè)務(wù)應(yīng)用服務(wù)器將相應(yīng)的數(shù)據(jù)信息傳遞到下載服務(wù)器,手機客戶端由下載服務(wù)器獲得相應(yīng)數(shù)據(jù);辦公人員在手機客戶端完成工作任務(wù)后,數(shù)據(jù)上傳至上傳服務(wù)器,其中包括實時數(shù)據(jù)和離線數(shù)據(jù),最終再由上傳服務(wù)器上傳至業(yè)務(wù)應(yīng)用服務(wù)器。利用手機客戶端進行移動辦公時,業(yè)務(wù)應(yīng)用服務(wù)器與手機客戶端之間是通過鏡像通道協(xié)議完成數(shù)據(jù)以及信息的交換的。
圖2 虛擬化移動辦公系統(tǒng)的硬件結(jié)構(gòu)
本虛擬化移動辦公系統(tǒng)具有6個控制點,分別為移動終端、防火墻、移動應(yīng)用發(fā)布平臺、網(wǎng)閘、內(nèi)網(wǎng)和應(yīng)用服務(wù)器(圖3)。每一個控制點均設(shè)置了安全控制點,每個安全控制點均具有1個,甚至是多個安全控制功能。根據(jù)控制點所處安全域的不同,本虛擬化移動辦公系統(tǒng)可分割為3個區(qū)域,分別為內(nèi)部域,包含了內(nèi)網(wǎng)控制點和應(yīng)用服務(wù)器控制點;接入域,包含了防火墻控制點、移動應(yīng)用發(fā)布平臺控制點和網(wǎng)閘控制點;移動域,主要包含了移動終端控制點。
圖3 虛擬化移動辦公系統(tǒng)的安全架構(gòu)
移動終端控制點可以依據(jù)手機號碼對終端準入進行設(shè)置。當(dāng)移動終端對移動專網(wǎng)發(fā)出準入申請時,控制點需要獲取該移動終端的手機號碼,并核實該號碼在數(shù)據(jù)庫的數(shù)據(jù)中是否存在。如果存在,則下達準入命令;如果不存在,則拒絕該終端接入。移動終端控制點在終端接入移動專網(wǎng)時對其合法性進行了有效的控制。防火墻控制點主要是對移動域和接入域之間的信息交互進行控制,一般情況下,只有移動終端對移動應(yīng)用發(fā)布平臺主動發(fā)起通信時,防火墻控制點允許網(wǎng)絡(luò)通信;否則,拒絕網(wǎng)絡(luò)通信。移動應(yīng)用發(fā)布平臺控制點的主要作用是中止移動終端的接入請求。主要以2種方式進行:其一,移動終端的接入請求在移動應(yīng)用發(fā)布平臺控制點被中止,然后建立移動應(yīng)用發(fā)布平臺與應(yīng)用服務(wù)器的網(wǎng)絡(luò)通信;其二,移動應(yīng)用發(fā)布平臺與移動終端之間通信協(xié)議為鏡像通道協(xié)議,二者之間的通信協(xié)議在移動應(yīng)用發(fā)布平臺控制點轉(zhuǎn)換為HTTP通信協(xié)議,建立移動應(yīng)用發(fā)布平臺與應(yīng)用服務(wù)器的網(wǎng)絡(luò)通信。網(wǎng)閘控制點是對接入域和內(nèi)部域之間的網(wǎng)絡(luò)通信安全進行控制。通常情況下,網(wǎng)閘允許移動應(yīng)用發(fā)布平臺主動對應(yīng)用服務(wù)器發(fā)起的通信,但不允許移動應(yīng)用發(fā)布平臺直接與應(yīng)用服務(wù)器通信。移動應(yīng)用發(fā)布平臺與網(wǎng)閘之間先建立網(wǎng)絡(luò)通信,將信息和數(shù)據(jù)傳送給網(wǎng)閘;然后網(wǎng)閘斷開與移動應(yīng)用發(fā)布平臺之間的連接,再將數(shù)據(jù)和信息傳遞給應(yīng)用服務(wù)器。內(nèi)網(wǎng)控制點和應(yīng)用服務(wù)器控制點均屬于內(nèi)部域,一般情況下不允許與接入域和移動域之間發(fā)生直接的信息交換,當(dāng)網(wǎng)閘主動向應(yīng)用服務(wù)器發(fā)起接入請求時,內(nèi)網(wǎng)控制點和應(yīng)用服務(wù)器控制點允許接入,其他情況下拒絕接入。本系統(tǒng)通過對安全與和安全控制點的分割,采用多層次的安全控制手段,極大程度保障了本虛擬化移動辦公系統(tǒng)的安全管理。
本虛擬化移動辦公系統(tǒng)的虛擬化技術(shù)是基于MIPS構(gòu)建了多層虛擬地址模型。如圖4所示,本系統(tǒng)所構(gòu)造的虛擬地址分為3層,分別為上層的User Processes層,包括Guest User和Host User進程;中間層為Guest OS;下層為Host Hypervisor層。其中,User Processes層和User OS層均需要進行MMU地址映射,Host Hypervisor層則不需要。該虛擬地址模型建立在最大程度上利用了MIPS的架構(gòu)優(yōu)勢。當(dāng)系統(tǒng)發(fā)生VM_exit時,其處理器的控制權(quán)則由Guest OS層交到Host Hypervisor層。此時,刷新TLB,進入Host Hypervisor異常處理函數(shù)執(zhí)行。與傳統(tǒng)的虛擬地址空間模型相比,本系統(tǒng)所建立的虛擬地址空間模型進行VM_exit處理效率更高。
圖4 虛擬空間地址分配
本系統(tǒng)將ASID劃分為Vcpuid和Pid 2個部分。其中,Vcpuid部分用作標(biāo)識Vcpu,Pid部分用作標(biāo)識不同Vcpu上運行的User Processes。Vcpuid和Pid所占的ASID位數(shù)分別為
(1)
式中,M為ASID的位數(shù),n為Vcpu數(shù)目,Ni為第i個Vcpu上運行的User Processes個數(shù),Vcpuid和Pid最佳比為lnn/lbNi。
本系統(tǒng)的ASID劃分法為動態(tài)劃分法,Host Hypervisor啟動后,由ASID.file中調(diào)取X值,那么此時Vcpuid的位數(shù)為X,Pid的位數(shù)為M-X。運行過程,若產(chǎn)生Vcpu,則n值更新;若第i個Vcpu上運行的User Processes個數(shù)發(fā)生變化,則更新Ni。若n值和Ni值滿足下列條件,則觸發(fā)X值重新計算模塊,如式(2):
(2)
X值重新計算模塊觸發(fā)后,基于當(dāng)前的n值和Ni值,計算當(dāng)X從1變化至M-1時每種情況下的xv和xi。Vcpu在單位時間內(nèi)的調(diào)度次數(shù)則為2m/2X×xv次,Vcpu上運行的User Processes調(diào)度次數(shù)則為2m+1/2M-X×xi次。單位時間內(nèi),TLB的刷新次數(shù)則為式(3):
(3)
當(dāng)X∈[1,M-1]時,可計算出M-1個TLB flash(X)的值,即TLB flash(1),TLB flash(2),…,TLB flash(i)…,TLB flash(M-1)。當(dāng)TLB flash(X)的值最小時,代表發(fā)生TLB刷新的次數(shù)最少,則對應(yīng)的X值則為最佳X值。此時Host Hypervisor刷新TLB并對ASID進行重新分配Vcpuid的位數(shù)和Pid的位數(shù)。另外,最佳X值還會儲存到ASID.file中,下一次Host Hypervisor啟動時,直接調(diào)取最佳X值。
X值的計算方法為近似計算方法。假設(shè)Vcpu在單位時間內(nèi)的調(diào)度次數(shù)為2m次,Vcpu上運行的User Processes調(diào)度次數(shù)為2m+1次。用變量xv來標(biāo)識Vcpu的調(diào)度會否引起TLB的刷新,用xi來表示Vcpu上運行的User Processes調(diào)度是否會引起TLB的刷新,則計算方法如式(4):
(4)
本虛擬化移動辦公系統(tǒng)具有一系列的優(yōu)異性能,例如廣泛的適配性、高效性、安全性等。
第一,適配性。本虛擬化移動辦公系統(tǒng)針對不同的操作系統(tǒng)建立了相應(yīng)的移動平臺,支持Android系統(tǒng)、iOS系統(tǒng)、Windows系統(tǒng)的智能手機、平板電腦、便攜式電腦等。另外,本系統(tǒng)還可以實現(xiàn)跨平臺的數(shù)據(jù)交互。另外,通過虛擬化窗體展現(xiàn)和管理模塊,本平臺還適用于各種不同像素設(shè)計的應(yīng)用界面。利用自適配引擎對虛擬化窗體進行尺寸調(diào)整,既可以用于尺寸較大的便攜式電腦和平板電腦,也適用于尺寸較小的智能手機。
第二,高效性。該虛擬化辦公系統(tǒng)中所有的辦公工作任務(wù)都是在內(nèi)網(wǎng)中進行的;而且,信息傳遞過程中,數(shù)據(jù)會經(jīng)過壓縮處理,流量穩(wěn)定,數(shù)據(jù)傳輸快,信息交互效率較高。另外,辦公人員進行工作處理時,相應(yīng)的操作是在服務(wù)器設(shè)備上完成,不會受到終端處理能力的限制。
第三,安全性。安全性是本虛擬化技術(shù)辦公系統(tǒng)的最突出的特點。由于虛擬化技術(shù)是利用虛擬通道建立平臺服務(wù)器端和客戶端之間的信息和數(shù)據(jù)交互,應(yīng)用服務(wù)器與安全平臺之間的數(shù)據(jù)傳輸在企事業(yè)單位的防火墻內(nèi)運行;處于外網(wǎng)的移動終端僅可以進行屏幕操作、鍵盤操作和鼠標(biāo)操作,不會涉及企業(yè)事業(yè)的涉密數(shù)據(jù);本系統(tǒng)涉及了身份認證模塊,進行嚴格的權(quán)限管理,一般用戶無法訪問和編輯內(nèi)部數(shù)據(jù);企事業(yè)單位的內(nèi)部數(shù)據(jù)是儲存在服務(wù)器上,因此即便手機終端或電腦終端受到了病毒攻擊,也不會造成整個系統(tǒng)數(shù)據(jù)的泄密或丟失;而且,虛擬化通道是利用ICA協(xié)議建立的,同時還利用SecurelCA對數(shù)據(jù)傳輸過程進行了128位安全加密。以上的幾個方面的特點均保證了本系統(tǒng)的安全性。
本研究設(shè)計了一種基于虛擬化技術(shù)的移動辦公系統(tǒng)。該系統(tǒng)的整體架構(gòu)包括平臺管理模塊、身份認證模塊、應(yīng)用發(fā)布模塊、虛擬化模塊、虛擬化窗體展現(xiàn)、管理模塊、Web瀏覽器、電腦客戶端軟件和手機客戶端軟件,可用于Windows系統(tǒng)、Android系統(tǒng)和iOS系統(tǒng)的移動終端。該移動辦公系統(tǒng)具有強大的適配性、高效性和安全性。該系統(tǒng)通過6個控制點和3個控制區(qū)域進行安全控制,虛擬地址空間基于MIPS和ASID動態(tài)劃分進行建立。內(nèi)部數(shù)據(jù)平臺與外部客戶端之間利用ICA協(xié)議建立虛擬數(shù)據(jù)通道,同時利用SecurelCA進行數(shù)據(jù)加密,完善了系統(tǒng)的安全管理。該系統(tǒng)利用多節(jié)點安全控制,在一定程度上降低了辦公效率,后續(xù)的研究中應(yīng)進一步采取更有效的加密手段,減少節(jié)點控制數(shù)量。