Table of contents
TOC
摺疊目錄
展開目錄

設定的第一個 HGS 節點

Ryan Puffer|上次更新日期: 2017/4/14
|
1 投稿人

適用於︰ Windows Server 2016

在本區段中的步驟會引導您設定您的第一個 HGS 節點。 在已安裝的 Windows Server 2016 的實體伺服器,您應該執行這些步驟。

新增 HGS 伺服器角色

使用伺服器管理員或較高的 Windows PowerShell console 中,執行下列命令,請加入主機監護人服務的角色︰

Install-WindowsFeature -Name HostGuardianServiceRole -IncludeManagementTools -Restart

新增森林中安裝 HGS

應該安裝主機監護人服務 HYPER-V 主機 fabric 經理,不受信任的其他實體所加入樹另外 Active Directory 森林中。 如果不已經有安全堡壘樹可以使用您的環境中,依照將設定為您的 HGS 本節中的步驟操作。 若要安裝現有的堡壘森林中的 HGS,請跳至安裝現有的堡壘森林中的 HGS

建立新的森林 HGS

請確定 HGS 電腦加入網域,才能執行這些步驟。

  1. 在較高的 Windows PowerShell 主機,請執行下列命令安裝主機監護人服務,並將其網域設定。 您在此指定的密碼僅適用於 Directory 服務還原模式密碼的。它會變更您的系統管理員帳號登入密碼。 您可能會提供您選擇要任何網域名稱-HgsDomainName參數。

    $adminPassword = ConvertTo-SecureString -AsPlainText '<password>' -Force
    
    Install-HgsServer -HgsDomainName 'relecloud.com' -SafeModeAdministratorPassword $adminPassword -Restart
    
  2. 電腦重新開機之後,使用相同的密碼,您先前用(無論您指定一個步驟中的密碼)本機系統管理員的身分網域系統管理員的身分登入。

初始化 HGS 叢集

