ADC
ご意見をお寄せいただきありがとうございました

この記事は機械翻訳されています.免責事項

SSLによる負荷分散トラフィックのセキュリティ保護

Citrix ADC SSLオフロード機能は、SSLトランザクションを行うWebサイトのパフォーマンスを、透過的に向上させます。SSLオフロードでは、CPU負荷の高いSSL暗号化および復号化タスクをローカルWebサーバーからアプライアンスにオフロードすることにより、SSLデータの処理によるサーバーパフォーマンスの低下を引き起こすことなく、Webアプリケーションを安全に配信できます。SSLトラフィックを復号化すると、あらゆる標準サービスで処理できるようになります。SSLプロトコルは、さまざまな種類のHTTPおよびTCPデータとシームレスに機能して、このようなデータを使用するトランザクションに、セキュリティ保護されたチャネルを提供します。

SSLを設定するには、まずSSLを有効にする必要があります。次に、アプライアンスでHTTPまたはTCPサービスおよびSSL仮想サーバーを構成し、そのサービスを仮想サーバーにバインドします。証明書とキーのペアを追加してSSL仮想サーバーにバインドする必要もあります。Outlook Web Accessサーバーを使用する場合は、SSLサポートを有効にするアクションとそのアクションに適用するポリシーを作成する必要があります。SSL仮想サーバーは、暗号化された着信トラフィックをインターセプトして、ネゴシエートしたアルゴリズムを使用してそのトラフィックを復号化します。復号化されたデータは、アプライアンス上のほかのエンティティに転送され、適切に処理されます。

SSLオフロードの詳細については、「SSLオフロードおよびSSLアクセラレーション」を参照してください。

SSLを設定するタスクの順序

SSLを設定するには、まずSSLを有効にする必要があります。次に、Citrix ADCアプライアンスでSSL仮想サーバーとHTTPまたはTCPサービスを作成する必要があります。最後に、有効なSSL証明書と設定済みのサービスを、SSL仮想サーバーにバインドする必要があります。

SSL仮想サーバーは、暗号化された着信トラフィックを傍受して、ネゴシエートしたアルゴリズムを使用してそのトラフィックを解読します。復号化されたデータは、Citrix ADCアプライアンス上のほかのエンティティに転送され、適切に処理されます。

次のフローチャートには、基本的なSSLオフロードセットアップを設定するタスクの順序が示されています。

図1:SSLオフロードを構成するための一連のタスク

SSLフローチャート

SSLオフロードを有効にする

まず、SSL機能を有効にします。SSL機能を有効にしなくてもアプライアンス上でSSLベースのエンティティを設定できますが、それらのエンティティはSSLを有効にするまで動作しません。

CLIを使用してSSLを有効にする

コマンドプロンプトで次のコマンドを入力し、SSLオフロードを有効にして構成を確認します。

- enable ns feature SSL - show ns feature

例:

> enable ns feature ssl Done > show ns feature Feature Acronym Status ------- ------- ------ 1) Web Logging WL ON 2) SurgeProtection SP OFF 3) Load Balancing LB ON . . . 9) SSL Offloading SSL ON 10) Global Server Load Balancing GSLB ON . . Done >

GUIを使用してSSLを有効にする

次の手順を実行します:

  1. ナビゲーションペインで、[System] を展開し、[Settings] をクリックします。
  2. 詳細ペインの[Modes and Features]で、[Change basic features]をクリックします。
  3. [SSL Offloading]チェックボックスをオンにして、[OK]をクリックします。
  4. [Enable/Disable Feature(s)?]ダイアログボックスで、[Yes]をクリックします。

HTTPサービスを作成する

アプライアンス上の各サービスは、サーバー上の個々のアプリケーションとして機能します。構成したサービスは、アプライアンスがネットワーク上のサーバーにアクセスしてその状態を監視できるようになるまで無効状態になります。このトピックでは、HTTPサービスを作成する手順について説明します。

注:TCPトラフィックの場合、次の手順を実行しますが、HTTPサービスの代わりにTCPサービスを作成します。

