《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 虛擬化部署的安全思考
虛擬化部署的安全思考
cabling-system
cabling-system
摘要:   本文將圍繞部署Microsoft ISA Server和硬件虛擬化的Microsoft forefront TMG提供具體的指導(dǎo)方案,同時,強(qiáng)烈推薦你們認(rèn)真閱讀“相關(guān)參考資料”中提供的資料。
Abstract:
Key words :

  對服務(wù)器工作負(fù)載進(jìn)行虛擬化已經(jīng)成為越來越普遍的方法,能夠幫助更有效地利用計算機(jī)硬件以及輔助設(shè)備。虛擬化為數(shù)據(jù)中心管理員提供了很多好處,雖然需要適當(dāng)?shù)馗淖儎?chuàng)建和管理部署設(shè)備的方式。服務(wù)器應(yīng)用程序虛擬化是更為艱巨的任務(wù),因?yàn)樵诙鄠€服務(wù)器工作負(fù)載間適當(dāng)分配硬件存在復(fù)雜性。要將不能共存于同一臺機(jī)器的應(yīng)用程序在相同主機(jī)的多個子分區(qū)(Child partition)間進(jìn)行結(jié)合,確實(shí)存在規(guī)格和安全方面挑戰(zhàn)。同時,網(wǎng)絡(luò)虛擬化和母分區(qū)(Parent partition)失效時導(dǎo)致多個同步服務(wù)器失效的問題也帶來安全和可用性問題。

  本文將圍繞部署Microsoft ISA Server和硬件虛擬化的Microsoft forefront TMG提供具體的指導(dǎo)方案,同時,強(qiáng)烈推薦你們認(rèn)真閱讀“相關(guān)參考資料”中提供的資料。

  支持虛擬環(huán)境

  Microsoft ISA Server 和Forefront TMG只能在下列程序下得到硬件虛擬化的支持:

  ·Microsoft Support Lifecycle

  ·Microsoft ISA Server 系統(tǒng)要求

  ·Forefront TMG系統(tǒng)要求

  ·Microsoft Server Virtualization Validation Program (SVVP)

  ·Microsoft軟件在非Microsoft硬件虛擬化軟件上運(yùn)行的支持政策

  例如,如果硬件虛擬化平臺被列為“通過SVVP驗(yàn)證”(不是“評估中”),Microsoft ISA Server 和Forefront TMG將支持在該平臺上進(jìn)行生產(chǎn)用途,Microsoft Product Support Lifecycle、非Microsoft硬件虛擬化政策和相應(yīng)產(chǎn)品版本的系統(tǒng)要求中有使用限制。

  對于沒有列為“通過SVVP驗(yàn)證”的硬件虛擬化平臺,Microsoft ISA Server和Forefront TMG只能根據(jù)其他Microsoft支持政策得到支持,限制情況如下:

  ·Desktop virtualization,如Microsoft Virtual PC或者類似第三方產(chǎn)品:僅支持示范和教育用途

  ·Server Virtualization,如Microsoft Virtual Server 或者類似的第三方產(chǎn)品,支持生產(chǎn)用途,但不推薦

  重要提示:

  正如MSKB 897615中所指出的,微軟支持工程師在繼續(xù)檢查問題前,可能會要求客戶在真正硬件或者SVVP列表硬件虛擬化平臺上重現(xiàn)報道的問題,如果問題不能在硬件上或者相同級別的SVVP列表服務(wù)器虛擬化產(chǎn)品上重現(xiàn),那么問題可能會被轉(zhuǎn)移給第三方廠商產(chǎn)品支持。

  部署規(guī)劃

  任何外圍保護(hù)部署的主要部署標(biāo)準(zhǔn)都是安全、穩(wěn)定和性能,確定這三者的優(yōu)先順序都需要深入分析企業(yè)的LOB(業(yè)務(wù)線,line-of-business)應(yīng)用需求,一般需求和網(wǎng)絡(luò)安全需求以及所有法律規(guī)章等才能得出結(jié)論。雖然很難解決所有可能出現(xiàn)的問題,不過本文將概述最常見部署的關(guān)鍵問題。

  這是個不變的事實(shí),由于在虛擬機(jī)之間的資源共享,在專用硬件上運(yùn)行的服務(wù)器應(yīng)用程序?qū)仍陬愃铺摂M環(huán)境(相同數(shù)量相同等級的CPU,相同的內(nèi)存等)運(yùn)行的相同應(yīng)用程序效果更好。例如,流量處理負(fù)載可能會將基于硬件的ISA占到80%的CPU,可能會為同樣配置的虛擬ISA服務(wù)器產(chǎn)生一個拒絕服務(wù)(DoS),或者由于子分區(qū)工作量總量和其他子分區(qū)造成的資源停滯而使虛擬母分區(qū)工作量過度。

  這對于那些負(fù)責(zé)虛擬化服務(wù)器應(yīng)用程序的工程師而言,在很多情況下,為特定應(yīng)用程序的資源分配可能需要擴(kuò)展為虛擬機(jī)資源賬戶共享,而具體需要進(jìn)行怎樣的擴(kuò)展只能通過對規(guī)劃好的虛擬部署進(jìn)行測試才能確定。

  同樣的,還應(yīng)該對數(shù)據(jù)中心管理過程進(jìn)行重新檢測和重新定義,以解決因人為、軟件或者硬件原因?qū)е碌哪阜謪^(qū)內(nèi)多個子分區(qū)的損失問題。這種情況不僅會對重要的業(yè)務(wù)運(yùn)作帶來影響,還是一個潛在的安全問題,如果ISA Server 或者Forefront TMG代表某一個目前不可使用的子分區(qū)。

  定義流量剖析

  雖然為虛擬部署和硬件配置定義流量剖析并沒有什么不同,不過定義流量剖析(traffic profile)是很重要的過程,因?yàn)橐粋€子分區(qū)的資源需求可能會對在虛擬主機(jī)上運(yùn)行的其他分區(qū)的資源需求造成影響,特別是母分區(qū)。

  只有完全明確了流量剖析對部署計劃的影響,才能確定、評估并滿足ISA Server 和Forefront的性能需求和安全需求。 MSKB 832017 已經(jīng)為大部分基于windows系統(tǒng)的應(yīng)用程序以及微軟公司創(chuàng)建的應(yīng)用程序(包括ISA Server本身)定義了流量剖析,但是它并沒有為非微軟產(chǎn)品定義流量剖析。 在很多情況下可以做某些假設(shè),郵件服務(wù)器使用的是公共郵件協(xié)議,如 SMTP、POP3、 IMAP 或者甚至 HTTP(s)(如果能夠提供網(wǎng)絡(luò)郵件服務(wù))。如果你想要使用 ISA Server 或者Forefront TMG來控制自定義應(yīng)用程序流量,你可能需要向產(chǎn)品供應(yīng)商尋求幫助。 在某些情況下,你可能需要對應(yīng)用程序進(jìn)行測試,使用網(wǎng)絡(luò)分析工具來分析流量。

  流量剖析確定后,下一步就是確定每種應(yīng)用程序或者服務(wù)的流量負(fù)載。這個步驟也很關(guān)鍵,它能夠精確預(yù)測其對ISA Server或者Forefront TMG性能以及整個網(wǎng)絡(luò)容量的影響。你將需要對現(xiàn)有網(wǎng)絡(luò)部署進(jìn)行某種流量分析,從而熟悉現(xiàn)有流量負(fù)載并預(yù)測隨著公司發(fā)展流量需求將如何變化等問題。

  最佳方案:

  1. 在可能的位置,讓運(yùn)行ISA Server或者Forefront TMG的子分區(qū)的流量通過。這樣能夠幫助你控制網(wǎng)絡(luò)間的流量并檢測來自本地主機(jī)和遠(yuǎn)程主機(jī)的攻擊以及虛擬的和物理的攻擊。

  2. 避免使用 “allow all”規(guī)則。 如果應(yīng)用程序供應(yīng)商不能為你明確定義流量剖析,可以試試你喜歡的網(wǎng)絡(luò)捕捉工具,有時候也能派上用場。

  3. 將RPC和DCOM限定到特定端口。 在默認(rèn)情況下,當(dāng)相關(guān)服務(wù)器應(yīng)用程序啟動并請求連接和套接時,RPC和DCOM通常會暫時使用任何有效的端口。通過限制RPC和DCOM可用的端口范圍,你同樣可以限制可接受的流量剖析。

  定義安全范圍

  這個步驟涉及很多方面,還有一些基本要求,你必須讓所有安全、網(wǎng)絡(luò)、應(yīng)用程序等相關(guān)管理人員共同參與決議,這樣就能更加全面地分析技術(shù)需求等問題,另外還應(yīng)該考慮合規(guī)和審計問題。

  應(yīng)用程序安全

  應(yīng)該要避免混淆單個母分區(qū)內(nèi)不同安全層面的虛擬應(yīng)用程序或者服務(wù)器,特別是當(dāng)這些應(yīng)用程序或者服務(wù)器中涉及網(wǎng)絡(luò)外圍時。當(dāng)相鄰子分區(qū)或者母分區(qū)作為游戲服務(wù)器的主機(jī)時,應(yīng)該避免讓Exchange復(fù)雜化,這也是ISA和TMG能夠?yàn)橹鳈C(jī)間提供保護(hù)的另一位置。因?yàn)槲挥趩为?dú)母分區(qū)的子分區(qū)通常位于單獨(dú)網(wǎng)絡(luò), 你可以使用ISA或者TMG來隔離這些應(yīng)用程序(如果部署在專有硬件上)以實(shí)現(xiàn)更高的整體安全性。

  最佳方案:

  1. 在母分區(qū)安裝Windows Server 2008 Core。這樣就將攻擊面和修復(fù)需求限制到最低限度,由于Windows 2008 Core并不支持那些依賴于 Windows UI機(jī)制的應(yīng)用程序,這能夠幫助避免在母分區(qū)安裝不重要應(yīng)用程序。

  2. 特定母分區(qū)上的每個子分區(qū)應(yīng)該獲得同等安全保護(hù)。例如, 用戶從互聯(lián)網(wǎng)訪問的Exchange和SharePoint 子分區(qū)應(yīng)該盡量滿足相同的安全和訪問要求, 如果你將 Exchange和SharePoint 服務(wù)器以及游戲服務(wù)器作為子分區(qū)部署在相同的母分區(qū)上,就無法實(shí)現(xiàn)這一點(diǎn)。

  3. 母分區(qū)必須及時進(jìn)行漏洞修復(fù)。母分區(qū)上的漏洞可能會影響所有與其相關(guān)的區(qū)域。

  4. 每個子分區(qū)必須及時進(jìn)行漏洞修復(fù)。雖然未修復(fù)漏洞的子分區(qū)不會造成像母分區(qū)那么大的影響,但是如果受到漏洞攻擊的子分區(qū)訪問母分區(qū),就有可能對母分區(qū)帶來類似攻擊,并對所有客戶端造成威脅。

  5. 不要將母分區(qū)作為工作站使用。 母分區(qū)安裝和運(yùn)行的應(yīng)用程序越少,母分區(qū)面臨的攻擊威脅越小。 另外,如果你在母分區(qū)安裝Windows Server 2008 Core,能夠幫助控制威脅。

  6. 限制對母分區(qū)的訪問管理。 管理母分區(qū)訪問權(quán)的賬號擁有控制所有子分區(qū)的權(quán)限,下文中將詳細(xì)探討這個問題。

  7. 使用基于TPM的母分區(qū)以及BitLocker。 對母分區(qū)訪問控制力越強(qiáng),子分區(qū)就能得到越好的保護(hù)。

  網(wǎng)絡(luò)安全

  在虛擬環(huán)境大家最關(guān)注的問題就是如何管理子分區(qū)、母分區(qū)和物理網(wǎng)絡(luò)的通信流量。如果某客戶端有訪問任何物理網(wǎng)絡(luò)的直接權(quán)利,將會給相鄰子分區(qū)和母分區(qū)帶來很大的安全威脅,只有強(qiáng)行讓客戶端通過流量控制(如ISA Server 或者Forefront TMG)才能避免類似威脅。 在網(wǎng)絡(luò)中施加類似流量控制是網(wǎng)絡(luò)規(guī)劃中很重要的部分,而管理控制則更為重要。

  對ISA 或者TMG服務(wù)器流量的路由并不能簡單地通過將錯誤流量從通信路徑中移除而保證網(wǎng)絡(luò)的安全性,雖然這與數(shù)據(jù)中心的錯誤路徑網(wǎng)絡(luò)電纜沒什么區(qū)別,你必須考慮的是,在虛擬網(wǎng)絡(luò)中對于錯誤路由的流量并沒有明顯的指示, 而能夠很明顯地看出網(wǎng)絡(luò)電纜插入錯誤的物理路徑配線架或者交換機(jī)。 從這一點(diǎn)來看,區(qū)分錯誤流量路徑等相關(guān)問題其實(shí)是非常復(fù)雜和耗費(fèi)時間的,避免這種狀況發(fā)生的最佳做法就是定義并執(zhí)行非常明確的數(shù)據(jù)中心轉(zhuǎn)換控制政策和系統(tǒng)監(jiān)控/報告系統(tǒng)。

  最佳做法:

  1. 避免在沒有額外保護(hù)的情況下將母分區(qū)連接至互聯(lián)網(wǎng)。 雖然相比于windows之前版本,Windows Server 2008 過濾平臺(Filtering Platform)為我們提供了更加強(qiáng)大的主機(jī)防火墻,網(wǎng)絡(luò)安全最佳做法表明,應(yīng)該對網(wǎng)絡(luò)安全進(jìn)行分層,具體做法就是:在母分區(qū)連接與互聯(lián)網(wǎng)之間使用外部 layer-3過濾設(shè)備。位于獨(dú)立物理主機(jī)上的ISA Server或者Forefront TMG能夠很好地幫助實(shí)現(xiàn)這一目的。

  2. 避免將母分區(qū)連接到任何虛擬網(wǎng)絡(luò),除非是非常有必要的情況下。 因?yàn)槟阜謪^(qū)是保持子分區(qū)正常運(yùn)行的關(guān)鍵,而母分區(qū)可能至少使用一個物理網(wǎng)絡(luò),向母分區(qū)提供的子分區(qū)接入點(diǎn)越少越好。例如, 母分區(qū)是無法看到Hyper-V “Local”虛擬網(wǎng)絡(luò)的,因此可以把該網(wǎng)絡(luò)作為只能由連接的子分區(qū)使用的隔離邊界網(wǎng)絡(luò)。

  3. 避免在多個客戶端間共享相同的互聯(lián)網(wǎng)虛擬交換機(jī)連接。 如果你的游戲服務(wù)器子分區(qū)與ISA / TMG子分區(qū)共享互聯(lián)網(wǎng)連接,就很難確保網(wǎng)絡(luò)流量的安全性, 最好就是任何需要互聯(lián)網(wǎng)訪問的子分區(qū)必須通過 ISA / TMG子分區(qū)來訪問網(wǎng)絡(luò)。

  4. 避免在同一個母分區(qū)整合周邊網(wǎng)絡(luò)和設(shè)備 在任何部署中,對周邊網(wǎng)絡(luò)的使用都是為了在不同信任級別間的網(wǎng)絡(luò)創(chuàng)建安全分界。如果將所有這些機(jī)器和網(wǎng)絡(luò)放在相同的母分區(qū) ,就很可能無意中通過一個或者多個母分區(qū)虛擬網(wǎng)絡(luò)連接或者將服務(wù)器分配給錯誤的虛擬網(wǎng)絡(luò)等情況下,在這些安全分界中搭建連接。

  5. 避免為了簡化虛擬網(wǎng)絡(luò)設(shè)計而破壞了周邊網(wǎng)絡(luò)設(shè)計。 創(chuàng)建周邊網(wǎng)絡(luò)設(shè)計的目的是為了滿足多種資源的需求,如果硬件中的設(shè)計受到破壞虛擬網(wǎng)絡(luò)的設(shè)計必然也將被破壞。

  母分區(qū)

  不管虛擬部署放置在邊緣還是中心位置,母分區(qū)都是最重要最關(guān)鍵的機(jī)器,如果母分區(qū)被破壞或者失效,所有子分區(qū)都將受到威脅。

  最佳做法:

  1. 使用通過Windows Hardware Quality Labs 認(rèn)證的硬件:

  · Windows Server 2008. 如果你期望擁有服務(wù)器級別的功能和可靠性,是不可能通過使用家用電腦級別的系統(tǒng)硬件或者驅(qū)動來實(shí)現(xiàn)的。 在選擇硬件設(shè)備和相關(guān)驅(qū)動程序時必須對服務(wù)器工作量進(jìn)行測試,以確保所選硬件能夠保證虛擬部署經(jīng)得起重荷。 雖然為windows vista編寫的驅(qū)動程序能夠“適用于” Windows Server 2008,不過很難保證這些驅(qū)動能夠承受服務(wù)器應(yīng)用程序或虛擬帶來的重荷。

  · Hyper-V. 通過選擇合適的硬件(硬件可以滿足專門針對Microsoft Hypervisor的WHQL測試的要求),可以保證虛擬部署的順利進(jìn)行。很多硬件供應(yīng)商都會與所有服務(wù)器虛擬供應(yīng)商緊密合作以確保他們的產(chǎn)品能夠適用于一個或更多服務(wù)器虛擬化平臺。

  2. 保持系統(tǒng)驅(qū)動程序的正常運(yùn)作。 服務(wù)器網(wǎng)絡(luò)出現(xiàn)問題最常見的原因都是因?yàn)橄到y(tǒng)驅(qū)動本身,大多數(shù)是因?yàn)榫W(wǎng)絡(luò)驅(qū)動。當(dāng)這些驅(qū)動與虛擬化解決方案中的其他高性能驅(qū)動結(jié)合使用時,系統(tǒng)驅(qū)動的性能和可靠性顯得尤為重要。 然而事實(shí)卻總非如此,尤其是在測試環(huán)境中,你應(yīng)該考慮將生產(chǎn)部署限制給簽名驅(qū)動程序。

  3. 在母分區(qū)使用 Windows Server 2008 Core 。 這樣能夠?qū)⑷魏蜽indows Server 部署面臨的攻擊率降到最低,同時會限制用戶對安裝狀況的影響。

  4. 禁用母分區(qū)的任何對外的NIC。 在創(chuàng)建供子分區(qū)使用的“外部”虛擬交換機(jī)后,應(yīng)該禁用母分區(qū)的相關(guān)虛擬NIC,以防止互聯(lián)網(wǎng)訪問母分區(qū)。

  5. 如果不能禁用母分區(qū)的“外部”虛擬交換機(jī),解除所有L3+協(xié)議并為那些NIC啟用WFP。 通過解除協(xié)議并在WFP設(shè)置強(qiáng)限制性政策,不能使用協(xié)議(攻擊點(diǎn))通信的主機(jī)就不會受到網(wǎng)絡(luò)攻擊,因?yàn)橄嚓P(guān)協(xié)議已經(jīng)被解除和過濾,換句話說,“我聽不到你,你別想吵到我”。

  6. 如果上述步驟還不能保護(hù)母分區(qū),可以使用外部 layer-2+ 防火墻。沒有理由讓母分區(qū)受到互聯(lián)網(wǎng)攻擊,如果正在考慮采取這種部署,應(yīng)該重新評估整個計劃。

  7. 使用專用的OOB(Out-of-Band)網(wǎng)絡(luò)連接來管理母分區(qū)的連接。

  · 專用連接:提供與任何虛擬網(wǎng)絡(luò)不相關(guān)的網(wǎng)絡(luò)連接,即使虛擬網(wǎng)絡(luò)機(jī)制出錯,母分區(qū)也能繼續(xù)正常運(yùn)作。

  · OOB連接: 通過將母分區(qū)管理從客戶端網(wǎng)絡(luò)隔離出來,可以讓母分區(qū)免受來自互聯(lián)網(wǎng)的應(yīng)用程序攻擊。

  8. 在Windows Server 2008上使用支持TPM的硬件和Bitlocker來控制對母分區(qū)的訪問,以保護(hù)子分區(qū)磁盤和定義文件免受未經(jīng)授權(quán)的訪問。服務(wù)器盜竊事故是任何部署都必須考慮的問題, 而在單個服務(wù)器能夠獲取多個服務(wù)器信息更是讓黑客們垂涎三尺。通過將所有客戶端放在 Bitlocker保護(hù)磁盤,能夠有效抵御那些黑客的攻擊。

  母分區(qū)和客戶端連接

  必須根據(jù)整個環(huán)境的安全需求來平衡虛擬網(wǎng)絡(luò)的需求。例如,每個分區(qū)連接(與一個NIC相連)的單個虛擬網(wǎng)絡(luò)與通過虛擬交換機(jī)由多個分區(qū)共享的物理連接相比,前者能夠提供更好的主機(jī)脫離(off-host)網(wǎng)絡(luò)性能。如果子分區(qū)占用相對較少的網(wǎng)絡(luò)資源,可以考慮讓其與其他子分區(qū)共享虛擬網(wǎng)絡(luò)。

  ISA/TMG子分區(qū)性能考慮

  在確定ISA / TMG虛擬機(jī)資源前需要先對性能進(jìn)行評估。要實(shí)現(xiàn)這一目的,必須參考ISA Server Performance Best Practices性能監(jiān)測建議(針對你的ISA版本的建議)或者TMG性能監(jiān)測參考建議收集一段時間內(nèi)(至少兩周)的性能數(shù)據(jù),以便獲取所使用的機(jī)器資源的統(tǒng)計模型。這樣一來,你就知道支持虛擬ISA / TMG服務(wù)器所需要的最小機(jī)器資源量了。

  確定ISA / TMG虛擬機(jī)需求后,下一步就是建立測試環(huán)境,以便在測試環(huán)境中部署和測試生產(chǎn)環(huán)境中將使用的工作量以及流量負(fù)載組合。只有通過預(yù)先測試才能確定如何在子分區(qū)間的最佳資源分配方式。

  CPU和RAM

  任何在特定配置的硬件上運(yùn)行某種級別功能的服務(wù)器工作量,性能上都比不上共享多種工作量的機(jī)器資源(在相同配置的硬件上運(yùn)行)。不管工作量合并在單一的操作系統(tǒng)還是工作量在多個虛擬機(jī)間共享,這個理論都成立。事實(shí)上,當(dāng)工作量與單個操作系統(tǒng)結(jié)合時,管理多個工作量的資源需求會相應(yīng)增加。出于這個原因,你最好熟悉一下你所部署的虛擬技術(shù)的性能最佳做法建議。雖然每個供應(yīng)商所提供的虛擬化功能都是類似的(從虛擬類型來看,包括桌面、服務(wù)器和數(shù)據(jù)中心),不過這些不同供應(yīng)商的虛擬功能對于指定的服務(wù)器工作量或者工作量組合將會產(chǎn)生不同的結(jié)果。

  最佳做法:

  1. 避免在相同母分區(qū)結(jié)合高資源子分區(qū)。ISA / TMG可能會耗費(fèi)很多資源,這將取決于可能使用的流量性質(zhì)和第三方插件。如果有多個高耗能服務(wù)器工作量爭奪相同的資源,所有工作量的性能都會降低,也可能出現(xiàn)拒絕服務(wù)。

  2. 盡量多地向ISA / TMG提供CPU和內(nèi)存。因?yàn)镮SA/TMG必須與其他子分區(qū)共享資源,向ISA/TMG提供越多的內(nèi)存和CPU,在虛擬機(jī)中ISA/TMG的性能也將越好。

  注意:在ISA服務(wù)器中,不管是ISA服務(wù)器本身,抑或是第三方插件,都不會從4個以上的CPU或者大于4GB的內(nèi)存中受益,TMG并沒有這種限制。

  3. 使用虛擬化技術(shù)(能夠承受最大的工作量任務(wù))。如果你的流量性質(zhì)要求每秒1Gb或以上的網(wǎng)絡(luò)性能,那么使用提供最高每秒100Mb性能的硬件虛擬化產(chǎn)品可能會導(dǎo)致服務(wù)器超負(fù)荷或者性能表現(xiàn)不佳。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。