セキュリティキーの管理
注:
この機能は、StoreFront 1912 LTSR CU2以降とともに使用する必要があります。
Secure XML機能は、Citrix ADCおよびCitrix Gatewayリリース12.1以降でのみサポートされます。
この機能を使用すると、承認されたStoreFrontマシンおよびCitrix GatewayマシンのみがCitrix Delivery Controllerと通信できるようになります。この機能を有効にすると、キーが含まれていないすべての要求がブロックされます。この機能を使用して、内部ネットワークの攻撃から保護するセキュリティ層を追加します。
この機能を使用するための一般的なワークフローは次のとおりです:
-
PowerShell SDKを使用して、Studioでこの機能を有効にします。
-
Studioで設定を構成します(StudioコンソールまたはPowerShellを使用します)。
-
StoreFrontで設定を構成します(PowerShellを使用します)。
-
Citrix ADCで設定を構成します。
セキュリティキー機能の有効化
デフォルトでは、この機能は無効になっています。これを有効にするには、Remote PowerShell SDKを使用します。Remote PowerShell SDKについて詳しくは、「SDKおよびAPI」を参照してください。
この機能を有効にするには、次の手順を実行します:
- Citrix Virtual Apps and Desktops Remote PowerShell SDKを実行します。
- コマンドウィンドウで、次のコマンドを実行します:
-
Add-PSSnapIn Citrix*
. このコマンドは、Citrixスナップインを追加します。 Set-ConfigSiteMetadata -Name "Citrix_DesktopStudio_SecurityKeyManagementEnabled" -Value "True"
-
Studioでの設定の構成
StudioコンソールまたはPowerShellを使用して、Studioで設定を構成できます。
Studioコンソールの使用
この機能を有効にした後、[Studio]>[設定]>[セキュリティキーの管理]に移動し、[編集]をクリックします。[セキュリティキーの管理] ウィンドウが開きます。[保存] をクリックして変更を適用し、ウィンドウを終了します。
重要:
- 2つのキーを使用できます。XMLポートとSTAポートを介した通信に、同じキーまたは異なるキーを使用できます。一度に1つのキーのみを使用することをお勧めします。未使用のキーは、キーの交換にのみ使用されます。
- 既に使用中のキーを更新するために[更新]アイコンをクリックしないでください。クリックした場合、サービスが中断されます。
更新アイコンをクリックしてキーを生成します。
XMLポート経由の通信にキーが必須とする(StoreFrontのみ)。選択されている場合、XMLポート経由での通信を認証するためにキーを必要とするかを示します。StoreFrontは、このポートを介してCitrix Cloudと通信します。XMLポートの変更について詳しくは、Knowledge CenterのCTX127945を参照してください。
STAポート経由の通信にキーが必須とする。選択されている場合、STAポート経由での通信を認証するためにキーを必要とするかを示します。Citrix GatewayおよびStoreFrontは、このポートを介してCitrix Cloudと通信します。STAポートの変更について詳しくは、Knowledge CenterのCTX101988を参照してください。
変更を適用後、[閉じる] をクリックして [セキュリティキーの管理] ウィンドウを終了します。
PowerShellの使用
以下は、Studioの操作に相当するPowerShellの手順です。
-
Citrix Virtual Apps and Desktops Remote PowerShell SDKを実行します。
- コマンドウィンドウで、次のコマンドを実行します:
Add-PSSnapIn Citrix*
- 次のコマンドを実行してキーを生成し、Key1を設定します:
New-BrokerXmlServiceKey
Set-BrokerSite -XmlServiceKey1 <the key you generated>
- 次のコマンドを実行してキーを生成し、Key2を設定します:
New-BrokerXmlServiceKey
Set-BrokerSite -XmlServiceKey2 <the key you generated>
- 次のコマンドのいずれかまたは両方を実行して、通信の認証でキーを使用できるようにします:
- XMLポート経由での通信を認証するには、次を実行します:
Set-BrokerSite -RequireXmlServiceKeyForNFuse $true
- STAポート経由での通信を認証するには、次を実行します:
Set-BrokerSite -RequireXmlServiceKeyForSta $true
- XMLポート経由での通信を認証するには、次を実行します:
ガイダンスと構文について詳しくは、PowerShellコマンドのヘルプを参照してください。
StoreFrontでの設定の構成
Studioでの構成が完了したら、PowerShellを使ってStoreFrontで関連する設定を構成する必要があります。
StoreFrontサーバーで、次のPowerShellコマンドを実行します:
- XMLポート経由での通信のキーを構成するには、
Get-STFStoreServie
およびSet-STFStoreService
コマンドを使用します。例:PS C:\> Set-STFStoreFarm $farm -Farmtype XenDesktop -Port 80 -TransportType HTTP -Servers <domain name1, domain name2> -XMLValidationEnabled $true -XMLValidationSecret <the key you generated in Studio>
- STAポート経由での通信のキーを設定するには、
New-STFSecureTicketAuthority
コマンドを使用します。例:PS C:\> $sta = New-STFSecureTicketAuthority –StaUrl <STA URL> -StaValidationEnabled $true -StavalidationSecret <the key you generated in Studio>
ガイダンスと構文について詳しくは、PowerShellコマンドのヘルプを参照してください。
Citrix ADCでの設定の構成
注:
ゲートウェイとしてCitrix ADCを使用しない限り、Citrix ADCでこの機能を構成する必要はありません。Citrix ADCを使用する場合は、以下の手順に従ってください。
-
以下の前提条件の構成が既に設定されていることを確認してください:
- 以下のCitrix ADC関連のIPアドレスが構成されている。
- Citrix ADCコンソールにアクセスするためのCitrix ADC管理IP(NSIP)アドレス。詳しくは、「NSIPアドレスの構成」を参照してください。
- Citrix ADCアプライアンスとバックエンドサーバー間の通信を有効にするためのサブネットIP(SNIP)アドレス。詳しくは、「サブネットIPアドレスの構成」を参照してください。
- ADCアプライアンスにログインしてセッションを起動するためのCitrix Gateway仮想IPアドレスとロードバランサー仮想IPアドレス。詳しくは、「仮想サーバーの作成」を参照してください。
- Citrix ADCアプライアンスで必要なモードと機能が有効である。
- モードを有効にするには、Citrix ADC GUIで [System]>[Settings]>[Configure Mode] の順に移動します。
- 機能を有効にするには、Citrix ADC GUIで [System]>[Settings]>[Configure Basic Features] の順に移動します。
- 証明書関連の構成が完了している。
- 証明書署名要求(CSR:Certificate Signing Request)が作成されていること。詳しくは、「証明書の作成」を参照してください。
- サーバー証明書とCA証明書およびルート証明書がインストールされていること。詳しくは、「インストール、リンク、および更新」を参照してください。
- Citrix Virtual Desktops用にCitrix Gatewayが作成されていること。[Test STA Connectivity] ボタンをクリックして接続をテストし、仮想サーバーがオンラインであることを確認します。詳しくは、「Citrix Virtual Apps and Desktops用のCitrix ADCのセットアップ」を参照してください。
- 以下のCitrix ADC関連のIPアドレスが構成されている。
-
書き換えアクションを追加します。詳しくは、「書き換えアクションの構成」を参照してください。
- [AppExpert]>[Rewrite]>[Actions] の順に移動します。
- [Add] をクリックして、新しい書き換えアクションを追加します。アクションに「set Type to INSERT_HTTP_HEADER」という名前を付けることができます。
- [Type] で、[INSERT_HTTP_HEADER] を選択します。
- [Header Name] に「X-Citrix-XmlServiceKey」と入力します。
-
[Expression] に、引用符付きで「
<XmlServiceKey1 value>
」を追加します。XmlServiceKey1の値は、Desktop Delivery Controllerの構成からコピーできます。
- 書き換えポリシーを追加します。詳しくは、「書き換えポリシーの構成」を参照してください。
-
[AppExpert]>[Rewrite]>[Policies] の順に移動します。
-
[Add] をクリックして、新しいポリシーを追加します。
- [Action] で、前の手順で作成したアクションを選択します。
- [Expression] に、「HTTP.REQ.IS_VALID」を追加します。
- [OK] をクリックします。
-
-
負荷分散を設定します。STAサーバーごとに1つの負荷分散仮想サーバーを構成する必要があります。そうしない場合、セッションの起動が失敗します。
詳しくは、「基本的な負荷分散の設定」を参照してください。
- 負荷分散仮想サーバーを作成します。
- [Traffic Management]>[Load Balancing]>[Servers] の順に移動します。
- [Virtual Servers] ページで [Add] をクリックします。
- [Protocol] で、[HTTP] を選択します。
- 負荷分散仮想IPアドレスを追加し、[Port] で [80] を選択します。
- [OK] をクリックします。
- 負荷分散サービスを作成します。
- [Traffic Management]>[Load Balancing]>[Services] の順に移動します。
- [Existing Server] で、前の手順で作成した仮想サーバーを選択します。
- [Protocol] で [HTTP] を選択し、[Port] で [80] を選択します。
- [OK] をクリックし、[Done] をクリックします。
- サービスを仮想サーバーにバインドします。
- 以前に作成した仮想サーバーを選択し、[Edit] をクリックします。
- [Services and Service Groups] の [No Load Balancing Virtual Server Service Binding] をクリックします。
- [Service Binding] で、前に作成したサービスを選択します。
- [バインド] をクリックします。
- 以前に作成した書き換えポリシーを仮想サーバーにバインドします。
- 以前に作成した仮想サーバーを選択し、[Edit] をクリックします。
- [Advanced Settings] で [Policies] をクリックし、[Policies] セクションで [+] をクリックします。
- [Choose Policy] で [Rewrite] を選択し、[Choose Type] で [Request] を選択します。
- [続行] をクリックします。
- [Select Policy] で、前に作成した書き換えポリシーを選択します。
- [バインド] をクリックします。
- [完了] をクリックします。
- 必要に応じて、仮想サーバーの永続性を設定します。
- 以前に作成した仮想サーバーを選択し、[Edit] をクリックします。
- [Advanced Settings] で、[Persistence] をクリックします。
- 永続性タイプを [Others] にします。
- 仮想サーバーによって選択されたサービスのIPアドレス(宛先IPアドレス)に基づいて、永続セッションを作成するには、[DESTIP] を選択します。
- [IPv4 Netmask] で、DDCと同じネットワークマスクを追加します。
- [OK] をクリックします。
- 他の仮想サーバーについても、これらの手順を繰り返します。
- 負荷分散仮想サーバーを作成します。
Citrix ADCアプライアンスが既にCitrix Virtual Desktopsにより構成されている場合の構成の変更
Citrix Virtual Desktopsを使用してCitrix ADCアプライアンスを既に構成している場合、Secure XML機能を使用するには、次の構成変更を行う必要があります。
- セッションを起動する前に、ゲートウェイのSecurity Ticket Authority URLを変更して、負荷分散仮想サーバーのFQDN(完全修飾ドメイン名)を使用します。
-
TrustRequestsSentToTheXmlServicePort
パラメーターがFalseに設定されていることを確認してください。デフォルトでは、TrustRequestsSentToTheXmlServicePort
パラメーターはFalseに設定されています。ただし、顧客がCitrix Virtual Desktops用にCitrix ADCを既に構成している場合は、TrustRequestsSentToTheXmlServicePort
がTrueに設定されています。
- Citrix ADC GUIで、[Configuration]>[Integrate with Citrix Products] の順に移動し、[XenApp and XenDesktop] をクリックします。
-
ゲートウェイインスタンスを選択し、編集アイコンをクリックします。
-
StoreFrontペインで、編集アイコンをクリックします。
-
[Secure Ticket Authority URL] を追加します。
- Secure XML機能が有効になっている場合、STA URLは負荷分散サービスのURLである必要があります。
- Secure XML機能が無効になっている場合、STA URLはSTAのURL(DDCのアドレス)である必要があり、DDCのTrustRequestsSentToTheXmlServicePortパラメーターはTrueに設定されている必要があります。