CLIを使用してHTTPサービスを追加します

コマンドプロンプトで次のコマンドを入力し、HTTPサービスを追加して構成を確認します。

- add service <name> (<IP> | <serverName>) <serviceType> <port> - show service <name>

例:

> add service SVC_HTTP1 10.102.29.18 HTTP 80 Done > show service SVC_HTTP1 SVC_HTTP1 (10.102.29.18:80) - HTTP State: UP Last state change was at Wed Jul 15 06:13:05 2009 Time since last state change: 0 days, 00:00:15.350 Server Name: 10.102.29.18 Server ID : 0 Monitor Threshold : 0 Max Conn: 0 Max Req: 0 Max Bandwidth: 0 kbits Use Source IP: NO Client Keepalive(CKA): NO Access Down Service: NO TCP Buffering(TCPB): NO HTTP Compression(CMP): YES Idle timeout: Client: 180 sec Server: 360 sec Client IP: DISABLED Cacheable: NO SC: OFF SP: OFF Down state flush: ENABLED 1) Monitor Name: tcp-default State: UP Weight: 1 Probes: 4 Failed [Total: 0 Current: 0] Last response: Success - TCP syn+ack received. Response Time: N/A Done

GUIを使用してHTTPサービスを追加します

次の手順を実行します:

  1. [Traffic Management]>[SSL Offload]>[Servers] の順に選択します。
  2. 詳細ペインで、[Add] をクリックします。
  3. [Create Service] ダイアログボックスで、サービスの名前、IPアドレス、およびポートを入力します(たとえば、SVC_HTTP1, 10.102.29.18、および80)。
  4. [Protocol] ボックスの一覧で、サービスの種類(ここでは[HTTP])を選択します。
  5. [Create] をクリックしてから、[Close] をクリックします。構成したHTTPサービスが、[Services]ページに表示されます。
  6. 作成したサービスを選択して、ペインの下部にある[Details]セクションを表示し、パラメーターが正しく構成されていることを確認します。

SSLベースの仮想サーバーを追加する

基本的なSSLオフロードセットアップでは、SSL仮想サーバーは暗号化されたトラフィックをインターセプトおよび復号化して、仮想サーバーにバインドされているサービスにクリアテキストメッセージを送信します。CPU負荷の高いSSL処理をアプライアンス側にオフロードすると、バックエンドサーバーでより多くの要求を処理できるようになります。

CLIを使用してSSLベースの仮想サーバーを追加します

コマンドプロンプトで次のコマンドを入力し、SSLベースの仮想サーバーを追加して構成を確認します。

- add lb vserver <name> <serviceType> [<IPAddress> <port>] - show lb vserver <name>

注意: 安全に接続するには、SSLベースの仮想サーバーを有効にする前に、有効なSSL証明書をSSLベースの仮想サーバーにバインドする必要があります。

例:

> add lb vserver vserver-SSL-1 SSL 10.102.29.50 443 Done > show lb vserver vserver-SSL-1 vserver-SSL-1 (10.102.29.50:443) - SSL Type: ADDRESS State: DOWN[Certkey not bound] Last state change was at Tue Jun 16 06:33:08 2009 (+176 ms) Time since last state change: 0 days, 00:03:44.120 Effective State: DOWN Client Idle Timeout: 180 sec Down state flush: ENABLED Disable Primary Vserver On Down : DISABLED No. of Bound Services : 0 (Total) 0 (Active) Configured Method: LEASTCONNECTION Mode: IP Persistence: NONE Vserver IP and Port insertion: OFF Push: DISABLED Push VServer: Push Multi Clients: NO Push Label Rule: Done

GUIを使用してSSLベースの仮想サーバーを追加します

