セキュリティ

サイトとCitrix Workspaceアプリ間の通信を保護するには、以下の一連のセキュリティ技術を使用します:

  • Citrix Gateway:詳しくは、このセクションのトピックと、Citrix GatewayおよびStoreFrontのドキュメントを参照してください。

注:

StoreFrontサーバーとユーザーデバイス間の通信にCitrix Gatewayを使用することをお勧めします。

  • ファイアウォール:ネットワークファイアウォールは、送信先アドレスとポート番号に基づいてパケットを通過させたりブロックしたりできます。サーバーの内部IPアドレスを外部インターネットアドレスにマップするネットワークファイアウォール(つまりNAT(Network Address Translation:ネットワークアドレス変換))を介してCitrix Workspaceアプリを使用する場合は、外部アドレスを構成します。

  • 信頼されたサーバー。

  • Citrix Virtual AppsまたはWeb Interface展開環境でのみ(XenDesktop 7には適用されません):SOCKSプロキシサーバーまたはセキュアプロキシサーバー(セキュリティプロキシサーバー、HTTPSプロキシサーバー、またはTLSトンネリングプロキシサーバーとも呼ばれます)。プロキシサーバーでネットワークから外部へのアクセスや外部からネットワークへのアクセスを制限して、Citrix Workspaceアプリとサーバー間の接続を制御できます。Citrix Workspaceアプリは、SOCKSプロトコルとセキュアプロキシプロトコルをサポートしています。

  • Citrix Virtual AppsまたはWeb Interface環境でのみ:Citrix Secure Web GatewayまたはTransport Layer Security(TLS)プロトコルによるSSL Relayソリューション。TLS Version 1.0から1.2がサポートされます。

Citrix Gateway

Citrix Gateway(旧称「Access Gateway」)を使用すると、StoreFrontストアへの接続をセキュアに保護して、デスクトップやアプリケーションへのユーザーアクセスを詳細に管理できます。

Citrix Gateway経由でデスクトップやアプリケーションに接続するには:

  1. 管理者により提供されたCitrix GatewayのURLを指定します。これを行うには、以下のいずれかの手順に従います:

    • セルフサービスユーザーインターフェイスの初回使用時に、[アカウントの追加]ダイアログボックスでURLを入力します。
    • セルフサービスユーザーインターフェイスの初回使用時以降は、[環境設定]>[アカウント]>[追加]の順に選択します。
    • storebrowseコマンドで接続する場合は、コマンドラインにURLを入力します。

    URLにより、ゲートウェイと、必要に応じて特定のストアが指定されます。

    • Citrix Workspaceアプリで検出された最初のストアに接続されるようにするには、URLを「https://gateway.company.com」の形式で指定します。
    • 特定のストアに接続する場合は、URLを「 https://gateway.company.com?<storename>」の形式で指定します。このURLには等号(=)を含めないでください。storebrowseコマンドで特定のストアに接続する場合は、URLを引用符で囲んで指定します。
  2. 資格情報の入力を確認するメッセージが表示されたら、ユーザー名、パスワード、およびセキュリティトークンを入力します。手順について詳しくは、Citrix Gatewayのドキュメントを参照してください。

    認証処理が完了すると、デスクトップまたはアプリケーションが表示されます。

プロキシサーバー

プロキシサーバーは、ネットワーク内部から外部への、および外部から内部へのアクセスを制限して、Citrix WorkspaceアプリとCitrix Virtual AppsまたはCitrix Virtual Desktopsとの間の接続を制御するために使います。Citrix Workspaceアプリは、SOCKSプロトコル、Citrix Secure Web GatewayおよびCitrix SSL Relay、セキュアプロキシプロトコル、およびWindows NTチャレンジ/レスポンス(NTLM)認証をサポートしています。

サポートされているプロキシの種類の一覧は、Trusted_Regions.iniとUntrusted_Regions.iniの内容によってAuto、None、およびWpadの種類に制限されます。SOCKS、Secure、またはScriptといった種類を使用する場合は、上記のファイルを編集して、許可された一覧に種類を追加します。

注:

確実にセキュアな接続を実行するには、TLSを有効にします。

セキュアプロキシサーバー

セキュアプロキシプロトコルを使用する接続を構成して、Windows NTチャレンジ/レスポンス(NTLM)認証のサポートを有効にできます。このプロトコルを使用できる場合は、追加構成なしで実行時にこれが検出され使用されます。

重要:

NTLMをサポートするには、ユーザーデバイスにOpenSSLライブラリのlibcrypto.soをインストールする必要があります。このライブラリは、多くの場合Linuxディストリビューションに含まれていますが、新しいウィンドウで必要な場合、http://www.openssl.org/からダウンロードすることもできます。

