セキュリティに関する考慮事項とベストプラクティス
注:
組織は、規制要件を満たすために特定のセキュリティ標準に準拠する必要がある場合があります。このようなセキュリティ標準は時間とともに変化するため、このドキュメントではこの主題については扱いません。セキュリティ標準およびCitrix製品に関する最新情報については、Citrix Trust Centerを参照してください。
ファイアウォール
環境内のすべてのマシンを、必要に応じてエンクレーブ境界を含め、境界ファイアウォールで保護します。
環境内のすべてのマシンは、パーソナルファイアウォールによって保護されている必要があります。コアコンポーネントとVDAをインストールする際、Windowsファイアウォールサービスが検出された場合(ファイアウォールが有効になっていない場合でも)、コンポーネントおよび機能の通信に必要なポートを自動的に開くように選択できます。これらのファイアウォールポートを手動で構成することもできます。別のファイアウォールを使用する場合は、手動で構成する必要があります。必要なポートの詳細については、Tech Paper: Communication Ports Used by Citrix Technologiesを参照してください。
従来の環境をこのリリースに移行する場合、既存の境界ファイアウォールの再配置や新しい境界ファイアウォールの追加が必要になる場合があります。たとえば、データセンター内の従来のクライアントとデータベースサーバーの間に境界ファイアウォールがあるとします。このリリースを使用する場合、その境界ファイアウォールは、仮想デスクトップとユーザーデバイスが一方にあり、データセンター内のデータベースサーバーとDelivery Controllerがもう一方にあるように配置する必要があります。したがって、データベースサーバーとControllerを格納するために、データセンター内にエンクレーブを作成することを検討してください。また、ユーザーデバイスと仮想デスクトップ間の保護も検討してください。
注:
TCPポート1494および2598はICAおよびCGPに使用されるため、データセンター外のユーザーがアクセスできるようにファイアウォールで開かれている可能性があります。Citrixは、管理インターフェイスが意図せず攻撃にさらされる可能性を避けるため、これらのポートを他の目的に使用しないことを推奨します。ポート1494および2598は、Internet Assigned Number Authority (http://www.iana.org/)に正式に登録されています。
Delivery Controller™とのセキュアな通信
HTTPSを使用した通信の暗号化
StoreFrontおよびNetScaler Gatewayは、HTTPまたはHTTPSを介してDelivery Controller上で実行されているXMLサービスと通信します。構成によっては、VDAはWebSocketを使用してDelivery Controllerと通信する場合があります。Directorは、HTTPまたはHTTPSを介してODataを使用して監視データと通信します。HTTPSを有効にし、HTTPを無効にすることをお勧めします。これには、Delivery ControllerでTLSを有効にする必要があります。
-
HTTPSを使用して接続するようにStoreFrontを構成するには、Citrix Virtual Apps and Desktopsのリソースフィードを追加するおよびCitrix Gatewayアプライアンスを追加するを参照してください。
-
HTTPSを使用してDelivery Controllerに接続するようにNetScaler Gatewayを構成するには、NetScaler GatewayでのSecure Ticket Authorityの構成を参照してください。
セキュリティキー
セキュリティキーを使用して、承認されたStoreFrontおよびNetScalerサーバーのみがクラウドコネクタを介してDaaSに接続できるようにすることができます。これは、XML信頼を有効にしている場合に特に重要です。
XML信頼
デフォルトでは、StoreFrontが列挙や起動などのアクションのためにDelivery Controllerに接続する場合、DaaSがユーザーを認証し、ユーザーのグループメンバーシップを確認できるように、StoreFrontはユーザーのActive Directory資格情報を渡す必要があります。ただし、ドメインパススルー、スマートカード、SAMLなどの他の認証方法を使用する場合、StoreFrontはActive Directoryパスワードを持っていません。この場合、「XML信頼」を有効にする必要があります。XML信頼が有効になっている場合、Citrix Virtual Apps and Desktopsは、ユーザーのパスワードを検証することなく、アプリケーションの列挙や起動など、ユーザーに代わってStoreFrontがアクションを実行することを許可します。XML信頼を有効にする前に、セキュリティキーまたはファイアウォールやIPsecなどの別のメカニズムを使用して、信頼できるStoreFrontサーバーのみがDelivery Controllerに接続できるようにしてください。
XML信頼設定を確認、有効化、または無効化するには、Citrix Virtual Apps and Desktops PowerShell SDKを使用します。
- XML信頼設定の現在の値を確認するには、
Get-BrokerSiteを実行し、TrustRequestsSentToTheXMLServicePortの値を調べます。 - XML信頼を有効または無効にするには、
Set-BrokerSiteをパラメーターTrustRequestsSentToTheXmlServicePortとともに実行します。
VDAとDelivery Controller間の通信
VDAがControllerと通信するためのメカニズムは2つあります。
-
Windows Communication Foundation
Windows Communication Foundation (WCF)のメッセージレベル保護は、Delivery ControllerとVDA間の通信を保護します。これにより、TLSを使用した追加のトランスポートレベル保護の必要がなくなります。VDAとDelivery Controller間の通信に使用されるデフォルトポートは80です。ただし、ポートをカスタマイズできます。詳細については、VDAのカスタマイズを参照してください。
WCFにおけるメッセージセキュリティの詳細については、MicrosoftドキュメントのMessage Security in WCFを参照してください。
WCF構成は、ControllerとVDA間の相互認証にKerberosを使用します。暗号化には256ビットキーのCBCモードAESを使用します。メッセージの整合性にはSHA-1を使用します。
Microsoftによると、WCFで使用されるセキュリティプロトコルは、WS-SecurityPolicy 1.2を含むOASIS (Organization for the Advancement of Structured Information Standards) の標準に準拠しています。また、Microsoftは、WCFがSecurity Policy 1.2に記載されているすべてのアルゴリズムスイートをサポートしていると述べています。
コントローラーとVDA間の通信には、前述のアルゴリズムであるbasic256アルゴリズムスイートが使用されます。
WCF構成では、メッセージレベルのセキュリティ暗号化とともに、SOAP over HTTPプロトコルを使用します。
- WebSockets
これはWCFの現代的な代替手段です。VDAからDelivery Controllerへの通信にTLSポート443のみを使用するという利点があります。現在、MCSでプロビジョニングされたマシンでのみ利用可能です。詳細については、「VDAとDelivery Controller間のWebSocket通信」を参照してください。
Delivery Controllerとライセンスサーバー間のセキュアな通信
Delivery ControllerはHTTPS経由でライセンスサーバーと通信します。デフォルトでは自己署名証明書を使用しますが、エンタープライズまたはパブリック認証局が発行した証明書に置き換えることをお勧めします。詳細については、「Citrix Licensing ManagerおよびWeb Services for Licensingで使用される証明書の手動インストール」を参照してください。
WebブラウザーとWeb StudioおよびDirector間のセキュアな通信
Web StudioとDirectorは、Delivery Controllerと同じマシンまたは別のマシンにインストールできます。ユーザーはWebブラウザーを使用してWeb StudioとDirectorに接続します。デフォルトでは、Web Studioは自己署名証明書を使用してHTTPSを有効にしますが、スタンドアロンでインストールされたDirectorはHTTPSを構成しません。適切な証明書を使用して、Web StudioおよびDirectorでTLSを有効にすることをお勧めします。
ICA®通信の保護
Citrix Virtual Apps and Desktops™は、クライアントとVDA間のICAトラフィックを保護するためのいくつかのオプションを提供します。利用可能なオプションは次のとおりです。
- 基本暗号化: デフォルト設定。
- SecureICA: RC5 (128ビット) 暗号化を使用してセッションデータを暗号化できます。
- VDA TLS/DTLS: TLS/DTLSを使用したネットワークレベルの暗号化を可能にします。
基本暗号化
基本暗号化を使用する場合、トラフィックは次の図に示すように暗号化されます。

SecureICA
SecureICAを使用する場合、トラフィックは次の図に示すように暗号化されます。

詳細については、「セキュリティポリシー設定」を参照してください。
注1:
Workspaceアプリ for HTML5ではSecureICAはサポートされていません。
注2:
Citrix SecureICAはICA/HDXプロトコルの一部ですが、トランスポート層セキュリティ (TLS) のような標準準拠のネットワークセキュリティプロトコルではありません。
VDA TLS/DTLS
VDA TLS/DTLS暗号化を使用する場合、トラフィックは次の図に示すように暗号化されます。

VDA TLS/DTLSを構成するには、「VDAでのTLS設定」を参照してください。
仮想チャネル
環境内で許可される非Citrix仮想チャネルを制御するには、仮想チャネル許可リストを使用します。
印刷サーバーとのセキュアな通信
Virtual Delivery Agent (VDA) とユニバーサルプリントサーバー間のTCPベースの接続でTLSを有効にできます。詳細については、「ユニバーサルプリントサーバーでのトランスポート層セキュリティ(TLS)」を参照してください。
サイトデータベースとのセキュアな通信
サイトデータベースへのTLSの有効化については、「CTX137556」を参照してください。
VDAマシンのセキュリティ
一般的な推奨事項
VDAが最新のオペレーティングセキュリティ更新プログラムとウイルス対策で常に最新の状態に保たれていることを確認してください。
アプリケーションセキュリティ
非管理者ユーザーが悪意のある操作を実行するのを防ぐため、Citrix®はVDAホスト上のインストーラー、アプリケーション、実行可能ファイル、およびスクリプトに対してWindows AppLockerルールを構成することを推奨します。
8.3ファイル名
VDAで8.3ファイル名を無効にできます。「Microsoft fsutilドキュメント」を参照してください。
データストレージに関する考慮事項
デスクトップ環境は、プールされたデスクトップや専用デスクトップなど、さまざまな種類のデスクトップで構成される場合があります。ユーザーは、プールされたデスクトップなど、ユーザー間で共有されるデスクトップにデータを保存してはなりません。ユーザーが専用デスクトップにデータを保存する場合、そのデスクトップが後で他のユーザーに利用可能になる場合は、そのデータを削除する必要があります。
ユーザーアカウント管理
アカウント管理にはWindowsのベストプラクティスを適用してください。Machine Creation ServicesまたはProvisioning Servicesによって複製される前に、テンプレートまたはイメージ上にアカウントを作成しないでください。保存された特権ドメインアカウントを使用してタスクをスケジュールしないでください。共有Active Directoryマシンアカウントを手動で作成しないでください。これらのプラクティスは、マシン攻撃がローカルの永続的なアカウントパスワードを取得し、それらを使用して他のユーザーに属するMCS/PVS共有イメージにログオンするのを防ぐのに役立ちます。
ユーザーには、必要な機能のみを付与してください。Microsoft Windowsの特権は、通常の方法でデスクトップに引き続き適用されます。つまり、ユーザー権利の割り当てを通じて特権を構成し、グループポリシーを通じてグループメンバーシップを構成します。このリリースの利点の1つは、デスクトップが保存されているコンピューターに対する物理的な制御を付与することなく、ユーザーにデスクトップへの管理者権限を付与できることです。
デスクトップの特権を計画する際には、次の点に注意してください。
- デフォルトでは、非特権ユーザーがデスクトップに接続すると、自身のユーザーデバイスのタイムゾーンではなく、デスクトップを実行しているシステムのタイムゾーンが表示されます。ユーザーがデスクトップを使用する際にローカル時刻を表示できるようにする方法については、「デリバリーグループの管理」の記事を参照してください。
- デスクトップの管理者であるユーザーは、そのデスクトップを完全に制御できます。デスクトップが専用デスクトップではなくプールされたデスクトップである場合、そのユーザーは、将来のユーザーを含む、そのデスクトップの他のすべてのユーザーに関して信頼されている必要があります。デスクトップのすべてのユーザーは、この状況によってデータセキュリティに潜在的に永続的なリスクがあることを認識する必要があります。この考慮事項は、単一ユーザーのみを持つ専用デスクトップには適用されません。そのユーザーは、他のどのデスクトップの管理者であってもなりません。
- デスクトップの管理者であるユーザーは、悪意のあるソフトウェアを含むソフトウェアをそのデスクトップに一般的にインストールできます。また、ユーザーはデスクトップに接続されているネットワーク上のトラフィックを監視または制御できる可能性もあります。
ログオン権限の管理
ログオン権限は、ユーザーアカウントとコンピューターアカウントの両方に必要です。Microsoft Windowsの特権と同様に、ログオン権限は通常の方法でデスクトップに引き続き適用されます。つまり、ユーザー権利の割り当てを通じてログオン権限を構成し、グループポリシーを通じてグループメンバーシップを構成します。
Windowsのログオン権限は、ローカルログオン、リモートデスクトップサービス経由のログオン、ネットワーク経由のログオン(ネットワークからこのコンピューターにアクセス)、バッチジョブとしてのログオン、サービスとしてのログオンです。
コンピューターアカウントの場合、コンピューターには必要なログオン権限のみを付与してください。「ネットワークからこのコンピューターにアクセス」というログオン権限は、Delivery Controllerのコンピューターアカウントに必要です。
ユーザーアカウントについては、必要なログオン権限のみをユーザーに付与してください。
Microsoftによると、デフォルトでは、Remote Desktop Usersグループには「リモートデスクトップサービスを介したログオンを許可する」ログオン権限が付与されています(ドメインコントローラーを除く)。
組織のセキュリティポリシーによっては、このグループをそのログオン権限から削除するよう明示的に規定している場合があります。次のアプローチを検討してください。
- Multi-session OS用Virtual Delivery Agent(VDA)は、Microsoft Remote Desktop Servicesを使用します。Remote Desktop Usersグループを制限付きグループとして構成し、Active Directoryグループポリシーを介してグループのメンバーシップを制御できます。詳細については、Microsoftのドキュメントを参照してください。
- Single-session OS用VDAを含むCitrix Virtual Apps™ and Desktopsのその他のコンポーネントでは、Remote Desktop Usersグループは不要です。したがって、これらのコンポーネントでは、Remote Desktop Usersグループに「リモートデスクトップサービスを介したログオンを許可する」ログオン権限は必要ありません。削除できます。さらに:
- リモートデスクトップサービスを介してこれらのコンピューターを管理する場合は、すべての管理者がすでにAdministratorsグループのメンバーであることを確認してください。
- リモートデスクトップサービスを介してこれらのコンピューターを管理しない場合は、これらのコンピューターでリモートデスクトップサービス自体を無効にすることを検討してください。
ユーザーとグループを「リモートデスクトップサービスを介したログオンを拒否する」ログオン権限に追加することは可能ですが、ログオン拒否権限の使用は一般的に推奨されません。詳細については、Microsoftのドキュメントを参照してください。
Delivery Controllerのセキュリティ
Delivery Controller上のWindowsサービス
Delivery Controllerのインストールにより、次のWindowsサービスが作成されます。
- Citrix AD Identity Service (NT SERVICE\CitrixADIdentityService): VMのMicrosoft Active Directoryコンピューターアカウントを管理します。
- Citrix Analytics (NT SERVICE\CitrixAnalytics): サイト管理者が承認した場合、Citrixが使用するサイト構成の使用状況情報を収集します。その後、この情報をCitrixに送信し、製品の改善に役立てます。
- Citrix App Library (NT SERVICE\CitrixAppLibrary): AppDiskの管理とプロビジョニング、AppDNA統合、およびApp-Vの管理をサポートします。
- Citrix Broker Service (NT SERVICE\CitrixBrokerService): ユーザーが利用できる仮想デスクトップまたはアプリケーションを選択します。
- Citrix Configuration Logging Service (NT SERVICE\CitrixConfigurationLogging): 管理者がサイトに対して行ったすべての構成変更およびその他の状態変更を記録します。
- Citrix Configuration Service (NT SERVICE\CitrixConfigurationService): 共有構成のためのサイト全体のレポジトリ。
- Citrix Delegated Administration Service (NT SERVICE\CitrixDelegatedAdmin): 管理者に付与された権限を管理します。
- Citrix Environment Test Service (NT SERVICE\CitrixEnvTest): 他のDelivery Controllerサービスのセルフテストを管理します。
- Citrix Host Service (NT SERVICE\CitrixHostService): Citrix Virtual AppsまたはCitrix Virtual Desktopsの展開で使用されるハイパーバイザーインフラストラクチャに関する情報を保存し、コンソールがハイパーバイザープール内のリソースを列挙するために使用する機能も提供します。
- Citrix Machine Creation Services (NT SERVICE\CitrixMachineCreationService): デスクトップVMの作成をオーケストレーションします。
- Citrix Monitor Service (NT SERVICE\CitrixMonitor): Citrix Virtual AppsまたはCitrix Virtual Desktopsのメトリックを収集し、履歴情報を保存し、トラブルシューティングおよびレポートツール用のクエリインターフェイスを提供します。
- Citrix StoreFront Service (NT SERVICE\ CitrixStorefront): StoreFrontの管理をサポートします。(StoreFrontコンポーネント自体の一部ではありません。)
- Citrix StoreFront Privileged Administration Service (NT SERVICE\CitrixPrivilegedService): StoreFrontの特権管理操作をサポートします。(StoreFrontコンポーネント自体の一部ではありません。)
- Citrix Config Synchronizer Service (NT SERVICE\CitrixConfigSyncService): メインサイトデータベースからローカルホストキャッシュに構成データを伝播します。
- Citrix High Availability Service (NT SERVICE\CitrixHighAvailabilityService): メインサイトデータベースが利用できない場合に、ユーザーが利用できる仮想デスクトップまたはアプリケーションを選択します。
Delivery Controllerのインストールにより、次のWindowsサービスも作成されます。これらは、他のCitrixコンポーネントと一緒にインストールされた場合にも作成されます。
- Citrix Diagnostic Facility COM Server (NT SERVICE\CdfSvc): Citrixサポートが使用する診断情報の収集をサポートします。
- Citrix Telemetry Service (NT SERVICE\CitrixTelemetryService): Citrixによる分析のために診断情報を収集し、分析結果と推奨事項を管理者が表示してサイトの問題の診断に役立てることができます。
Delivery Controllerのインストールにより、次のWindowsサービスも作成されます。これは現在使用されていません。有効になっている場合は、無効にしてください。
- Citrix Remote Broker Provider (NT SERVICE\XaXdCloudProxy)
Delivery Controllerのインストールにより、次のWindowsサービスも作成されます。これらは現在使用されていませんが、有効にする必要があります。無効にしないでください。
- Citrix Orchestration Service (NT SERVICE\CitrixOrchestration)
- Citrix Trust Service (NT SERVICE\CitrixTrust)
Citrix StoreFront™ Privileged Administration Serviceを除き、これらのサービスには「サービスとしてログオン」ログオン権限と、「プロセスのメモリクォータの調整」、「セキュリティ監査の生成」、「プロセスレベルトークンの置き換え」の特権が付与されています。これらのユーザー権限を変更する必要はありません。これらの特権はDelivery Controllerでは使用されず、自動的に無効になります。
Citrix StoreFront Privileged AdministrationサービスとCitrix Telemetry Serviceを除き、前述のDelivery Controller WindowsサービスはNETWORK SERVICE IDとしてログオンするように構成されています。これらのサービス設定を変更しないでください。
Citrix Config Synchronizer Serviceは、NETWORK SERVICEアカウントがDelivery Controller上のローカル管理者グループに属している必要があります。これにより、ローカルホストキャッシュが正しく機能します。
Citrix StoreFront Privileged Administrationサービスは、ローカルシステム(NT AUTHORITY\SYSTEM)としてログオンするように構成されています。これは、通常サービスでは利用できないDelivery Controller StoreFront操作(Microsoft IISサイトの作成を含む)に必要です。そのサービス設定を変更しないでください。
Citrix Telemetry Serviceは、独自のサービス固有のIDとしてログオンするように構成されています。
Citrix Telemetry Serviceは無効にできます。このサービスと、すでに無効になっているサービスを除き、これらのDelivery Controller Windowsサービスの他のサービスを無効にしないでください。
ログオン権限の管理
VDAのコンピューターアカウントには、「ネットワークからこのコンピューターにアクセス」ログオン権限が必要です。Active Directory OUベースのController検出を参照してください。
クライアントアクセス
クライアントアクセスは通常、Citrix StoreFront を展開することで提供されます。StoreFront のセキュリティ保護の詳細については、StoreFront ドキュメントを参照してください。
リモートユーザーが StoreFront および VDA に安全に接続できるようにするには、NetScaler® Gateway を展開します。
Citrix は、クライアントが Citrix Workspace アプリを使用して StoreFront に接続することを推奨します。詳細については、各オペレーティングシステム用の Citrix Workspace アプリのドキュメントのセキュリティセクションを参照してください。または、ユーザーは Web ブラウザーを使用して StoreFront にアクセスすることもできます。
ユーザーが Citrix Workspace™ アプリ以外のアプリケーションを実行する能力が限られているシンクライアントをユーザーに提供することを検討してください。デバイスが組織によって管理されている場合、オペレーティングシステムのセキュリティ更新プログラムとウイルス対策ソフトウェアの展開を確実にするためのポリシーを設定する必要があります。しかし、多くの場合、ユーザーは組織の管理外にある管理されていないデバイスから接続できる必要があります。次の機能の使用を検討してください。
- Endpoint Analysis は、オペレーティングシステムやウイルス対策などのセキュリティ情報をエンドポイントでスキャンし、セキュリティ要件を満たさないクライアントへのアクセスを拒否します。
- App Protection は、キーロガーと画面キャプチャをブロックします。
混在バージョン環境
たとえば、VDA が Delivery Controller と異なるバージョンである混在バージョン環境は、一部のアップグレード中に避けられません。ベストプラクティスに従い、異なるバージョンの Citrix コンポーネントが共存する時間を最小限に抑えてください。混在バージョン環境では、たとえばセキュリティポリシーが一律に適用されない場合があります。
注:
これは他のソフトウェア製品でも一般的です。以前のバージョンの Active Directory を使用すると、後のバージョンの Windows ではグループポリシーが部分的にしか適用されません。
次のシナリオでは、特定の混在バージョン Citrix 環境で発生する可能性のあるセキュリティ問題について説明します。Citrix Receiver 1.7 を使用して XenApp および XenDesktop 7.6 Feature Pack 2 の VDA を実行している仮想デスクトップに接続する場合、ポリシー設定 [デスクトップとクライアント間のファイル転送を許可する] はサイトで有効になっていますが、XenApp および XenDesktop 7.1 を実行している Delivery Controller では無効にできません。これは、製品の後のバージョンでリリースされたポリシー設定を認識しません。このポリシー設定により、ユーザーはファイルを仮想デスクトップにアップロードおよびダウンロードできるため、これがセキュリティ問題となります。この問題を回避するには、Delivery Controller (または Studio のスタンドアロンインスタンス) をバージョン 7.6 Feature Pack 2 にアップグレードし、グループポリシーを使用してポリシー設定を無効にします。または、影響を受けるすべての仮想デスクトップでローカルポリシーを使用します。
Remote PC Access のセキュリティに関する考慮事項
Remote PC Access は、次のセキュリティ機能を実装しています。
- スマートカードの使用がサポートされています。
- リモートセッションが接続されると、オフィス PC のモニターは空白で表示されます。
- Remote PC Access は、CTRL+ALT+DEL および USB 対応スマートカードと生体認証デバイスを除く、すべてのキーボードおよびマウス入力をリモートセッションにリダイレクトします。
- SmoothRoaming は単一ユーザーのみがサポートされます。
- ユーザーがオフィス PC にリモートセッションを接続している場合、そのユーザーのみがオフィス PC のローカルアクセスを再開できます。ローカルアクセスを再開するには、ユーザーはローカル PC で Ctrl-Alt-Del を押し、リモートセッションで使用されたものと同じ資格情報でログオンします。システムに適切なサードパーティの資格情報プロバイダー統合がある場合、ユーザーはスマートカードを挿入するか、生体認証を利用してローカルアクセスを再開することもできます。このデフォルトの動作は、グループポリシーオブジェクト (GPO) を介して高速ユーザー切り替えを有効にするか、レジストリを編集することで上書きできます。
注:
Citrix は、VDA 管理者権限を一般セッションユーザーに割り当てないことを推奨します。
自動割り当て
デフォルトでは、Remote PC Access は複数のユーザーの VDA への自動割り当てをサポートしています。XenDesktop 5.6 Feature Pack 1 では、管理者は RemotePCAccess.ps1 PowerShell スクリプトを使用してこの動作を上書きできます。このリリースでは、複数の自動 Remote PC 割り当てを許可または禁止するためにレジストリエントリを使用します。この設定はサイト全体に適用されます。
注意:
レジストリを誤って編集すると、オペレーティングシステムの再インストールが必要になるような深刻な問題が発生する可能性があります。Citrix は、レジストリエディターの誤った使用によって生じる問題が解決できることを保証できません。レジストリエディターの使用は自己責任で行ってください。編集する前に必ずレジストリをバックアップしてください。
自動割り当てを単一ユーザーに制限するには:
サイト内の各 Controller で、次のレジストリエントリを設定します。