次の手順を実行します:

  1. [Traffic Management]>[SSL Offload]>[Virtual Servers] の順に選択します。
  2. 詳細ペインで、[Add] をクリックします。
  3. [Create Virtual Server (SSL Offload)] ダイアログボックスで、仮想サーバーの名前、IPアドレス、およびポートを入力します。
  4. [Protocol] ボックスの一覧で、仮想サーバーの種類(たとえば、[SSL])を選択します。
  5. [Create] をクリックしてから、[Close] をクリックします。
  6. 作成した仮想サーバーを選択して、ペインの下部にある[Details]セクションを表示し、パラメーターが正しく構成されていることを確認します。証明書とキーのペアとサービスが仮想サーバーにバインドされていないため、仮想サーバーはDOWNとしてマークされます。

注意: 安全に接続するには、SSLベースの仮想サーバーを有効にする前に、有効なSSL証明書をSSLベースの仮想サーバーにバインドする必要があります。

サービスのSSL仮想サーバーへのバインド

SSL仮想サーバーが復号化した受信データは、その仮想サーバーにバインドされたサービスに転送されます。

アプライアンスとサーバーの間のデータ転送は、暗号化したりクリアテキストで送信したりできます。アプライアンスとサーバーの間のデータ転送を暗号化する場合、トランザクション全体がエンドツーエンドで保護されることになります。エンドツーエンドのセキュリティのためのシステム構成について詳しくは、「SSLオフロードおよびアクセラレーション」を参照してください。

CLIを使用してサービスを仮想サーバーにバインドします

コマンドプロンプトで次のコマンドを入力し、サービスをSSL仮想サーバーにバインドして構成を確認します。

- bind lb vserver <name> <serviceName> - show lb vserver <name>

> bind lb vserver vserver-SSL-1 SVC_HTTP1 Done > show lb vserver vserver-SSL-1 vserver-SSL-1 (10.102.29.50:443) - SSL Type: ADDRESS State: DOWN[Certkey not bound] Last state change was at Tue Jun 16 06:33:08 2009 (+174 ms) Time since last state change: 0 days, 00:31:53.70 Effective State: DOWN Client Idle Timeout: 180 sec Down state flush: ENABLED Disable Primary Vserver On Down : DISABLED No. of Bound Services : 1 (Total) 0 (Active) Configured Method: LEASTCONNECTION Mode: IP Persistence: NONE Vserver IP and Port insertion: OFF Push: DISABLED Push VServer: Push Multi Clients: NO Push Label Rule: 1) SVC_HTTP1 (10.102.29.18: 80) - HTTP State: DOWN Weight: 1 Done

GUIを使用してサービスを仮想サーバーにバインドする

  1. [Traffic Management]>[SSL Offload]>[Virtual Servers] の順に選択します。
  2. 詳細ペインで仮想サーバーを選択して、[Open]をクリックします。
  3. [Services]タブの[Active]列で、選択した仮想サーバーにバインドするサービスの横にあるチェックボックスをオンにします。
  4. [OK] をクリックします。
  5. ペインの下部にある[Details]セクションの[Number of Bound Services ]カウンターが、仮想サーバーにバインドしたサービスの数だけ増加することを確認します。

証明書とキーのペアを追加します

SSL証明書は、SSLキー交換および暗号化/復号化プロセスに含まれるエレメントです。証明書は、SSLサーバーのアイデンティティを確立するためにSSLハンドシェイク中に使用されます。Citrix ADCアプライアンスに含まれている、有効な既存のSSL証明書を使用するか、独自のSSL証明書を作成できます。アプライアンスは、最大4096ビットのRSA証明書をサポートします。

次の曲線のECDSA証明書のみがサポートされています:

  • prime256v1(ADC上のP_256)
  • secp384r1 (ADC上のP_384)
  • secp521r1 (ADC上のP_521、VPXでのみサポートされます)
  • secp224r1 (ADC上のP_224、VPXでのみサポートされます)

注:信頼される証明機関から発行された有効なSSL証明書を使用することをお勧めします。無効な証明書や自分で作成した証明書は、一部のSSLクライアントと互換性がありません。

SSL処理に使用する前に、証明書を対応するキーとペアにする必要があります。次に、証明書とキーのペアを仮想サーバーにバインドすると、SSL処理に使用できるようになります。

