共用方式為


遠端桌面接聽程序憑證設定

本文說明在不是遠端桌面服務 (RDS) 部署的 Windows Server 2012 或 Windows Server 2012 伺服器上設定接聽程式憑證的方法。

原始 KB 編號: 3042780

關於遠端桌面伺服器接聽程式可用性

接聽程式元件會在遠端桌面伺服器上執行,並負責接聽和接受新的遠端桌面通訊協定 (RDP) 用戶端連線。 這可讓用戶在遠端桌面伺服器上建立新的遠端會話。 遠端桌面伺服器上存在每個遠端桌面服務連線的接聽程式。 您可以使用遠端桌面服務組態工具來建立和設定連線。

設定接聽程序憑證的方法

在 Windows Server 2003、Windows Server 2008 或 Windows Server 2008 R2 中,遠端桌面組態管理員 MMC 嵌入式管理單元可讓您直接存取 RDP 接聽程式。 在嵌入式管理單元中,您可以將憑證系結至接聽程式,然後針對 RDP 會話強制執行 SSL 安全性。

在 Windows Server 2012 或 Windows Server 2012 R2 中,此 MMC 嵌入式管理單元不存在。 因此,系統不會直接存取 RDP 接聽程式。 若要在 Windows Server 2012 或 Windows Server 2012 R2 中設定接聽程式憑證,請使用下列方法。

  • 方法 1:使用 Windows Management Instrumentation (WMI) 腳本

    RDS 接聽程式的組態數據會儲存在 Win32_TSGeneralSetting 命名空間下的 WMI 類別中 Root\CimV2\TerminalServices

    RDS 接聽程式的憑證會透過 SSLCertificateSHA1Hash 屬性上該憑證的指紋值來參考。 指紋值對每個憑證而言都是唯一的。

    注意

    執行 wmic 命令之前,您要使用的憑證必須匯入電腦帳戶的個人證書存儲。 如果您未匯入憑證,您將會收到 無效的參數 錯誤。

    若要使用 WMI 設定憑證,請遵循下列步驟:

    1. 開啟憑證的屬性對話框,然後選取 [ 詳細數據] 索引卷標。

    2. 向下卷動至 [指紋 ] 字段,並將空格分隔的十六進位字元串複製到 [記事本] 之類的內容中。

      下列螢幕快照是憑證屬性中憑證指紋的範例:

      憑證屬性中的憑證指紋範例。

      如果您將字串複製到 [記事本],它應該類似下列螢幕快照:

      將指紋字串複製並貼到 [記事本]。

      拿掉字串中的空格之後,它仍然包含只能在命令提示字元中看到的不可見 ASCII 字元。 下列螢幕快照是範例:

      只在命令提示字元中顯示的不可見 ASCII 字元。

      執行 命令以匯入憑證之前,請確定已移除此 ASCII 字元。

    3. 從字串中移除所有空格。 可能有一個不可見的 ACSII 字元也會複製。 這在記事本中看不到。 驗證的唯一方法是直接複製到 [命令提示字元] 視窗。

    4. 在命令提示字元中,搭配您在步驟 3 中取得的指紋值,一起執行下列 wmic 命令:

      wmic /namespace:\\root\cimv2\TerminalServices PATH Win32_TSGeneralSetting Set SSLCertificateSHA1Hash="THUMBPRINT"
      

      下列螢幕快照是成功的範例:

      成功執行 wmic 命令的範例,以及您在步驟 3 中取得的指紋值。

  • 方法 2:使用註冊表編輯器

    重要

    請仔細依照本節中的步驟執行。 如果您未正確修改登錄,可能會發生嚴重問題。 在您修改之前, 如何在 Windows 中備份和還原登錄,以防發生問題。

    若要使用註冊表編輯器設定憑證,請遵循下列步驟:

    1. 使用計算機帳戶,將伺服器驗證憑證安裝到個人證書存儲。

    2. 建立下列登錄值,其中包含憑證的SHA1哈希,讓您可以設定此自定義憑證以支援TLS,而不是使用預設的自我簽署憑證。

      • 登入路徑: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
      • 數值名稱: SSLCertificateSHA1Hash
      • 實值類型:REG_BINARY
      • 值數據: 憑證指紋

      此值應該是憑證的指紋,並以逗號 (,) 分隔,沒有任何空格。 例如,如果您要匯出該登錄機碼, SSLCertificateSHA1Hash 值會如下所示:

      SSLCertificateSHA1Hash=hex:42,49,e1,6e,0a,f0,a0,2e,63,c4,5c,93,fd,52,ad,09,27,82,1b,01

    3. 遠端桌面主機服務會在網路服務帳戶下執行。 因此,您必須設定 RDS 用來包含網路服務與 讀取 許可權之金鑰檔案的系統存取控制清單 (SACL)。

      若要變更許可權,請遵循本機計算機的憑證嵌入式管理單元上的下列步驟:

      1. 按兩下 [ 開始],按兩下 [執行],輸入 mmc,然後按兩下 [ 確定]。
      2. 在 [檔案] 功能表上,按一下 [新增/移除嵌入式管理單元]。
      3. 在 [新增或移除嵌入式管理單元] 對話框的 [可用的嵌入式管理單元] 清單中,按兩下 [憑證],然後按兩下 [新增]。
      4. 在 [ 憑證 嵌入式管理單元] 對話框中,按兩下 [ 計算機帳戶],然後按 [ 下一步]。
      5. 在 [ 選取計算機 ] 對話框中,按兩下 [本機計算機]:[此控制台執行的計算機],然後按兩下 [ 完成]。
      6. 在 [新增或移除嵌入式管理單元] 對話方塊中,按一下 [確定]
      7. 在 [憑證] 嵌入式管理單元的控制台樹上,依序展開 [憑證]、[本機計算機][個人],然後選取要使用的 SSL 憑證。
      8. 以滑鼠右鍵按一下憑證,選取 [所有工作],然後選取 [管理私密金鑰]。
      9. 在 [許可權] 對話框中,按兩下 [新增],輸入 NETWORK SERVICE,按兩下 [確定],選取 [允許] 複選框底下的 [讀取],然後按兩下 [確定]。