Secure Web GatewayとSSL

Citrix WorkspaceアプリをCitrix Secure Web GatewayまたはCitrix SSL(Secure Sockets Layer)Relayと共に使うことができます。Citrix Workspaceアプリでは、TLSプロトコルがサポートされます。TLS(Transport Layer Security)は、標準化されたSSLプロトコルの最新版です。IETF(Internet Engineering TaskForce)が、SSLの公開標準規格の開発をNetscape Communications社から引き継いだときに、SSLという名前をTLSに変更しました。TLSは、サーバーの認証、データの暗号化、メッセージの整合性の確認を行って、データ通信をセキュアに保護します。米国政府機関をはじめとする組織の中には、データ通信を保護するためにTLSの使用を義務付けているところもあります。このような組織では、さらにFIPS 140(Federal Information Processing Standard)などのテスト済み暗号化基準の使用を義務付けられる場合があります。FIPS 140は、暗号化の情報処理規格です。

Secure Web Gateway

Citrix Secure Web Gatewayを通常モードまたはリレーモードのどちらかで使用すると、Citrix Workspaceアプリとサーバー間の通信チャネルをセキュリティで保護することができます。Citrix Secure Web Gatewayを通常モードで使用し、ユーザーがWeb Interface経由で接続する場合は、Citrix Workspaceアプリ側での構成は不要です。

Citrix WorkspaceアプリがCitrix Secure Web Gatewayサーバーと通信するときは、リモートのWeb Interfaceサーバーで構成されている設定が使用されます。Citrix Workspaceアプリをサポートするプロキシサーバー設定の構成については、Web Interfaceのドキュメントを参照してください。

Citrix Secure Web Gateway Proxyがセキュリティで保護されたネットワーク内のサーバーにインストールされている場合は、Citrix Secure Web Gateway Proxyをリレーモードで使用できます。詳しくは、Citrix Virtual Apps(Citrix Secure Web Gateway)のドキュメントを参照してください。

ただし、リレーモードで使用する場合、Citrix Secure Web Gatewayサーバーはプロキシサーバーとして機能するため、Citrix Workspaceアプリで次の項目を構成する必要があります:

  • Citrix Secure Web Gatewayサーバーの完全修飾ドメイン名。
  • Citrix Secure Web Gatewayサーバーのポート番号。Citrix Secure Web Gatewayバージョン2.0では、リレーモードはサポートされていません。

完全修飾ドメイン名には、以下の3つの要素を順に指定する必要があります:

  • ホスト名
  • サブドメイン名
  • 最上位ドメイン名

たとえば、my_computer.my_company.comは完全修飾ドメイン名です。ホスト名(my_computer)、サブドメイン名(my_company)、最上位ドメイン名(com)が順に指定されています。サブドメイン名と最上位ドメイン名の組み合わせ(my_company.com)をドメイン名といいます。

SSL Relay

Citrix SSL RelayによるセキュアなTLS通信では、デフォルトでCitrix Virtual AppsサーバーのTCPポート443が使用されます。SSL Relayは、SSL/TLS接続要求を受信すると、その要求を解読してからサーバーに転送します。

443以外のリスナーポートを構成する場合、Citrix Workspaceアプリに対して非標準のリスナーポート番号を指定する必要があります。

Citrix SSL Relayを使用すると、次の通信をセキュアに保護できます:

  • TLSが有効なユーザーデバイスとサーバー間の通信。
  • Web InterfaceによるCitrix Virtual AppsサーバーとWebサーバー間の通信。

SSL Relayによるセキュリティ機能については、Citrix Virtual Appsのドキュメントを参照してください。TLS暗号化を使用するためのWeb Interfaceの構成については、Web Interfaceのドキュメントを参照してください。

TLS

[WFClient]セクションに次の構成オプションを追加することでネゴシエートできるTLSプロトコルのバージョンを制御できます。

  • MinimumTLS=1.0
  • MaximumTLS=1.2

これらはデフォルト値で、コードで設定されています。必要に応じてこれを変更します。

注1:

  • これらの値は、プログラムの開始時に必ず読み取られます。self-serviceまたはstorebrowseを開始した後でこれらの値を変更する場合、killall AuthManagerDaemon ServiceRecord selfservice storebrowseと入力します。

  • Linux向けCitrix WorkspaceアプリではSSLv3プロトコルは使用できません。