CLIを使用して証明書キーペアを追加します

注: ECDSA証明書とキーのペアの作成については、「ECDSA証明書とキーのペアの作成」を参照してください。

コマンドプロンプトで次のコマンドを入力し、証明書とキーのペアを作成して構成を確認します。

- add ssl certKey <certkeyName> -cert <string> [-key <string>] - show sslcertkey <name>

例:

> add ssl certKey CertKey-SSL-1 -cert ns-root.cert -key ns-root.key Done > show sslcertkey CertKey-SSL-1 Name: CertKey-SSL-1 Status: Valid, Days to expiration:4811 Version: 3 Serial Number: 00 Signature Algorithm: md5WithRSAEncryption Issuer: C=US,ST=California,L=San Jose,O=Citrix ANG,OU=NS Internal,CN=de fault Validity Not Before: Oct 6 06:52:07 2006 GMT Not After : Aug 17 21:26:47 2022 GMT Subject: C=US,ST=California,L=San Jose,O=Citrix ANG,OU=NS Internal,CN=d efault Public Key Algorithm: rsaEncryption Public Key size: 1024 Done

GUIを使用して証明書キーペアを追加します

次の手順を実行します:

  1. [Traffic Management ]> [SSL] > [Certificates] に移動します。
  2. 詳細ペインで、[Add] をクリックします。
  3. [Install Certificate] ダイアログボックスの[Certificate-Key Pair Name]ボックスに、追加する証明書とキーのペアの名前(たとえば、「Certkey-SSL-1」)を入力します。
  4. [Details] の[Certificate File Name]で、[Browse (Appliance)] をクリックして証明書を検索します。証明書とキーはともに、アプライアンスの/nsconfig/ssl/ディレクトリに保存されます。ローカルシステムにある証明書を使用するには、[Local]を選択します。
  5. 使用する証明書を選択して、[Select]をクリックします。
  6. [Private Key File Name]で、[Browse (Appliance)] をクリックして秘密キーファイルを検索します。ローカルシステムにある秘密キーを使用するには、[Local]を選択します。
  7. 使用するキーを選択して、[Select] をクリックします。証明書とキーのペアで使用するキーを暗号化するには、暗号化に使用するパスワードを[Password]ボックスに入力します。
  8. [インストール] をクリックします。
  9. 証明書キーのペアをダブルクリックし、[証明書の詳細]ウィンドウで、パラメーターが正しく構成されて保存されていることを確認します。

SSL証明書キーペアの仮想サーバーへのバインド

SSL証明書とそれに対応するキーをペアにしたら、証明書とキーのペアをSSL仮想サーバーにバインドして、SSL処理に使用できるようにする必要があります。セキュリティで保護されたセッションでは、クライアントコンピューターとアプライアンス上のSSLベースの仮想サーバーの間に接続を確立する必要があります。その後、仮想サーバーで着信トラフィックに対してSSL処理が実行されます。したがって、アプライアンスでSSL仮想サーバーを有効にする前に、有効なSSL証明書をSSL仮想サーバーにバインドする必要があります。

CLIを使用して、SSL証明書キーペアを仮想サーバーにバインドします

コマンドプロンプトで次のコマンドを入力し、SSL証明書とキーのペアを仮想サーバーにバインドして構成を確認します。

- bind ssl vserver <vServerName> -certkeyName <string> - show ssl vserver <name>

例:

> bind ssl vserver Vserver-SSL-1 -certkeyName CertKey-SSL-1 Done > show ssl vserver Vserver-SSL-1 Advanced SSL configuration for VServer Vserver-SSL-1: DH: DISABLED Ephemeral RSA: ENABLED Refresh Count: 0 Session Reuse: ENABLED Timeout: 120 seconds Cipher Redirect: ENABLED SSLv2 Redirect: ENABLED ClearText Port: 0 Client Auth: DISABLED SSL Redirect: DISABLED Non FIPS Ciphers: DISABLED SSLv2: DISABLED SSLv3: ENABLED TLSv1: ENABLED 1) CertKey Name: CertKey-SSL-1 Server Certificate 1) Cipher Name: DEFAULT Description: Predefined Cipher Alias Done

