微軟虛擬服務(wù)器安全:十項技巧與設(shè)置
原創(chuàng)虛擬化為那些盡力使服務(wù)器數(shù)量跟上業(yè)務(wù)壓力增長的企業(yè)管理人員及工程師們創(chuàng)造了巨大的實用價值。它使硬件資源得到最大程度的利用,同時讓企業(yè)設(shè)計及實施新方案的過程變得更為靈活。然而,虛擬化的逐步推進也帶來了一些相關(guān)的安全問題。
微軟的服務(wù)器虛擬化技術(shù)能夠很容易地通過正確的規(guī)范及處理方式來確保其安全性。而相關(guān)應(yīng)用標準與IT專業(yè)人士的有效努力則可以進一步將安全體系打造得固若金湯。
基礎(chǔ)知識
在我們開始之前,首先需要確定一點,也就是我們已經(jīng)足夠了解本文中將會涉及到的微軟服務(wù)器虛擬化技術(shù)。請看圖一。
圖一:微軟服務(wù)器虛擬化組件
主機操作系統(tǒng)
一個虛擬化的硬件平臺需要一套由系統(tǒng)工程師加裝了虛擬化組件的基礎(chǔ)性操作系統(tǒng)(即OS)。在Windows Server 2008 R2環(huán)境中,所需要的是64位的標準化服務(wù)器、企業(yè)或者數(shù)據(jù)中心??傊词且惶讟藴驶难b置、要么是一套具備服務(wù)核心的執(zhí)行設(shè)備。在本文稍后的部分中,我們會看到大家選擇的執(zhí)行設(shè)備如何對安全性造成影響。
Hyper-V
虛擬機上始終具備一套虛擬機管理系統(tǒng),它記錄著主機服務(wù)器的硬件信息。微軟將這套管理系統(tǒng)命名為Hyper-V。這是一套非常小巧的底層工具,用以完成下列任務(wù)(詳見圖二)
◇ 優(yōu)化虛擬機的中斷調(diào)用指令
◇ 對共享內(nèi)存進行管理
◇ 一般來說,它使虛擬機無需通過主機操作系統(tǒng)即可實現(xiàn)對系統(tǒng)資源的調(diào)用,同時也管理著配置中指定分配給操作系統(tǒng)的資源
它絕對不會運行除上述功能以外的任何其它進程。舉例來說,它不會運行第三方驅(qū)動程序。由Hyper-V所提供的小規(guī)模攻擊防御層本身可以被視為一種不折不扣的安全掌控機制。Hyper-V及其相關(guān)管理文件被作為Hyper-V服務(wù)的一部分安裝在主機上。
圖二:微軟虛擬化服務(wù)器(簡稱微軟MSDN,2011)
分區(qū)
各個分區(qū)由虛擬環(huán)境內(nèi)部的諸多操作單元加以分割。根據(jù)微軟MSDN(2011)中的描述,“每個分區(qū)都是一個獨立的邏輯單元,由虛擬機管理器進行支持,而操作系統(tǒng)則運行于分區(qū)之中”(見第二節(jié))。而另一種更表面化的定義是:分區(qū)是那些次級操作系統(tǒng)執(zhí)行時所處的區(qū)域。然而,并非所有分區(qū)都有對等的優(yōu)先級。
Windows 服務(wù)器中的主(又稱‘母’)分區(qū)(簡稱RP)就是這樣一種強制性的實體。虛擬化堆棧就存放在這里,而系統(tǒng)管理員則通過它對虛擬機項目進行創(chuàng)建、啟動、停止以及管理。而它與子分區(qū)的區(qū)別在于,它能夠直接訪問硬件資源(摘自微軟MSDN,2011)。盡管主分區(qū)如此重要,但生產(chǎn)系統(tǒng)卻并不運行于其中。這是子分區(qū)所要負責解決的問題。
子(或稱為次級)分區(qū)(簡稱CP)包含生產(chǎn)系統(tǒng)以及操作系統(tǒng),正如常見的硬件所扮演的角色。而不同之處在于這些子分區(qū)沒有足夠的權(quán)限來直接訪問由底層硬件平臺所提供的資源。換句話來說,“它們具備一種虛擬化的處理外觀,并運行于為每個子分區(qū)單獨分配的虛擬內(nèi)存地址之中”(摘自微軟MSDN,2011,第四節(jié))。主分區(qū)以及虛擬機管理器能夠?qū)崿F(xiàn)對內(nèi)部及外部資源的調(diào)用,包括來自物理網(wǎng)絡(luò)連接上的各類資源。
我們當然可以進一步挖掘微軟虛擬機中所應(yīng)用的各種服務(wù)功能及端口,但這種比較深入的話題會引發(fā)更多關(guān)于Hyper-V及虛擬機的安全爭議。關(guān)于圖二中所描述的各組件的詳細信息,請參閱文章附帶的參考文獻。
縮小遭受攻擊的范圍
對于微軟虛擬服務(wù)器環(huán)境的攻擊可能針對以上談到的所有項目,包括全部支持文件以及驅(qū)動程序。然而,實際遭受攻擊的范圍取決于我們對下列步驟的執(zhí)行是否到位:
步驟1: 對主機進行強化
步驟2: 對管理系統(tǒng)以及虛擬機操作系統(tǒng)進行強化
步驟3: 確保全部用戶都以最低權(quán)限進行訪問
步驟4: 將管理員對于主機、主分區(qū)以及虛擬機管理系統(tǒng)的操作權(quán)限進行隔離
步驟5: 確保虛擬機文件,包括硬盤、備份以及歸檔的安全性
步驟6: 啟用審核機制
步驟7: 注意更新虛擬機歸檔文件補丁
步驟8: 使用VLAN及復數(shù)網(wǎng)卡對虛擬機訪問及管理系統(tǒng)加以隔離
步驟9: 利用虛擬網(wǎng)絡(luò)對同一臺主機上的諸多虛擬機進行隔離
步驟10: 控制虛擬化技術(shù)的應(yīng)用范圍
#p#
步驟 1:對主機進行強化
由硬件及操作系統(tǒng)所構(gòu)成的主機是虛擬機運行的基礎(chǔ),如圖一所示。而主機操作系統(tǒng)則受到微軟Windows Server中所固有的全部漏洞的影響,包括各類額外服務(wù)。降低主機遭受攻擊風險的最佳途徑是消除常見的漏洞。簡單來說,就是別安裝多余的組件。只保留一套單純的Windows Server核心是達成上述目標最理想的方式。
所謂Server核心是指最小化安裝Windows Server。根據(jù)微軟TechNet(2011)上的說法,Server核心所能完成的工作是:
| “…以消除所有那些在常用服務(wù)器上不必要的服務(wù)項目及功能。例如,域名系統(tǒng)(簡稱DNS)服務(wù)器的正常運行確實不需要安裝Windows IE瀏覽器來加以支持,因為出于安全原因考慮,我們不會希望使用DNS服務(wù)器來瀏覽網(wǎng)絡(luò)。而且DNS服務(wù)器甚至不需要圖形用戶界面(簡稱GUI),因為我們無論是采用功能強大的Dnscmd.exe命令行,或是通過遠程方式使用微軟DNS管理控制臺(簡稱MMC)中的管理單元,都可以對DNS實現(xiàn)幾乎全方位的操作”(摘自完全版對核心版,第二節(jié))。 |
但只安裝Server核心并非毫無影響。有些第三方驅(qū)動程序及服務(wù)可能會無法正常工作。如果這對你來說確實是個問題,那還是采用完整版本吧。
不過無論大家采用核心版還是完全版,一定記得利用良好的維護習慣對主機安全進行強化。想要了解更多服務(wù)器強化指南,請參閱微軟Server 2008 R2安全基準說明。
#p#
步驟 2:對管理系統(tǒng)及虛擬機操作系統(tǒng)進行強化
我們還必須對運行于主分區(qū)之中的管理操作系統(tǒng)(簡稱MOS)進行強化。管理操作系統(tǒng)是Windows Server上的另一款組件。它借由管理員權(quán)限對整個虛擬機運行環(huán)境進行管理。當我們討論必需的安全保障力度這一話題時,務(wù)必確保管理操作系統(tǒng)與其所在主機中諸多虛擬機上的敏感信息相匹配。在這里,仍然推薦大家參閱微軟Server 2008 R2安全基準說明。
除了管理操作系統(tǒng)之外,每套虛擬機操作系統(tǒng)都應(yīng)該得到同樣的安全重視度。根據(jù)建議為服務(wù)器操作系統(tǒng)及服務(wù)器角色進行相應(yīng)的安全配置。像對待你的物理服務(wù)器一樣認真維護每套虛擬機,將安全措施落實到位。
另外還要提到很重要的一點,即在安裝及配置殺毒軟件時,一定注意避免對下列內(nèi)容進行掃描:
◇ 虛擬機文件
◇ 程序文件 vmms.exe以及c:\Windows\System32 目錄下的vmwp.exe
如果不把上述文件排除在殺毒軟件的掃描范圍之外,有可能會對虛擬機本體造成不利影響。
最后要說的是,管理操作系統(tǒng)本身并非生產(chǎn)類服務(wù)項目。永遠不要通過它來運行商用軟件或者是瀏覽互聯(lián)網(wǎng)。必須將其嚴格作為虛擬機管理工具進行使用,同時也一定要限制應(yīng)用程序以及瀏覽器對虛擬運行服務(wù)器的訪問。
#p#
步驟 3: 確保全部用戶都以最低權(quán)限進行訪問
為了確保安全性及制約性,必須將管理職責進行分離,也就是說沒有哪個人能夠單獨執(zhí)行所有管理任務(wù)。舉例來說,Hyper-V管理員不應(yīng)該具備管理虛擬機的權(quán)限。微軟提供了三種預設(shè)的角色,以幫助用戶將關(guān)鍵性職責分別進行部署:
◇ Hyper-V 管理員——使用主分區(qū)中的管理操作系統(tǒng),這一角色具備相應(yīng)的權(quán)限,以對包括網(wǎng)絡(luò)及存儲配置在內(nèi)的基于主機的虛擬機上的全局信息進行修改。
◇ 委托管理員——這一角色負責對其所轄范圍內(nèi)的主機或主機群組提供額外的限制來保證其他管理員無法對上述設(shè)備進行管理操作。通過微軟的系統(tǒng)中心虛擬機管理工具(簡稱VMM),委托管理員能夠在被配給的任何主機上對虛擬機進行管理,但他們無法對該主機之外的企業(yè)服務(wù)進行訪問。
◇ 自助服務(wù)用戶——全局管理員可以通過虛擬機或者相關(guān)設(shè)置為這類用戶指定訪問權(quán)限。這種方式與委托管理員的區(qū)別在于,這類用戶所獲得的是虛擬機中的訪問權(quán)限,而非主機層面的控制權(quán)限。
#p#
步驟 4:將管理員對于主機、主分區(qū)以及虛擬機管理系統(tǒng)的操作權(quán)限進行隔離
此外,應(yīng)該考慮將主機物理安全管理員與Hyper-V管理員這兩個職位進行分別部署。換句話說,工程師需要對主機硬件及操作系統(tǒng)進行維護并不意味著他或她同時需要訪問管理操作系統(tǒng)。
在默認情況下,管理操作系統(tǒng)的本地管理員可以通過Hyper-V管理工具微軟管理控制臺(簡稱MMC)來對該系統(tǒng)進行訪問。另外,授權(quán)管理工具MMC管理單元同時提供了一系列細致的任務(wù)管理控制功能。微軟(2009)提供了操作功能列表(詳見下表),我們可以根據(jù)自己的職責范圍從中挑選實用的信息。
#p#
步驟 5:虛擬機文件安全保護
在默認情況下,虛擬機文件存儲于下列兩個文件夾中:
◇ %programdata%\Microsoft\Windows\Hyper-V\
◇ %users%\Public\Documents\Hyper-V\Virtual Hard Disks
需要格外注意的文件擴展名類型包括:.vhd,.vhdd,.vud以及.vsv。大家無論是打算把這些文件繼續(xù)存放在默認位置,還是想要將其移動到其它目錄中,都務(wù)必要參考以下條目以對它們加以保護:
◇ 使用訪問控制列表來確保各項服務(wù)及管理人員擁有的權(quán)限級別盡可能的低。其它類型的訪問則一律阻止。
◇ 對上面列出的文件夾或者是包含上述子目錄在內(nèi)的根目錄進行加密
◇ 確保對文件進行實時備份
◇ 啟用審核機制
在設(shè)置訪問控制時,請記住虛擬機管理員可能并不需要擁有全部虛擬機的訪問權(quán)限。對于每位管理員,只要分配給他或她其對應(yīng)管理的虛擬機文件就足夠了。
#p#
步驟 6:啟用審核機制
審核內(nèi)容包括文件訪問及系統(tǒng)監(jiān)控。Windows TechNet(2009)對于審核方針提出了一些可行的指導。所有與虛擬機相關(guān)的文件、主分區(qū)配置以及數(shù)據(jù)存儲都是審核的重點對象。除了文件訪問審核之外,還可以利用微軟系統(tǒng)中心操作管理工具或是類似的同類監(jiān)控工具對不必要的或是可能存在較高風險的操作行為進行警告提示。
步驟7: 注意為虛擬機歸檔文件更新補丁
物理設(shè)備與虛擬服務(wù)器需要相同的管理、邏輯以及物理控制——包括積極更新各類補丁。對運行中的虛擬機進行補丁更新非常簡單,其過程與為我們使用的其它應(yīng)用程序打補丁差不多。但如果要維護的虛擬機并不處于運行狀態(tài)下呢?
將沒有打過補丁的服務(wù)項目直接添加到實際執(zhí)行環(huán)境中永遠都不會是個好主意。然而,如果某套虛擬機已經(jīng)被我們封存了數(shù)個月,并很可能缺乏某些關(guān)鍵性的安全補丁,又該怎么處理?微軟TechNet對于這種情況提出了一種解決方案。
使用微軟的虛擬機維護工具(簡稱VMST)3.0,我們就能為任何虛擬機檔案文件進行更新及打補丁等操作了。這款工具的運行要求滿足下列條件之一:
◇ 系統(tǒng)中心虛擬機管理器 2008 R2
◇ 系統(tǒng)中心配置管理器 2007 SP2
◇ Windows Server 更新服務(wù) 3.0 SP2
圖三描述了打補丁/更新的過程,包括每個虛擬機歸檔文件的啟動、更新以及隨后的保存及釋放。
注意主機維護的要求。將該服務(wù)器部署于有限制的網(wǎng)段當中,并確保其安全性符合企業(yè)中最高級別的數(shù)據(jù)保護等級。
圖三:虛擬機維護工具工作流程
(微軟TechNet,2010,在虛擬機管理器索引中對離線虛擬機實施維護)
#p#
步驟 8: 使用VLAN及復數(shù)網(wǎng)卡對虛擬機訪問及管理系統(tǒng)加以隔離
虛擬環(huán)境中的隔離設(shè)備遵循網(wǎng)絡(luò)隔離的原則。網(wǎng)絡(luò)隔離只允許特定的流量數(shù)據(jù)傳輸至設(shè)備處。在虛擬環(huán)境下,要實施這種隔離措施有兩種方式:物理方式和虛擬方式。
配置主機的最后一步是將主機與其所負載的虛擬機同網(wǎng)絡(luò)相連接。然而,并非所有的網(wǎng)絡(luò)連接都是相同的。網(wǎng)絡(luò)隔離在確保只有經(jīng)過授權(quán)的流量內(nèi)容才會被傳輸至那些最敏感的區(qū)域方面作用顯著。這要求主機上至少裝有兩塊網(wǎng)卡。
從基礎(chǔ)層面來說,對管理操作系統(tǒng)的訪問必須在專門的隔離管理之下連接到復數(shù)網(wǎng)卡中的某一個上。通過物理VLAN,這一步驟很容易實現(xiàn),并且在防止未經(jīng)授權(quán)的訪問觸及Hyper-V配置方面提供了一道基本防線。而額外的一個或多個VLAN則可以通過剩余的網(wǎng)卡接入虛擬機。
圖四顯示了物理網(wǎng)卡的分配窗口。在對Hyper-V服務(wù)角色進行配置時,我們被要求為虛擬機或是管理操作系統(tǒng)分配一個網(wǎng)卡。而未經(jīng)檢查的網(wǎng)卡會被自動分配給管理操作系統(tǒng)。
圖四:網(wǎng)卡分配
#p#
步驟 9:利用虛擬網(wǎng)絡(luò)對同一臺主機上的諸多虛擬機進行隔離
為我們在前文中所選擇的每個網(wǎng)卡都創(chuàng)建對應(yīng)的虛擬交換機,如圖五所示。大家當然也可以根據(jù)Panek(2009)中的內(nèi)容自行配置。
“虛擬交換機有助于維持Hyper-V的安全性并對進入及發(fā)出虛擬機的網(wǎng)絡(luò)數(shù)據(jù)包進行控制。您可以對來自或發(fā)往某套虛擬機以及VLAN的交互信息進行限制。當您對網(wǎng)絡(luò)適配器進行設(shè)置時,您可以將某套虛擬交換機關(guān)聯(lián)至該適配器上”(摘自原文第98頁)。
Hyper-V管理員會為每套虛擬機創(chuàng)建一個或多個虛擬網(wǎng)卡,并將它們連入虛擬交換機端口當中。虛擬交換機的功能與物理交換機類似,包括允許創(chuàng)建VLAN來控制流量信息。我們能夠建立三種類型的虛擬網(wǎng)絡(luò):內(nèi)部網(wǎng)絡(luò)、外部網(wǎng)絡(luò)以及私人網(wǎng)絡(luò)。
◇ 內(nèi)部虛擬網(wǎng)絡(luò)無法訪問外界網(wǎng)絡(luò)。它們允許虛擬機之間以及虛擬機與主分區(qū)之間的交互聯(lián)系。內(nèi)部虛擬網(wǎng)絡(luò)不必綁定到物理網(wǎng)卡上,一般用來進行某些測試。
◇ 外部虛擬網(wǎng)絡(luò)允許虛擬機及管理操作系統(tǒng)通過物理網(wǎng)絡(luò)連接到物理服務(wù)器上。
◇ 私人虛擬網(wǎng)絡(luò)提供了一套細致的網(wǎng)絡(luò)劃分方案,允許管理員們控制同一臺主機上不同虛擬機之間所交互的流量內(nèi)容。處于同一臺主機上的諸多虛擬機并不需要總能互相連通。在這種情況下,記得將它們彼此隔離。
圖五:虛擬交換機
#p#
步驟 10:控制虛擬化技術(shù)的應(yīng)用范圍
虛擬化在提高生產(chǎn)力方面堪稱偉大…前提是不被濫用。然而,利用它來迅速部署服務(wù)器而不需變更管理流程聽起來的確具有巨大的誘惑力。一旦我們基于這樣的想法而引入了虛擬化體系,往往會放松對縮小受攻擊方面所采取的監(jiān)督力度。而接著隨著時間的推移,失去控制的虛擬化擴散所帶來的風險將遠遠大于其自身優(yōu)勢。
保持較低的應(yīng)用風險并不困難。確保任何接入網(wǎng)絡(luò)的服務(wù)器都能迅速被識別并驗證權(quán)限。建立一套規(guī)范,包括如何落實虛擬服務(wù)在管理規(guī)劃的變更方面受到嚴格保護。最后,與自己的工程師在工作中打成一片。風險擴散是完全可以通過采取正確的處理流程、控制、管理及嚴謹?shù)膽B(tài)度來加以克服的。
#p#
結(jié)論
微軟的Hyper-V技術(shù)在提高企業(yè)生產(chǎn)率方面的貢獻非常巨大。它在企業(yè)需要時提供靈活、彈性及反應(yīng)迅速的IT業(yè)務(wù)支持。在許多方面,一套安全規(guī)范都既適用于虛擬機,也同時適用于物理服務(wù)器。不過差別還是存在的。
對管理員職能進行分離以確保其以最低權(quán)限訪問虛擬機中的文件。這一點可能對于小型IT企業(yè)來說較難實現(xiàn),但請務(wù)必盡力確保物理服務(wù)器、管理操作系統(tǒng)以及虛擬機管理員這三個職位不會由同一位員工來負責。
在更新補丁時一定把虛擬機歸檔文件也納入考慮范疇。像對待運行中的服務(wù)器一樣對待這些文件。如果大家啟動虛擬化體系幾個月之久都沒有對它們加以管理,請馬上行動以確保這些文件都打上了最新的安全補丁以避免意外情況的發(fā)生。
利用物理及虛擬網(wǎng)絡(luò)分割來控制流量內(nèi)容及訪問請求。這包括使用虛擬交換機來對同一臺主機上的諸多虛擬機進行隔離。
最后,控制虛擬機的應(yīng)用范圍。將虛擬機創(chuàng)建、啟動以及關(guān)閉等操作整合進管理體系變更及網(wǎng)絡(luò)監(jiān)控流程當中。
原文名:Microsoft Virtual Server Security: 10 Tips and Settings 作者:Tom Olzak
【本文乃51CTO精選譯文,轉(zhuǎn)載請標明出處!】
【編輯推薦】
- 下載:微軟Hyper-V Server 2008 R2正式版
- Windows Server 2008 R2有效降低成本
- Windows Server 2008 R2:幫助您推動業(yè)績增長
- 實戰(zhàn):Hyper-V Server 2008 R2安裝、配置
- 七問Hyper-V Server 2008 R2
- 實戰(zhàn):Hyper-V Server 2008 R2故障排除
- System Center實戰(zhàn)之SCOM報警消息
- 云計算構(gòu)建基石之微軟Hyper-V:環(huán)境篇
- 云計算構(gòu)建基石之微軟Hyper-V:安裝篇(一)
【責任編輯:王勇 TEL:(010)68476606】


