Linux向けCitrix Workspaceアプリは、DTLS 1.0およびTLS 1.0、1.1、1.2と次の暗号の組み合わせをサポートします:

  • RSA+AES256-SHA(RSAによる鍵交換、AES 256による暗号化、SHA-1によるダイジェスト)
  • RSA+AES256-SHA256(RSAによる鍵交換、AES 256による暗号化、SHA-256によるダイジェスト)
  • RSA+AES128-SHA(RSAによる鍵交換、AES 128による暗号化、SHA-1によるダイジェスト)
  • RSA+DES-CBC3-SHA(RSAによる鍵交換、トリプルDESによる暗号化、SHA-1によるダイジェスト)
  • RSA+RC4128-MD5(RSAによる鍵交換、RC4 128による暗号化、MD5によるダイジェスト)
  • RSA+RC4128-SHA(RSAによる鍵交換、RC4 128による暗号化、SHA-1によるダイジェスト)
  • RSA+AES128_GCM+SHA256(RSAによる鍵交換、AES 128による暗号化、SHA-256によるダイジェスト)
  • RSA+AES256_GCM+SHA384(RSAによる鍵交換、AES 256による暗号化、SHA-384によるダイジェスト)
  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384(楕円曲線ディフィーヘルマン鍵共有、RSAによる認証、AES 256およびGCM SHA 384によるダイジェスト)
  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384(楕円曲線ディフィーヘルマン鍵共有、認証用のRSA、AES 256およびCBC SHA 384によるダイジェスト)
  • TLS_RSA_AES256_CBC_SHA256(RSAによる認証、AES 256およびCBC SHA 256によるダイジェスト)

上に挙げた標準SSL/TLS暗号の組み合わせで有効な暗号キーサイズは、以下のように定義されています。

  • RC4アルゴリズム:128ビット(ストリーム暗号)
  • トリプルDESアルゴリズム:3×64ビット(有効サイズ、3×56 = 168ビット)(ブロックサイズ、64ビット)
  • AESアルゴリズム:128ビットまたは256ビット(ブロックサイズ、128ビット)
  • RSA鍵交換および認証では、サポートされる鍵長(モジュラス)は1,024ビットから4,096ビットの範囲です。
  • ECDH鍵交換の場合、サポートされる楕円曲線は、NIST P-256およびNIST P-384(256ビットおよび384ビットの鍵長)です。

暗号の組み合わせセットを選択するには、[WFClient]セクションで次の構成オプションを追加します。

  • SSLCiphers=GOV

これがデフォルト値です。その他の認識される値は、COMおよびALLです。

注:

TLSバージョン構成のように、self-serviceまたはstorebrowseを開始した後にこれらの値を変更する場合、 killall AuthManagerDaemon ServiceRecord selfservice storebrowseと入力する必要があります。

暗号化の更新

この機能は、安全な通信プロトコルにとって重要な変更です。接頭辞がTLS_RSA_の暗号の組み合わせは、Forward Secrecyを提供せず、強度が低いと見なされています。これらの暗号の組み合わせは、Citrix Receiverバージョン13.10では廃止されています。以前のバージョンでの使用はオプションです。

TLS_RSA_暗号の組み合わせは完全に削除されました:代わりに、より高度なTLS_ECDHE_RSA_暗号の組み合わせがサポートされています。環境がTLS_ECDHE_RSA_暗号の組み合わせで構成されていない場合、暗号化の強度が低いため、クライアントの起動はサポートされません。クライアント認証用に1536ビットのRSAキーがサポートされています:

次の高度な暗号の組み合わせがサポートされます:

  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384(0xc030)
  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384(0xc028)
  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA(0xc013)

暗号の組み合わせ

異なる暗号の組み合わせを有効にするには、パラメーター「SSLCiphers」の値をALL、COM、またはGOVに変更します。このオプションは$ICAROOT/configディレクトリにあるAll_Regions.iniファイルに含まれ、デフォルト値はALLです。

以下は、ALL、GOV、COMそれぞれによって提供される暗号の組み合わせセットです:

  • ALL
    • 3つの暗号の組み合わせすべてがサポートされています。
  • GOV
    • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384(0xc030)
    • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384(0xc028)
  • COM
    • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA(0xc013)

トラブルシューティングについては、「暗号の組み合わせ」を参照してください。

廃止された暗号の組み合わせ

重要:

バージョン1903以降は、以下の3つの暗号の組み合わせのみがサポートされる予定です:

  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 – GOV/ALL
  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 – GOV/ALL
  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA – COM/ALL

このトピック「廃止された暗号の組み合わせ」は、バージョン1901以前にのみ適用されます。バージョン1903以降では、高度な暗号の組み合わせTLS_ECDHE_RSA_のみがサポートされています。詳しくは、「暗号化の更新」を参照してください。このセクションは参考用であり、バージョン1901以前のクライアントを使用しているお客様のみを対象としています。以下の暗号の組み合わせは廃止されており、後方互換性もありません。