GUIを使用して、SSL証明書キーペアを仮想サーバーにバインドします

次の手順を実行します:

  1. [Traffic Management]>[SSL Offload]>[Virtual Servers] の順に選択します。
  2. 証明書とキーのペアをバインドする仮想サーバー(たとえば、[Vserver-SSL-1])を選択して、[Open]をクリックします。
  3. [Configure Virtual Server (SSL Offload)] ダイアログボックスの [SSL Settings] タブにある [Available] で、仮想サーバーにバインドする証明書とキーのペアを選択します。次に、[追加] をクリックします。
  4. [OK] をクリックします。
  5. 選択した証明書キーのペアが[Configured]領域に表示されていることを確認します。

Outlook Web Accessに対するサポートの構成

Citrix ADCアプライアンスでOutlook Web Access(OWA)サーバーを使用している場合は、OWAサーバー宛のHTTP要求に特別なヘッダーフィールド「FRONT-END-HTTPS: ON」を挿入するようにアプライアンスを構成して、URLリンクが「http://」ではなく「https://」として生成されるようにします。

注: OWAサポートは、HTTPベースのSSL仮想サーバーとSSLサービスで有効にできます。TCPベースのSSL仮想サーバーとSSLサービスではOWAをサポートできません。

OWAサポートを構成するには、次の操作を実行します。

  • OWAサポートを有効にするSSLアクションを作成します。
  • SSLポリシーを作成します。
  • ポリシーをSSL仮想サーバーにバインドします。

OWAサポートを有効にするSSLアクションを作成します

Outlook Web Access(OWA)サポートを有効にする前に、SSLアクションを作成する必要があります。SSLアクションはSSLポリシーにバインドされ、着信データがポリシーで指定された規則と一致すると実行されます。

CLIを使用してOWAサポートを有効にするSSLアクションを作成します

コマンドプロンプトで次のコマンドを入力し、OWAサポートを有効にするSSLアクションを作成して構成を確認します。

- add ssl action <name> -OWASupport ENABLED - show SSL action <name>

例:

> add ssl action Action-SSL-OWA -OWASupport enabled Done > show SSL action Action-SSL-OWA Name: Action-SSL-OWA Data Insertion Action: OWA Support: ENABLED Done

GUIを使用してOWAサポートを有効にするSSLアクションを作成します

次の手順を実行します:

  1. [Traffic Management]>[SSL]>[Policies] に移動します。
  2. 詳細ペインで、[Actions] タブ、[Add] をクリックします。
  3. [Create SSL Action] ダイアログボックスの[Name]ボックスに、「Action-SSL-OWA」と入力します。
  4. [Outlook Web Access]で、[Enabled] を選択します。
  5. [Create] をクリックしてから、[Close] をクリックします。
  6. [Action-SSL-OWA]が [SSL Actions] ページに表示されていることを確認します。

SSLポリシーを作成する

SSLポリシーは、ポリシーインフラストラクチャを使用して作成します。各SSLポリシーにはSSLアクションがバインドされ、アクションは、着信トラフィックがポリシーで設定された規則と一致すると実行されます。

CLIを使用してSSLポリシーを作成します

コマンドプロンプトで次のコマンドを入力し、SSLポリシーを作成して構成を確認します。

- add ssl policy <name> -rule <expression> -reqAction <string> - show ssl policy <name>

例:

> add ssl policy Policy-SSL-1 -rule ns_true -reqaction Action-SSL-OWA Done > show ssl policy Policy-SSL-1 Name: Policy-SSL-1 Rule: ns_true Action: Action-SSL-OWA Hits: 0 Policy is bound to following entities 1) PRIORITY : 0 Done

GUIを使用してSSLポリシーを作成します

