証明書管理
概要
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.です。
-
-
サーバー証明書
-
発行先: \<host FQDN\> (例: FTLW11-001.ctxlab.net)
-
発行元: CA-シトリックス-証明書マネージャー
-
発行者の詳細: 組織はCitrix Systems, Inc.です。
-
注:
Citrix Certificate Manager Serviceは、2048ビットキーを利用するRSA証明書を生成します。
Citrix Certificate Manager Serviceによって作成された既存のマシン証明書があり、サブジェクト名がマシンのFQDNと一致しない場合、新しい証明書が生成されます。
キーのローテーション
Citrix ClxMtp Serviceは、6か月ごとにキーを自動的にローテーションします。ただし、セッションホストのレジストリでローテーションカウンターを増やすことで、手動でキーのローテーションをトリガーできます。
キーをローテーションするには、次の値を更新します。
-
キー: SOFTWARE\Citrix\ClxMtpConnectorSvcRotateKeyPairs
-
値の型: DWORD
-
値の名前: ClxMtpRotateRequestCounter
-
データ: 整数 (10進数)
注:
初回キーローテーションの場合:
-
ClxMtpConnectorSvcRotateKeyPairsキーを作成します。
-
ClxMtpRotateRequestCounter値を作成し、1に設定します。
その後のキーローテーションでは、ClxMtpRotateRequestCounter値を1増やします。
値が更新されると、Citrix ClxMtp Serviceは再起動を必要とせずにキーを自動的にローテーションします。その後、Citrix Certificate Manager Serviceは新しいキーを検出すると自動的に新しい証明書を生成します。
クライアントデバイス
ルートCA証明書は、Citrix® StoreFront CloudまたはCitrix® 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
-
-
証明書をセッションマネージャーサービスにバインドします。
-
レジストリエディター (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証明書がインストールされている必要があります。