接頭辞がTLS_RSA_の暗号の組み合わせは、Forward Secrecyを提供しません。これらの暗号の組み合わせは現在業界では推奨されていません。ただし、以前のバージョンのCitrix Virtual Apps and Desktopsとの後方互換性をサポートするために、Linux向けCitrix Workspaceアプリではこれらの暗号の組み合わせを有効にすることもできます。

廃止された暗号の組み合わせを使用できるようにするためのフラグが作成されました。Linux向けCitrix Workspaceアプリ1808では、これらのフラグはデフォルトで有効になっていますが、AESまたは3DESアルゴリズムを使用した場合、デフォルトでこれらの非推奨の暗号の組み合わせを適用することはありません。ただし、フラグを変更して使用することにより、非推奨をより厳密に適用することができます。

セキュリティを強化するには、Enable_TLS_RSA_フラグをFalseに設定します。

以下は、非推奨の暗号の組み合わせの一覧です。

  • TLS_RSA_AES256_GCM_SHA384
  • TLS_RSA_AES128_GCM_SHA256
  • TLS_RSA_AES256_CBC_SHA256
  • TLS_RSA_AES256_CBC_SHA
  • TLS_RSA_AES128_CBC_SHA
  • TLS_RSA_3DES_CBC_EDE_SHA
  • TLS_RSA_WITH_RC4_128_MD5
  • TLS_RSA_WITH_RC4_128_SHA

注:

最後の2つの暗号の組み合わせはRC4アルゴリズムを使用しており、セキュアではないため推奨されません。また、TLS_RSA_3DES_CBC_EDE_SHA暗号の組み合わせを非推奨にすることも検討してください。フラグを使用して、これらすべての非推奨を適用することができます。

DTLS v1.2の構成については、「アダプティブトランスポート」を参照してください。

前提要件

バージョン1901以前を使用している場合、クライアントでこの機能を構成するには、次の手順を実行します:

.ICAClientが既に現在のユーザーのホームディレクトリに存在する場合:

  • All_Regions.iniファイルを削除します

または

  • AllRegions.iniファイルを保持するには、[Network\SSL] セクションの最後に次の行を追加します:
    • Enable_RC4-MD5=
    • Enable_RC4_128_SHA=
    • Enable_TLS_RSA_=

.ICAClientフォルダーが現在のユーザーのホームフォルダーに存在しない場合は、Citrix Workspaceアプリの新規インストールです。この場合、機能のデフォルト設定は保持されます。

廃止された暗号の組み合わせの構成

廃止された暗号の組み合わせを構成するには:

  1. $ICAROOT/config/All_Regions.iniファイルを開きます。
  2. Network\SSLセクションで、以下の3つのフラグを使用して廃止された暗号の組み合わせを有効または無効にします:

    • Enable_TLS_RSA_:デフォルトでは、Enable_TLS_RSA_フラグはTrueに設定されています。 Enable_TLS_RSA_フラグをTrueに設定すると、次の暗号の組み合わせが表示されます:

      • TLS_RSA_AES256_GCM_SHA384
      • TLS_RSA_AES128_GCM_SHA256
      • TLS_RSA_AES256_CBC_SHA256
      • TLS_RSA_AES256_CBC_SHA
      • TLS_RSA_AES128_CBC_SHA
      • TLS_RSA_3DES_CBC_EDE_SHA

    重要:

    他2つの暗号の組み合わせ(Enable_RC4-MD5とEnable_RC4_128_SHA)を使用するには、Enable_TLS_RSA_フラグをTrueに設定します。

    • Enable_RC4-MD5:デフォルトでEnable_RC4-MD5フラグはFalseに設定されています。 RC4-MD5暗号の組み合わせを有効にするには、このフラグをTrueに設定します。
    • Enable_RC4_128_SHA:デフォルトでEnable_RC4_128_SHAフラグはFalseに設定されています。 RC4_128_SHA暗号の組み合わせを有効にするには、このフラグをTrueに設定します。
  3. ファイルを保存します。

次の表は、各セットの暗号の組み合わせを示しています: 表1 - 暗号の組み合わせのサポートマトリックス

暗号の組み合わせのサポートマトリックスのイメージ

注:

上記のすべての暗号の組み合わせは、FIPSおよびSP800-52に準拠しています。最初の2つでのみ(D)TLS1.2接続が許可されています。暗号の組み合わせのサポートに関する包括的な一覧については、表1 - 暗号の組み合わせのサポートマトリックス を参照してください。