◆李少杰 周 剛 王 理
?
VMware Horizon系統(tǒng)架構(gòu)及身份認(rèn)證機(jī)制分析
◆李少杰 周 剛 王 理
(解放軍信息工程大學(xué) 河南 450000)
VMware Horizon是VMware公司研發(fā)的一款基于多操作系統(tǒng)、提供虛擬桌面及應(yīng)用服務(wù)的云軟件解決方案,用戶眾多且市場占有率高,,研究其系統(tǒng)架構(gòu)并分析其身份認(rèn)證方式十分必要。本文通過搭建VMware Horizon解決方案的模擬實(shí)驗(yàn)環(huán)境,對(duì)其系統(tǒng)組件的作用與功能進(jìn)行介紹,并對(duì)其登錄的身份認(rèn)證機(jī)制進(jìn)行分析,最后對(duì)其安全性進(jìn)行總結(jié)。
VMware Horizon;系統(tǒng)架構(gòu);身份認(rèn)證
隨著信息技術(shù)的高速發(fā)展,集成電路的集成度越來越高,體積越來越小,性能成倍增長,但是計(jì)算機(jī)軟件系統(tǒng)的發(fā)展速度卻遠(yuǎn)遠(yuǎn)不能滿足人們對(duì)硬件利用率的需求。虛擬化桌面不但能夠極大地提高計(jì)算機(jī)資源的利用率,降低企業(yè)成本,而且還能提高管理效率,帶來更好的安全性與穩(wěn)定性。自2014年以來至今,隨著VMware Horizon系列產(chǎn)品的推出,VMware公司在虛擬化桌面的道路上進(jìn)入了強(qiáng)有力的競爭軌道[1]。
VMware Horizon是美國VMware公司研發(fā)的一款云軟件解決方案,用戶能夠基于各個(gè)操作系統(tǒng)對(duì)虛擬桌面及應(yīng)用進(jìn)行訪問。它還可以使用HTML5瀏覽器遠(yuǎn)程登錄訪問,無須安裝客戶端軟件。它以虛擬工作空間的方式提供具有彈性的桌面服務(wù),為用戶體驗(yàn)、管理和服務(wù)帶來便利[2]。
VMware部署的桌面虛擬化設(shè)施用戶眾多,不僅局限于設(shè)計(jì)及醫(yī)療行業(yè),現(xiàn)在已經(jīng)廣泛應(yīng)用部署于如企業(yè)、金融、運(yùn)營商等行業(yè)中,是未來的發(fā)展趨勢(shì)。因此,對(duì)其系統(tǒng)架構(gòu)以及身份認(rèn)證機(jī)制進(jìn)行了解,并對(duì)其安全性進(jìn)行分析十分必要。
VMware Horizon云網(wǎng)絡(luò)的系統(tǒng)架構(gòu)較為龐大,組件種類多,網(wǎng)絡(luò)通信協(xié)議復(fù)雜[3]。該解決方案部署在vSphere基礎(chǔ)之上,主要組件包含如下:AD、Connection Server、Security Server、Composer、SQL Server、vCenter Server、Horizon View Client、Vapp Server、Virtual Desktop以及View Agent[4]。簡單架構(gòu)部署示意圖如圖1。
圖1 VMware Horizon系統(tǒng)架構(gòu)示意圖
Horizon View Client:用于訪問Horizon View虛擬桌面或者應(yīng)用的客戶端軟件,可以支持Windows、linux、Mac操作系統(tǒng)的計(jì)算機(jī)或筆記本電腦,通過配置html access服務(wù)端可以利用Web頁面進(jìn)行訪問。
Security Server:安全服務(wù)器,位于DMZ區(qū)域,用于防止DOS攻擊并提供安全防護(hù);
Connection Server:連接服務(wù)器,相當(dāng)于客戶端連接的代理服務(wù)器;
Composer:服務(wù)器用于從虛擬桌面模板集中克隆出多個(gè)虛擬桌面;
vCenter Server:用于管理連接到網(wǎng)絡(luò)所有組件的VMware ESXi服務(wù)器;
AD:域控服務(wù)器,上面安裝有Active Directory,用于對(duì)用戶進(jìn)行身份認(rèn)證;
SQL Server:數(shù)據(jù)庫服務(wù)器,用于集中管理系統(tǒng)日志、vCenter和Composer中的日志;
View Agent:安裝于每個(gè)終端虛擬主機(jī)上,用于與連接服務(wù)器和安全服務(wù)器內(nèi)部通信使用,提供虛擬應(yīng)用和桌面;
Vapp Server和Virtual Desktop:虛擬應(yīng)用服務(wù)器和虛擬桌面,用于為用戶提供個(gè)人的虛擬應(yīng)用及桌面服務(wù),需要提供口令或智能卡進(jìn)行身份認(rèn)證后使用。
以上均為VMware Horizon View的基礎(chǔ)組件,在實(shí)際部署過程中云網(wǎng)絡(luò)中還會(huì)添加CA證書服務(wù)器、Horizon Workstation、ThinApp、防火墻、備份服務(wù)器等其他組件。
VMware Horizon云網(wǎng)絡(luò)的網(wǎng)絡(luò)架構(gòu)可以分為外網(wǎng)、DMZ區(qū)和內(nèi)網(wǎng)??蛻舳宋挥谕獠烤W(wǎng)絡(luò),安全服務(wù)器位于DMZ區(qū),需要配置雙網(wǎng)卡,其余組件全部放在內(nèi)部網(wǎng)絡(luò)之中。DMZ區(qū)起到了安全防護(hù)以及負(fù)載平衡的作用。外網(wǎng)接入內(nèi)網(wǎng)的網(wǎng)絡(luò)數(shù)據(jù)由TLS協(xié)議以及PCoIP協(xié)議加密傳輸,網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)整體安全可靠[5]。其網(wǎng)絡(luò)架構(gòu)及通信示意圖如圖2。
圖2 Horizon網(wǎng)絡(luò)架構(gòu)及通信示意圖
① Horizon View客戶端或者瀏覽器通過TCP 443端口(HTTPS)從外網(wǎng)接入DMZ區(qū)域中的Security Server,二者之間網(wǎng)絡(luò)數(shù)據(jù)通過TLS協(xié)議加密傳輸,能夠保證數(shù)據(jù)通信安全,DMZ區(qū)域中的Security Server起到安全防護(hù)以及負(fù)載平衡的作用。
②客戶端認(rèn)證通過后登錄成功,開始使用虛擬桌面及應(yīng)用。此時(shí)通信數(shù)據(jù)在TCP 4172端口上建立PCoIP連接,此過程是PCoIP連接的會(huì)話握手階段。
③握手成功后,在UDP 4172端口上為Horizon View Client和服務(wù)器之間建立雙向PCoIP連接傳輸ESP加密數(shù)據(jù)。此后用戶可以安全使用虛擬桌面及應(yīng)用。
④在Horizon View管理端也可以設(shè)置使用Blast Extreme協(xié)議[6]。此協(xié)議先通過TCP 443端口接入Blast安全網(wǎng)關(guān),認(rèn)證通過后與View Agent通過TCP 22443端口建立Blast安全網(wǎng)關(guān)連接,握手成功后通過UDP 22443端口傳輸加密數(shù)據(jù)。最后Blast安全網(wǎng)關(guān)使用UDP 8443端口回傳給客戶端。如不特殊設(shè)置系統(tǒng)默認(rèn)使用PCoIP協(xié)議。
⑤瀏覽器在身份認(rèn)證成功后,直接通過TLS協(xié)議與View Agent建立連接,握手成功后使用④過程中Blast Extreme協(xié)議進(jìn)行后續(xù)加密通信。
Security Server服務(wù)器中PCoIP安全網(wǎng)關(guān)、Blast安全網(wǎng)關(guān)以及HTTPS Server為安全服務(wù)器內(nèi)開啟的服務(wù)程序,Horizon View Agent為終端主機(jī)中虛擬桌面及應(yīng)用服務(wù)器開啟的服務(wù)程序[7]。
VMware Horizon云網(wǎng)絡(luò)采用兩層身份認(rèn)證機(jī)制[8],第一層應(yīng)用于用戶接入層與應(yīng)用交付層之間,第二層應(yīng)用于應(yīng)用交付層與核心應(yīng)用層之間。各層之間使用防火墻嚴(yán)格隔離,只開放訪問必需的端口。
第一層通常選用用戶口令認(rèn)證、智能卡認(rèn)證或一次性口令認(rèn)證。接入層是云網(wǎng)絡(luò)的最外層,用戶向服務(wù)端請(qǐng)求的操作會(huì)通過接入層的負(fù)載均衡功能實(shí)現(xiàn)自動(dòng)分配,而用戶在服務(wù)端的執(zhí)行結(jié)果也會(huì)通過此層以加密的方式回傳給用戶。該層的身份認(rèn)證機(jī)制主要用于解決網(wǎng)絡(luò)的接入問題。
第二層為Cookie票據(jù)認(rèn)證,客戶端需要發(fā)送攜帶JSESSIONID值的Cookie票據(jù)實(shí)現(xiàn)身份認(rèn)證。當(dāng)?shù)谝粚诱J(rèn)證通過后,服務(wù)器會(huì)臨時(shí)產(chǎn)生JSESSIONID值,并通過Cookie票據(jù)發(fā)送給客戶端??蛻舳撕罄m(xù)的服務(wù)請(qǐng)求將攜帶含有JSESSIONID值的Cookie信息作為身份憑據(jù)。VMware Horizon云網(wǎng)絡(luò)身份認(rèn)證過程如圖3所示:
圖3 VMware Horizon云網(wǎng)絡(luò)身份認(rèn)證示意圖
①客戶端用戶從外部網(wǎng)絡(luò)接入云網(wǎng)絡(luò)時(shí),需要輸入用戶口令、插入智能卡或者輸入一次性口令進(jìn)行身份認(rèn)證。此通信數(shù)據(jù)通過TLS協(xié)議加密傳輸;
②認(rèn)證數(shù)據(jù)經(jīng)過安全服務(wù)器和連接服務(wù)器,傳入域控服務(wù)器中進(jìn)行身份認(rèn)證,認(rèn)證方式采用標(biāo)準(zhǔn)Kerberos協(xié)議。若是智能卡或者一次性口令認(rèn)證方式,則是安全服務(wù)器充當(dāng)認(rèn)證作用;
③身份認(rèn)證通過后,會(huì)由連接服務(wù)器充當(dāng)認(rèn)證服務(wù)器向客戶端返回帶有32字節(jié)JSESSIONID值的票據(jù);
④客戶端拿到票據(jù)后,便可使用該票據(jù)進(jìn)行對(duì)核心應(yīng)用層的訪問。
VMware Horizon作為廣泛部署使用的云辦公信息系統(tǒng),具有如下安全性特點(diǎn)[9]:
(1)采用虛擬化結(jié)構(gòu),云客戶端權(quán)限低、資源少,使得傳統(tǒng)基于物理主機(jī)攻擊技術(shù)方法難以適用;
(2)具有中心化的日志審計(jì)、集中化的訪問控制、標(biāo)準(zhǔn)化的防護(hù)體系和專業(yè)化的網(wǎng)絡(luò)管理,使得網(wǎng)絡(luò)攻擊行為難以遁形;
(3)統(tǒng)一的訪問通道,認(rèn)證機(jī)制強(qiáng)、認(rèn)證要素多,身份認(rèn)證機(jī)制突破困難。
總而言之,VMware Horizon在系統(tǒng)架構(gòu)層面,架設(shè)DMZ區(qū),能夠很好地防止DOS攻擊,對(duì)木馬病毒起到安全隔離的作用。內(nèi)外網(wǎng)分離,并且中間配有防火墻,能夠很好阻擋外部的探測行為和攻擊行為。
身份認(rèn)證過程中用戶通過HTTPS協(xié)議訪問安全服務(wù)器,加密隧道使用TLS協(xié)議保護(hù),數(shù)據(jù)加密采用AES-128,密鑰交換采用ECDHE,成功登錄后應(yīng)用數(shù)據(jù)通過PCOIP協(xié)議加密傳輸。身份認(rèn)證環(huán)節(jié)設(shè)計(jì)嚴(yán)密,安全防護(hù)強(qiáng),算法強(qiáng)度高。
本文介紹了VMware Horizon云網(wǎng)絡(luò)的組成架構(gòu)與組件功能,網(wǎng)絡(luò)架構(gòu)與登錄通信協(xié)議,重點(diǎn)對(duì)身份認(rèn)證機(jī)制進(jìn)行研究,最后對(duì)其安全性進(jìn)行總結(jié)分析。
[1]Durand S, Pase W. The Virtual Desktop: Options and Challenges in Selecting a Secure Desktop Infrastructure Based on Virtualization[J],2011.
[2]王春海.全面掌控VMware Horizon View——準(zhǔn)備實(shí)驗(yàn)環(huán)境[J].網(wǎng)絡(luò)運(yùn)維與管理,2014.
[3]Von Oven P. VMware Horizon View Essentials[M]. Packt Publishing Ltd, 2014.
[4]吳孔輝.VMware Horizon桌面與應(yīng)用虛擬化權(quán)威指南:VMware Horizon desktop and application virtualizationessential guide[M].機(jī)械工業(yè)出版社,2015.
[5]李洪南.基于VMware Horizon Suite的桌面虛擬化的研究與實(shí)現(xiàn)[D].中國地質(zhì)大學(xué)(北京),2013.
[6]SurksumK V.Tech:Network port diagram for Horizon View[J],2013.
[7]Ventresco J. Implementing VMware Horizon View 5.2[M]. Packt Publishing Ltd, 2013.
[8]Li H, Dai Y, Tian L, et al. Identity-based authentication for cloud computing[C]//IEEE International Conference on Cloud Computing. Springer, Berlin, Heidelberg, 2009.
[9]向軍,張恩剛,張沛等.桌面虛擬化技術(shù)研究[J].中國信息界,2010.