受防護網狀架構部署的快速入門
本主題說明受防護網狀架構是什麼、其需求,以及部署程式的摘要。 如需詳細的部署步驟,請參閱部署受防護主機和受防護 VM 的主機守護者服務。
偏好視訊嗎? 請參閱使用 Windows Server 2016 部署受防護 VM 和受防護網狀架構的 Microsoft Virtual Academy 課程。
什麼是受防護網狀架構
受防護網狀架構是一種 Windows Server 2016 Hyper-V 網狀架構,能夠保護租用戶工作負載,以防止來自主機上執行之惡意程式碼和系統管理員的檢查、竊取和竄改。 這些虛擬化租用戶工作負載會同時在待用和正式發行前小眾測試版受到保護,稱為受防護的 VM。
受防護網狀架構的需求為何
受防護網狀架構的需求包括:
執行不含惡意軟體的受保護 VM 之位置。
這些稱為受防護主機。 受防護主機是 Windows Server 2016 Datacenter Edition Hyper-V 主機,只有在可以證明它們以已知且受信任的狀態執行時,才能對稱為主機守護者服務 (HGS) 的外部授權單位執行受防護的 VM。 HGS 是 Windows Server 2016 中的新伺服器角色,通常會部署為三節點叢集。
確認主機處於狀況良好狀態的方法。
HGS 會執行證明,其會測量受防護主機的健康情況。
將金鑰安全地發行至狀況良好主機的程序。
HGS 會執行金鑰保護和金鑰發行,其會將金鑰釋放回狀況良好的主機。
管理工具,可將受防護 VM 的安全佈建和裝載自動化。
您可以選擇性地將這些管理工具新增至受防護網狀架構:
- System Center 2016 Virtual Machine Manager (VMM)。 建議使用 VMM,因為它除了使用 Hyper-V 和受防護網狀架構工作負載隨附的 PowerShell Cmdlet 之外,還提供其他管理工具。
- System Center 2016 Service Provider Foundation (SPF)。 這是 Windows Azure 套件與 VMM 之間的 API 層,也是使用 Windows Azure Pack 的必要條件。
- Windows Azure 套件提供良好的圖形化 Web 介面來管理受防護網狀架構和受防護的 VM。
實際上,必須預先做出一個決定:受防護網狀架構所使用的證明模式。 有兩種方式 (兩種互斥模式) HGS 可以測量 Hyper-V 主機狀況良好的方式。 當您初始化 HGS 時,您必須選擇模式:
- 主機金鑰證明 (或金鑰模式) 較不安全,但更容易採用
- TPM 型證明 (或 TPM 模式) 更安全,但需要更多設定和特定硬體
如有必要,您可以使用已升級至 Windows Server 2019 Datacenter 版本的現有 Hyper-V 主機,以金鑰模式部署,然後在支援伺服器硬體 (包括 TPM 2.0) 時轉換為更安全的 TPM 模式。
既然您已知道部分內容,讓我們逐步解說部署模型的範例。
如何從目前的 Hyper-V 網狀架構取得到受防護網狀架構
讓我們來想像一下這個案例—您有現有的 Hyper-V 網狀架構,如下圖中的 Contoso.com,而您想要建置 Windows Server 2016 受防護網狀架構。
步驟 1:部署執行 Windows Server 2016 的 Hyper-V 主機
Hyper-V 主機必須執行 Windows Server 2016 Datacenter 版本或更新版本。 如果您要升級主機,則可以從 Standard 版本升級 至 Datacenter 版本。
步驟2:部署主機守護者服務 (HGS)
然後安裝 HGS 伺服器角色,並將其部署為三節點叢集,如下圖中的 relecloud.com 範例。 這需要三個 PowerShell Cmdlet:
- 若要新增 HGS 角色,請使用
Install-WindowsFeature
- 若要安裝 HGS,請使用
Install-HgsServer
- 若要使用您選擇的證明模式初始化 HGS,請使用
Initialize-HgsServer
如果您現有的 Hyper-V 伺服器不符合 TPM 模式的必要條件 (例如,它們沒有 TPM 2.0),您可以使用系統管理員型證明 (AD 模式) 初始化 HGS,這需要與網狀架構網域的 Active Directory 信任。
在我們的範例中,假設 Contoso 一開始會在 AD 模式中部署,以立即符合合規性需求,並計畫在購買適當的伺服器硬體之後轉換為更安全的 TPM 型證明。
步驟 3:擷取身分識別、硬體基準和程式碼完整性原則
從 Hyper-V 主機擷取身分識別的程序取決於所使用的證明模式。
針對 AD 模式,主機的識別碼是其已加入網域的電腦帳戶,該帳戶必須是網狀架構網域中指定安全性群組的成員。 指定群組中的成員資格是主機是否狀況良好的唯一判斷。
在此模式中,網狀架構管理員只負責確保 Hyper-V 主機的健康情況。 由於 HGS 在決定允許或不允許執行的內容時沒有作用,因此惡意程式碼和偵錯工具會如設計般運作。
不過,對於受防護的 VM,會封鎖嘗試直接連結至程序 (例如 WinDbg.exe) 的偵錯工具,因為 VM 的背景工作程序 (VMWP.exe) 是受保護的程序輕型 (PPL)。 不會封鎖替代偵錯技術,例如 LiveKd.exe 所使用的技術。 不同於受防護的 VM,支援之 VM 的背景工作處理序不會以 PPL 的形式執行,因此 WinDbg.exe 等傳統偵錯工具會繼續正常運作。
另一種方式是,TPM 模式所使用的嚴格驗證步驟不會以任何方式用於 AD 模式。
針對 TPM 模式,需要三件事:
- 每個 Hyper-V 主機上 TPM 2.0 的公開簽署金鑰 (或 EKpub)。 若要擷取 EKpub,請使用
Get-PlatformIdentifier
。 - 硬體基準。 如果每個 Hyper-V 主機都相同,則您只需要單一基準。 如果不是,則每個硬體類別都需要一個基準。 基準的格式為 Trustworthy Computing Group 記錄檔或 TCGlog。 TCGlog 包含主機所做的一切,從 UEFI 韌體到核心,到主機完全開機的位置為止。 若要擷取硬體基準,請安裝 Hyper-V 角色和主機守護者 Hyper-V 支援功能,並使用
Get-HgsAttestationBaselinePolicy
。 - 程式碼完整性原則。 如果每個 Hyper-V 主機都相同,則您只需要單一 CI 原則。 如果不是,則每個硬體類別都需要一個基準。 Windows Server 2016 和 Windows 10 都有新的 CI 原則強制執行形式,稱為 Hypervisor 強制執行的程式碼完整性 (HVCI)。 HVCI 提供強式強制執行,並確保主機只允許執行受信任的系統管理員允許其執行二進位檔。 這些指示會包裝在新增至 HGS 的 CI 原則中。 HGS 會先測量每個主機的 CI 原則,再允許它們執行受防護的 VM。 若要擷取 CI 原則,請使用
New-CIPolicy
。 然後,原則必須使用ConvertFrom-CIPolicy
轉換成其二進位格式。
就是這樣—受防護網狀架構是以基礎結構為基礎來建置,以執行它。 現在您可以建立受防護的 VM 範本磁碟和防護資料檔案,讓受防護的 VM 可以簡單且安全地佈建。
步驟 4:建立受防護 VM 的範本
受防護的 VM 範本會藉由在已知的可信任時間點建立磁碟簽章來保護範本磁碟。
如果範本磁碟稍後受到惡意程式碼感染,其簽章會有所不同,而原始範本將會由安全受防護的 VM 佈建程序偵測到。
受防護範本磁碟是藉由執行受防護範本磁碟建立精靈或 Protect-TemplateDisk
針對一般範本磁碟所建立。
每個都隨附於 Windows 10 遠端伺服器管理工具中的受防護 VM 工具功能。 下載 RSAT 之後,請執行此命令以安裝受防護的 VM 工具功能:
Install-WindowsFeature RSAT-Shielded-VM-Tools -Restart
可信任的系統管理員,例如網狀架構系統管理員或 VM 擁有者,將需要憑證 (通常由裝載服務提供者提供) 來簽署 VHDX 範本磁碟。
磁碟簽章是透過虛擬磁碟的 OS 磁碟分割來計算。 如果 OS 磁碟分割上有任何變更,簽章也會變更。 這可讓使用者藉由指定適當的簽章,來強烈識別他們信任的磁碟。
開始之前,請先檢閱範本磁碟需求。
步驟 5:建立防護資料檔案
防護資料檔案也稱為 .pdk 檔案,會擷取虛擬機器的敏感性資訊,例如系統管理員密碼。
防護資料檔案也包含受防護 VM 的安全性原則設定。 當您建立防護資料檔案時,您必須在兩個安全性原則中選擇一個:
已防護
最安全的選項,可消除許多系統管理攻擊媒介。
支援加密
較低層級的保護,仍然提供能夠加密 VM 的合規性優點,但可讓 Hyper-V 系統管理員執行使用 VM 主控台連線和 PowerShell Direct 等動作。
您可以新增選擇性的管理部分,例如 VMM 或 Windows Azure 套件。 如果您想要在不安裝這些部分的情況下建立 VM,請參閱逐步說明 – 在沒有 VMM 的情況下建立受防護的 VM。
步驟 6:建立受防護的 VM
建立受防護的虛擬機器與一般虛擬機器沒有什麼不同。 在 Windows Azure 套件中,體驗甚至比建立一般 VM 更輕鬆,因為您只需要提供名稱、防護資料檔案 (包含其餘特殊化資訊),以及 VM 網路。