次の手順を実行します:

  1. [Traffic Management]>[SSL]>[Policies] に移動します。
  2. 詳細ペインで、[Add] をクリックします。
  3. [Create SSL Policy] ダイアログボックスの[Name]ボックスに、SSLポリシーの名前(たとえば、「Policy-SSL-1」)を入力します。
  4. [Request Action]で、このポリシーに関連付ける既存のSSLアクション(たとえば、[Action-SSL-OWA])を選択します。ns_true汎用式により、成功したSSLハンドシェイクトラフィックのすべてにこのポリシーが適用されます。特定の応答に対してのみポリシーを適用する場合は、より高い詳細レベルのポリシーを作成できます。詳細なポリシー式の設定について詳しくは、「SSLアクションとポリシー」を参照してください。
  5. [Named Expressions] で、組み込みの汎用式ns_trueを選択し、[Add Expression] をクリックします。式ns_trueが[Expression]ボックスに表示されます。
  6. [Create] をクリックしてから、[Close] をクリックします。
  7. ポリシーを選択して、ペイン下部にある[Details]セクションを表示し、ポリシーが正しく構成されていることを確認します。

SSLポリシーをSSL仮想サーバーにバインドします

Outlook Web AccessにSSLポリシーを設定したら、Outlook着信トラフィックをインターセプトする仮想サーバーにポリシーをバインドします。着信データがSSLポリシーで構成された規則と一致すると、そのポリシーに関連付けられたアクションが実行されます。

CLIを使用してSSLポリシーをSSL仮想サーバーにバインドします

コマンドプロンプトで次のコマンドを入力し、SSLポリシーをSSL仮想サーバーにバインドして構成を確認します。

- bind ssl vserver <vServerName> -policyName <string> - show ssl vserver <name>

例:

> bind ssl vserver Vserver-SSL-1 -policyName Policy-SSL-1 Done > show ssl vserver Vserver-SSL-1 Advanced SSL configuration for VServer Vserver-SSL-1: DH: DISABLED Ephemeral RSA: ENABLED Refresh Count: 0 Session Reuse: ENABLED Timeout: 120 seconds Cipher Redirect: ENABLED SSLv2 Redirect: ENABLED ClearText Port: 0 Client Auth: DISABLED SSL Redirect: DISABLED Non FIPS Ciphers: DISABLED SSLv2: DISABLED SSLv3: ENABLED TLSv1: ENABLED 1) CertKey Name: CertKey-SSL-1 Server Certificate 1) Policy Name: Policy-SSL-1 Priority: 0 1) Cipher Name: DEFAULT Description: Predefined Cipher Alias Done

GUIを使用してSSLポリシーをSSL仮想サーバーにバインドします

次の手順を実行します:

  1. [Traffic Management]>[SSL Offload]>[Virtual Servers] の順に選択します。
  2. 詳細ペインで仮想サーバー(たとえば、[Vserver-SSL-1])を選択して、[Open] をクリックします。
  3. [Configure Virtual Server (SSL Offload)]ダイアログボックスで[Insert Policy]をクリックし、SSL仮想サーバーにバインドするポリシーを選択します。必要に応じて、[Priority]ボックスをダブルクリックして、新しい優先度を入力することもできます。
  4. [OK] をクリックします。
このコンテンツの正式なバージョンは英語で提供されています。Cloud Software Groupドキュメントのコンテンツの一部は、お客様の利便性のみを目的として機械翻訳されています。Cloud Software Groupは機械翻訳されたコンテンツを管理していないため、誤り、不正確な情報、不適切な用語が含まれる場合があります。英語の原文から他言語への翻訳について、精度、信頼性、適合性、正確性、またはお使いのCloud Software Group製品またはサービスと機械翻訳されたコンテンツとの整合性に関する保証、該当するライセンス契約書またはサービス利用規約、あるいはCloud Software Groupとのその他すべての契約に基づき提供される保証、および製品またはサービスのドキュメントとの一致に関する保証は、明示的か黙示的かを問わず、かかるドキュメントの機械翻訳された範囲には適用されないものとします。機械翻訳されたコンテンツの使用に起因する損害または問題について、Cloud Software Groupは責任を負わないものとします。