証明書管理
概要
HDX™ Direct接続は、ネットワークレベルの暗号化によって保護されています。これを容易にするため、各セッションホストには一意の自己署名ルートCA証明書と、その自己署名ルートCA証明書によって署名された対応するサーバー証明書があります。
このソリューションには、次の利点があります。
-
セキュリティの合理化: HDX Direct接続は、環境内で証明書を管理する管理上のオーバーヘッドなしに保護されます。
-
攻撃対象領域の削減: 各ホストは一意のキーと証明書のセットを持つため、攻撃対象領域は単一のホストに限定されます。
-
非永続環境のセキュリティ強化: 非永続セッションホストを持つ環境では、再起動時に新しいキーと証明書が生成されるため、セキュリティがさらに強化されます。
セッションホスト
Citrix ClxMtp Service と Citrix Certificate Manager Service は、各セッションホストで証明書を管理する2つのサービスです。ClxMtp Serviceはキーの生成とローテーションを処理し、Certificate Manager Serviceは証明書を生成および管理します。
自己署名ルートCAとサーバー証明書の2つの証明書が作成されます。どちらも2年間の有効期間で発行されますが、キーがローテーションされると置き換えられます。さらに、非永続マシンが再起動するたびに新しい証明書が生成されます。
各証明書の詳細は次のとおりです。
-
自己署名ルートCA
-
発行先は CA-Citrix-Certificate-Manager です
-
発行元はCA-Citrix-Certificate-Managerです。
-
発行者の詳細: 組織はCitrix Systems, Inc.です。
-
-
サーバー証明書
-
発行先: \<ホストFQDN\> (例: FTLW11-001.ctxlab.net)
-
発行元: CA-Citrix-Certificate-Manager
-
発行元詳細: 組織はCitrix Systems, Inc.
-
注:
Citrix Certificate Managerサービスは、2048ビットのキーを利用するRSA証明書を生成します。
Citrix Certificate Managerサービスによって作成された既存のマシン証明書があり、そのサブジェクト名がマシンのFQDNと一致しない場合、新しい証明書が生成されます。
キーのローテーション
Citrix ClxMtp Serviceは、6か月ごとにキーを自動的にローテーションします。ただし、セッションホストのレジストリでローテーションカウンターを増やすことで、手動でキーのローテーションをトリガーできます。
キーをローテーションするには、次の値を更新します。
-
キー: SOFTWARE\Citrix\ClxMtpConnectorSvcRotateKeyPairs
-
値の型: DWORD
-
値の名前: ClxMtpRotateRequestCounter
-
データ: 整数 (10進数)
注:
初めてキーをローテーションする場合:
-
ClxMtpConnectorSvcRotateKeyPairsキーを作成します。
-
ClxMtpRotateRequestCounter値を1に作成して設定します。
その後のキーのローテーションでは、ClxMtpRotateRequestCounter値を1増やします。
値が更新されると、Citrix ClxMtp Service は再起動を必要とせずにキーを自動的にローテーションします。その後、Citrix Certificate Manager Service は新しいキーを検出すると、新しい証明書を自動的に生成します。
クライアントデバイス
ルートCA証明書は、WorkspaceまたはStorefront™によって、すでに確立されている安全で信頼された接続パスを介してクライアントに送信されます。これにより、CA証明書をクライアントデバイスの証明書ストアに配布する必要がなくなり、クライアントがHDX Direct接続のセキュリティ保護に使用される証明書を信頼するようになります。
カスタム証明書の使用
HDX Directは、独自のPKIによって発行および管理される証明書の使用をサポートしています。以下の手順では、証明書のインストール方法、必要な権限の構成方法、セッションマネージャーサービスへのバインド方法、および必要なTLSリスナーの有効化方法について説明します。
-
マシンでHDX Directが無効になっている場合は、ステップ2に進みます。HDX Directが有効になっている場合は、以下の手順に従ってください。
-
レジストリエディター (regedit.exe) を開き、HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\icawd に移動します。
-
SSLEnabled の値を 0 に設定します。
-
HKLM\Software\Citrix\HDX-Direct に移動します。
-
HdxDirectCaInTls の値を 0 に設定します。
-
-
PKIによって発行された適切な証明書を、マシンの証明書ストアにインストールします。
-
セッションマネージャーサービスに証明書の秘密キーへの読み取りアクセス権を付与します。
-
ファイル > スナップインの追加と削除に移動します。
-
証明書を選択し、追加をクリックします。
-
コンピューターアカウントを選択し、次へをクリックします。
-
ローカルコンピューターを選択し、完了をクリックします。
-
証明書 (ローカルコンピューター) > 個人 > 証明書に移動します。
-
適切な証明書を右クリックし、すべてのタスク > 秘密キーの管理を選択します。
-
次のいずれかのサービスを追加し、読み取りアクセス権を付与します。
-
シングルセッションVDAの場合:
NT SERVICE\PorticaService -
マルチセッションVDAの場合:
NT SERVICE\TermService
-
-
適用をクリックし、次にOKをクリックします。
-
証明書をセッションマネージャーサービスにバインドします。
-
証明書のサムプリントを取得します (証明書をダブルクリック > 詳細 > サムプリント)。
-
レジストリエディター (regedit.exe) を開き、HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\icawdに移動します。
-
「SSLThumbprint」の値を編集し、証明書のサムプリントを貼り付けます。
-
-
Citrix TLSリスナーを有効にします。
-
同じレジストリの場所で、「SSLEnabled」の値を「1」に設定します。
-
-
HDX Directを有効にします(Citrixポリシー内)。
Citrix Virtual Apps and Desktopsのインストールメディアには、これらのタスクのいくつかを自動化するPowerShellスクリプト(Enable-VdaSSL.ps1)が含まれています。
-
証明書のキーのアクセス許可を設定する
-
証明書をセッションマネージャーサービスにバインドする
-
Citrix TLSリスナーを有効にする
このスクリプトは、Support > Tools > SslSupportディレクトリにあります。詳細については、「PowerShellスクリプトを使用してVDAでTLSを構成する」を参照してください。
注:
独自の証明書を使用している場合、セッションホストに接続するデバイスには、正しいルートCA証明書と中間CA証明書がインストールされている必要があります。