下列命令,將會完成第一個 HGS 節點的設定。

  1. 判斷 HGS 叢集分散式適用的網路名稱 (DNN)。 中,讓它更容易連絡 HGS 叢集任何節點 HYPER-V 主機 HGS DNS 服務會登錄這個名稱。 例如,如果您有分別 3 HGS 節點主機 HGS01、HGS02,以及 HGS03,您可以選擇 DNN 選擇」HGS」或「HgsCluster」。 未提供完整的網域名稱Initialize-HgsServercmdlet (例如使用「hgs「不」hgs.relecloud.com」)。

  2. 找出您 HGS 監護人憑證,以在詳細[準備 HGS]()主題。 您將需要一個專屬的簽署憑證及 intitialize HGS 叢集一個加密憑證。 建立受密碼保護 PFX 檔案的每個憑證所在公用和私密性這兩個按鍵是最簡單的方式提供 HGS 憑證。 如果您使用 HSM 為基礎的按鍵或其他非匯出憑證的取代,您必須到本機電腦的憑證市集安裝的憑證才能繼續。

  3. 選取 [審查模式的 HGS︰ 信任的廣告或 TPM 信任。 如果您不需要的 TPM 審查相容的硬體,您可以時切換到 TPM 審查未來您取得支援的硬體。

  4. 執行初始化-HgsServer cmdlet 較高的第一個 HGS 節點 PowerShell 視窗中。 這個 cmdlet 語法支援許多不同的輸入,但 2 最常見的叫用如下︰

    • 如果您使用您簽署及加密憑證 PFX 的檔案,請執行下列命令︰

      $signingCertPass = Read-Host -AsSecureString -Prompt "Signing certificate password"
      $encryptionCertPass = Read-Host -AsSecureString -Prompt "Encryption certificate password"
      
      Initialize-HgsServer -HgsServiceName 'MyHgsDNN' -SigningCertificatePath 'C:\temp\SigningCert.pfx' -SigningCertificatePassword $signPass -EncryptionCertificatePath 'C:\temp\EncryptionCert.pfx' -EncryptionCertificatePassword $encryptionCertPass -TrustTpm
      
    • 如果您使用非匯出憑證已安裝在本機憑證市集中,執行下列命令。 如果您不知道您憑證碼,您可以藉由在執行列出可用的憑證Get-ChildItem Cert:\LocalMachine\My

      Initialize-HgsServer -HgsServiceName 'MyHgsDNN' -SigningCertificateThumbprint '1A2B3C4D5E6F...' -EncryptionCertificateThumbprint '0F9E8D7C6B5A...' -TrustTpm
      
    注意事項

    提供-TrustActiveDirectory命令,而不是-TrustTpm如果您使用的廣告信任審查。

  5. 如果您提供任何憑證 HGS 使用憑證碼,您也需要權限授與 HGS 朗讀私人鍵的憑證。 在具有完整的 Windows 使用者介面的伺服器,完成下列步驟︰

    1. 打開本機電腦憑證管理員 (certlm.msc)
    2. 發現的憑證 > 以滑鼠右鍵按一下 > 的所有任務 > 管理私人按鍵
    3. 按一下 [新增
    4. 在物件選擇視窗中,按一下 [物件類型以及服務帳號
    5. 輸入的服務帳號從警告文字中所提到的名稱 Initialize-HgsServer
    6. 確認 gMSA 私人鍵」讀取」權限。

    在核心伺服器,您將需要下載 PowerShell 模組協助您在設定私人重要的權限。

    1. 執行Install-Module GuardedFabricToolsHGS 伺服器連接網際網路或執行有Save-Module GuardedFabricTools另一部電腦和複製到單元 HGS 伺服器上。
    2. 執行Import-Module GuardedFabricTools。 這將會新增額外的屬性憑證物件 PowerShell 中找到。
    3. 發現的憑證指紋中的 PowerShell Get-ChildItem Cert:\LocalMachine\My
    4. 更新 ACL、警告的文字取代與您的指紋和帳號下方的程式碼 gMSA 帳號列出Initialize-HgsServer

      $certificate = Get-Item "Cert:\LocalMachine\1A2B3C..."
      $certificate.Acl = $certificate.Acl | Add-AccessRule "HgsSvc_1A2B3C" Read Allow
      

    如果您使用 HSM 備份憑證的取代,或憑證儲存在第三方金鑰儲存的提供者,這些步驟可能不適用於您。 請洽詢您金鑰儲存從電信業者的文件以了解如何以管理您的私人鍵上的權限。 有時候不授權,或當安裝憑證授權提供到整部電腦。

  6. 是的! 在 [正式環境] 中,您應該會繼續叢集新增其他 HGS 節點。 在測試環境] 中,您可以跳到驗證您 HGS 設定

安裝 HGS 現有堡壘森林中

如果您已經有安全堡壘森林中的 datacenter,而且想要加入 HGS 節點,請依照本節中的步驟操作。 如果您想要 2 或更多獨立 HGS 叢集加入網域相同的設定,也適用於下列步驟執行。

加入網域現有的 HGS 伺服器

在完成下列步驟,確定您 HGS 伺服器已加入您想要的網域。 您可以使用 Server 管理員或新增電腦cmdlet,若要這樣做。

準備 Active Directory 物件

若要初始化 HGS 現有網域中,您將需要建立群組管理服務帳號,並 2 安全性群組 Active Directory 網域中。 您可以也預先階段叢集物件如果您初始化 HGS 與 account 不具有中之網域中建立電腦物件權限。

管理群組服務以來

建立群組管理服務 account,用來擷取並使用它憑證,請使用 HGS 身分新增-ADServiceAccount cmdlet 中之網域中的。 如果您有未先前設定 gMSA 現有的網域中,您將需要新增金鑰 Distribution 服務根按鍵。 每個 HGS 節點需要允許存取群組管理的服務密碼。 將此設定最簡單的方法是建立一個包含所有您 HGS 節點安全性群組,並權限授與的安全性群組擷取 gMSA 密碼。

# Check if the KDS root key has been set up
if (-not (Get-KdsRootKey)) {
    # Adds a KDS root key effective immediately (ignores normal 10 hour waiting period)
    Add-KdsRootKey -EffectiveTime ((Get-Date).AddHours(-10))
}

# Create a security group for HGS nodes
$hgsNodes = New-ADGroup -Name 'HgsServers' -GroupScope DomainLocal -PassThru

# Add your HGS nodes to this group
Add-ADGroupMember -Group $hgsNodes -Member "HGS01"

# Create the gMSA
New-ADServiceAccount -Name 'HGSgMSA' -DnsName 'HGSgMSA.yourdomain.com' -PrincipalsAllowedToRetrieveManagedPassword $hgsNodes
注意事項

群組多媒體管理的服務帳號僅在網域的已升級至 Windows Server 2012 Active Directory 結構描述。 GMSAs 不支援目錄執行較舊的架構。 請參考資訊 Active Directory 文件上群組管理服務 account 需求

JEA 安全性群組

當您設定 HGS,只要足以管理 (JEA) PowerShell endpoint 設定允許,無須本機完整的系統管理員權限管理 HGS 的系統管理員。 您不需要使用 JEA 管理 HGS,但它還是必須設定執行 Initialize-HgsServer 時。 指定您 HGS 系統管理員」及 HGS 檢閱包含 2 安全性群組組成 JEA endpoint 的設定。 管理群組屬於使用者可以新增、變更或移除上 HGS; 原則檢閱只能檢視目前的設定。

使用 Active Directory 管理中心、Active Directory 使用者和電腦,這些 JEA 群組 HGS 所加入的網域中建立 2 安全性群組或新增-ADGroup cmdlet。

New-ADGroup -Name 'HgsJeaReviewers' -GroupScope DomainLocal
New-ADGroup -Name 'HgsJeaAdmins' -GroupScope DomainLocal

叢集物件

最後,如果您使用設定 HGS 帳號不需要建立中之網域中的新電腦物件權限時,您將需要預先階段叢集物件。 下列步驟進行所述Active Directory 網域服務 Prestage 叢集電腦物件文章。

若要設定您的第一個 HGS 節點,您將需要建立一個叢集名稱物件 (CNO),以及一個 Virtual 電腦物件 (VCO)。 CNO 代表叢集的名稱,並為主要用的錯誤後移轉。 VCO 代表位於頂端叢集 HGS 服務,且有登錄 DNS 伺服器的名稱。

快速預先分段準備您的 CNO 和 VCO,請有執行 PowerShell 指令下列 Active Directory 管理員︰

# Create the CNO
$cno = New-ADComputer -Name 'HgsCluster' -Description 'HGS CNO' -Enabled $false -Passthru

# Create the VCO
$vco = New-ADComputer -Name 'HgsService' -Description 'HGS VCO' -Passthru

# Give the CNO full control over the VCO
$vcoPath = Join-Path "AD:\" $vco.DistinguishedName
$acl = Get-Acl $vcoPath
$ace = New-Object System.DirectoryServices.ActiveDirectoryAccessRule $cno.SID, "GenericAll", "Allow"
$acl.AddAccessRule($ace)
Set-Acl -Path $vcoPath -AclObject $acl

初始化 HGS 堡壘森林中

設定 HGS 現有的森林中,當您不應該先執行Install-HgsServer或升級 HGS 的網域控制站伺服器。 Active Directory 網域服務將會安裝在電腦上,但要維持未設定。

一旦您準備好與上述的廣告物件必要條件區段憑證您堡壘森林,您已經準備好起始 HGS 伺服器使用初始化-HgsServer cmdlet。

如果您使用 PFX 為基礎的憑證,執行下列命令︰

$signingCertPass = Read-Host -AsSecureString -Prompt "Signing certificate password"
$encryptionCertPass = Read-Host -AsSecureString -Prompt "Encryption certificate password"

Initialize-HgsServer -UseExistingDomain -ServiceAccount 'HGSgMSA' -JeaReviewersGroup 'HgsJeaReviewers' -JeaAdministratorsGroup 'HgsJeaAdmins' -HgsServiceName 'HgsService' -SigningCertificatePath 'C:\temp\SigningCert.pfx' -SigningCertificatePassword $signPass -EncryptionCertificatePath 'C:\temp\EncryptionCert.pfx' -EncryptionCertificatePassword $encryptionCertPass -TrustTpm
注意事項

提供-TrustActiveDirectory而不是-TrustTpm如果您使用的廣告信任審查。 此外,如果您 prestaged 叢集物件、確定 virtual 電腦物件名稱符合提供給值-HgsServiceName

如果您使用(例如 HSM 備份憑證和非匯出憑證)本機電腦上安裝憑證,使用-SigningCertificateThumbprint-EncryptionCertificateThumbprint參數改為,如 cmdlet 協助中所述。

設定 HGS HTTPS 通訊

根據預設,初始化 HGS 伺服器時它就會設定 IIS 網站僅限 HTTP 通訊。 所有的敏感性資料傳輸 HGS(vm 包括加密金鑰)與永遠使用加密訊息層級加密,但如果您想要較高的安全性您也可以讓 HTTPS 設定 HGS SSL 憑證。

首先,取得 SSL 憑證 HGS 從您的憑證授權單位。 每個 HYPER-V 主機必須信任憑證憑證,因此我們建議您發出憑證憑證,從您的公司公用按鍵基礎結構或第三方 CA。 支援 IIS 任何 SSL 憑證 HGS 的支援。

憑證憑證之後,您可能提供的憑證Initialize-HgsServercmdlet,如果您有一陣子未已經執行,或使用Set-HgsServer如果您已經已起始 HGS。

如果您已經尚未初始化 HGS

新增到下列 SSL 相關參數Initialize-HgsServer指令從初始化 HGS 叢集堡壘森林中的起始 HGS區段。

$sslPassword = Read-Host -AsSecureString -Prompt "SSL Certificate Password"
Initialize-HgsServer <OtherParametersHere> -Http -Https -HttpsCertificatePath 'C:\temp\HgsSSLCertificate.pfx' -HttpsCertificatePassword $sslPassword

如果您的憑證已安裝在本機憑證市集中,但無法搭配私人按鍵,則保持不變匯出至 PFX 檔案,您可以改為其指紋來提供憑證憑證︰

Initialize-HgsServer <OtherParametersHere> -Http -Https -HttpsCertificateThumbprint 'A1B2C3D4E5F6...'

如果您已經已起始 HGS

執行設定-HgsServer設定新憑證憑證。 必須在叢在每個 HGS 節點重複此步驟。

$sslPassword = Read-Host -AsSecureString -Prompt "SSL Certificate Password"
Set-HgsServer -Http -Https -HttpsCertificatePath 'C:\temp\HgsSSLCertificate.pfx' -HttpsCertificatePassword $sslPassword

或者,如果您已經安裝憑證本機憑證儲存,並想要依指紋參考︰

Set-HgsServer -Http -Https -HttpsCertificateThumbprint 'A1B2C3D4E5F6...'
重要事項

設定 SSL 憑證 HGS 不停用 HTTP 結束點。 如果您希望只允許 HTTPS endpoint 使用時,設定 Windows 防火牆封鎖輸入的連接埠 80。 請勿修改 IIS 連結HGS 網站,以移除 HTTP 結束點。這是不支援,若要這樣做。

後續步驟

© 2017 Microsoft