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

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

クライアントトラフィックを転送するように SSL アクションを設定

クライアントのHelloメッセージを解析する際、NetScalerアプライアンスはSSLポリシーに関連付けられたSSL転送アクションを使用してクライアントトラフィックを転送できます。ポリシーは、クライアントの hello リクエストバインドポイントで仮想サーバーにバインドされます。次のセクションでは、転送を使用できるいくつかのユースケースについて説明します。Citrix ADCアプライアンス上で暗号がサポートされていない場合のSSL転送アクションの構成の詳細については、「 ADCで暗号がサポートされていない場合にクライアントトラフィックを転送するようにSSLアクションを構成する」を参照してください。

次の図は、トラフィックフローを示しています。この図では、フォワード仮想サーバーのタイプは SSL_TCP です。

SSL 転送アクショントラフィックフロー

  1. クライアントは SSL ハンドシェイクを開始し、クライアント hello メッセージを ADC アプライアンスに送信します。
  2. アプライアンスは、クライアントの hello メッセージ内のパラメータを使用して、設定されたポリシーを評価します。
  3. ポリシーが false と評価された場合、復号化されたトラフィックは HTTP サービスに転送され、次にバックエンドサーバーに転送されます。
  4. ポリシーが true と評価された場合、トラフィックはアクションで定義された転送仮想サーバーに転送されます。
  5. フォワード仮想サーバーは、クライアントとのハンドシェイクを完了します。
  6. ポリシールールを満たすすべてのトラフィックは、転送仮想サーバーにバインドされたサービスを介してバックエンドサービスに転送されます。

アプライアンスにドメイン固有(SNI)証明書がない場合にクライアントトラフィックを転送するように SSL アクションを設定します

注: この機能は、リリース 12.1 ビルド 49.x 以降で使用できます。

クライアントの hello メッセージに、証明書がアプライアンスで使用できないドメインのリクエストが表示される場合があります。この場合、クライアントトラフィックを別の仮想サーバーに転送するように SSL アクションを構成できます。次の例では、SSL仮想サーバーを転送仮想サーバーとして構成しました。この設定により、元の仮想サーバーにSNI証明書がないために失敗したすべての接続が、転送先の仮想サーバーでも成功することが保証されます。

次の手順を実行します:

  1. SSL タイプの負荷分散仮想サーバー (VMain など) を追加します。クライアントトラフィックは、この仮想サーバーで受信されます。
  2. サーバー証明書と CA 証明書を追加し、SSL 仮想サーバーにバインドします。
  3. ポート 443 の SSL サービスを追加します。
  4. このサービスを SSL 仮想サーバーにバインドします。
  5. トラフィックを転送するSSL/SSL_TCP/TCP/SSL_BRIDGEタイプの別の負荷分散仮想サーバーを追加します。(たとえば、 fwd-vserver)。
  6. サービスを追加し、この仮想サーバーにバインドします。
  7. 「forward」 パラメータにSSL仮想サーバーfwd-vserverを指定するSSL転送アクションを追加します。
  8. クライアントの hello メッセージで特定のドメイン名 (SNI) を受信した場合に前述のアクションを指定する SSL ポリシー (pol-ssl-sniなど) を追加します。
  9. このポリシーを CLIENTHELLO_REQ の SSL 仮想サーバーにバインドします。
  10. 構成を保存します。

CLI を使用した設定

トラフィックの転送先となる SSL 仮想サーバーの設定:

add lb vserver fwd-vserver SSL 198.51.100.20 443 add ssl certkey sv -cert complete/server/server_rsa_2048.pem -key complete/server/server_rsa_2048.ky add ssl certkey cacert -cert SHA256-RSA-PEM_512.pem -key SHA256-RSA-PEM_512.ky bind ssl vserver fwd-vserver -certkeyName sv bind ssl vserver fwd-vserver -certkeyName cacert -CA add service ssl-service2 198.51.100.18 SSL 443 bind lb vserver fwd-vserver ssl-service2

クライアントトラフィックを最初に受信する SSL 仮想サーバーの構成:

add service ssl-service 198.51.100.5 SSL 443 add lb vserver vMain SSL 198.51.100.25 443 bind ssl vserver vMain -certkeyName sv bind lb vserver vMain ssl-service set ssl vserver vMain -sni ENABLED add ssl certKey snicert2 -cert /nsconfig/ssl/complete/SNI/server/serverabc.pem -key /nsconfig/ssl/complete/SNI/server/serverabc.ky add ssl certKey snicert -cert /nsconfig/ssl/complete/SNI/server/serverabcnetscaler.pem -key /nsconfig/ssl/complete/SNI/server/serverabcnetscaler.ky bind ssl vserver vMain -certkeyName snicert -sniCert bind ssl vserver vMain -certkeyName snicert2 -sniCert

SSL 仮想サーバー VMain のポリシー構成:

add ssl action act_ssl_fwd -forward fwd-vserver add ssl policy pol-ssl-sni -rule client.ssl.client_hello.sni.contains("xyz") -action act_ssl_fwd bind ssl vserver vMain -policyName pol-ssl-sni -type CLIENTHELLO_REQ -priority 1
sh ssl vserver vMain Advanced SSL configuration for VServer vMain: DH: DISABLED DH Private-Key Exponent Size Limit: DISABLED Ephemeral RSA: ENABLED Refresh Count: 0 Session Reuse: ENABLED Timeout: 120 seconds Cipher Redirect: DISABLED SSLfwd-vserver Redirect: DISABLED ClearText Port: 0 Client Auth: DISABLED SSL Redirect: DISABLED Non FIPS Ciphers: DISABLED SNI: ENABLED OCSP Stapling: DISABLED HSTS: DISABLED HSTS IncludeSubDomains: NO HSTS Max-Age: 0 SSLfwd-vserver: DISABLED SSLv3: ENABLED TLSv1.0: ENABLED TLSv1.1: ENABLED TLSv1.2: ENABLED TLSv1.3: DISABLED Push Encryption Trigger: Always Send Close-Notify: YES Strict Sig-Digest Check: DISABLED Zero RTT Early Data: DISABLED DHE Key Exchange With PSK: NO Tickets Per Authentication Context: 1 ECC Curve: P_256, P_384, P_224, P_521 1) CertKey Name: sv Server Certificate 2) CertKey Name: snicert2 Server Certificate for SNI 3) CertKey Name: snicert Server Certificate for SNI Data policy 1) Policy Name: pol-ssl-sni Priority: 1 1) Cipher Name: DEFAULT Description: Default cipher list with encryption strength >= 128bit Done
sh ssl policy pol-ssl-sni Name: pol-ssl-sni Rule: client.ssl.client_hello.sni.contains("xyz") Action: act_ssl_fwd UndefAction: Use Global Hits: 0 Undef Hits: 0 Policy is bound to following entities 1) Bound to: CLIENTHELLO_REQ VSERVER v1 Priority: 1 Done
sh ssl action act_ssl_fwd 1) Name: act_ssl_fwd Type: Data Insertion Forward to: fwd-vserver Hits: 0 Undef Hits: 0 Action Reference Count: 1 Done
sh ssl vserver fwd-vserver Advanced SSL configuration for VServer fwd-vserver: DH: DISABLED DH Private-Key Exponent Size Limit: DISABLED Ephemeral RSA: ENABLED Refresh Count: 0 Session Reuse: ENABLED Timeout: 120 seconds Cipher Redirect: DISABLED SSLfwd-vserver Redirect: DISABLED ClearText Port: 0 Client Auth: DISABLED SSL Redirect: DISABLED Non FIPS Ciphers: DISABLED SNI: DISABLED OCSP Stapling: DISABLED HSTS: DISABLED HSTS IncludeSubDomains: NO HSTS Max-Age: 0 SSLfwd-vserver: DISABLED SSLv3: ENABLED TLSv1.0: ENABLED TLSv1.1: ENABLED TLSv1.2: ENABLED TLSv1.3: DISABLED Push Encryption Trigger: Always Send Close-Notify: YES Strict Sig-Digest Check: DISABLED Zero RTT Early Data: DISABLED DHE Key Exchange With PSK: NO Tickets Per Authentication Context: 1 ECC Curve: P_256, P_384, P_224, P_521 1) CertKey Name: sv Server Certificate 1) Cipher Name: DEFAULT Description: Default cipher list with encryption strength >= 128bit Done

クライアント hello メッセージの ALPN 拡張にあるアプリケーションプロトコルに基づいてクライアントトラフィックを転送する SSL アクションを設定します

注: この機能は、リリース 13.0 ビルド 61.x 以降でサポートされています。

NetScalerアプライアンスは、ポリシー評価用にメッセージを解析する際に、クライアントHelloメッセージのALPN拡張に含まれるプロトコルを識別できます。クライアントの hello メッセージの ALPN 拡張でプロトコルを識別するルールはclient.ssl.client_hello.alpn.has_nextprotocol<protocol_name>です。「転送」タイプのSSLアクションをポリシーに関連付けて、パケットを転送仮想サーバーに転送します。フォワード仮想サーバーには、SSL、SSL_TCP、SSL_BRIDGE、または TCP のタイプを使用できます。

SSL_TCP 仮想サーバーによって処理される接続について ALPN 拡張のアプリケーションプロトコルをネゴシエートするために、フロントエンド SSL alpnProtocol プロファイルにパラメーターが追加されます。パラメータでサポートされる値は、HTTP1.1、HTTP2、または NONE (デフォルト値) です。クライアント hello メッセージの ALPN 拡張で同じプロトコルが受信された場合、SSL プロファイルで指定されたプロトコルだけがネゴシエートされます。ポリシー評価用にサポートされている ALPN 拡張の最大長は 4096 バイトです。

ALPN 拡張機能の HTTP2 プロトコルを含むすべての要求を SSL_TCP 仮想サーバーに転送する設定例

トラフィックを転送する SSL_TCP 仮想サーバーはfwd-vserver-1です。

トラフィックの転送先となる SSL 仮想サーバーの設定:

add lb vserver fwd-vserver-1 SSL_TCP 198.51.100.20 443 add ssl certkey sv -cert complete/server/server_rsa_2048.pem -key complete/server/server_rsa_2048.ky add ssl certkey rootCA -cert SHA256-RSA-PEM_512.pem -key SHA256-RSA-PEM_512.ky bind ssl vserver fwd-vserver-1 -certkeyName sv bind ssl vserver fwd-vserver-1 -certkeyName rootCA -CA add service ssl-tcp-service 198.51.100.14 SSL_TCP 443 bind lb vserver fwd-vserver-1 ssl-tcp-service

クライアントトラフィックを最初に受信する SSL 仮想サーバーの構成:

add service ssl-service 198.51.100.5 SSL 443 add lb vserver vMain-alpn SSL 198.51.100.25 443 bind ssl vserver vMain-alpn -certkeyName sv bind lb vserver vMain-alpn ssl-service

SSL 仮想サーバー VMain-ALPN のポリシー構成:

add ssl action forward-action-alpn -forward fwd-vserver-1 add ssl policy pol-ssl-alpn -rule "client.ssl.client_hello.alpn.has_nextprotocol("h2")" -action forward-action-alpn bind ssl vserver VMain-alpn -policyName pol-ssl-alpn -priority 2 -type CLIENTHELLO_REQ
sh ssl vserver vMain-alpn Advanced SSL configuration for VServer vMain-alpn: DH: DISABLED DH Private-Key Exponent Size Limit: DISABLED Ephemeral RSA: ENABLED Refresh Count: 0 Session Reuse: ENABLED Timeout: 120 seconds Cipher Redirect: DISABLED ClearText Port: 0 Client Auth: DISABLED SSL Redirect: DISABLED Non FIPS Ciphers: DISABLED SNI: DISABLED OCSP Stapling: DISABLED HSTS: DISABLED HSTS IncludeSubDomains: NO HSTS Max-Age: 0 HSTS Preload: NO SSLv3: ENABLED TLSv1.0: ENABLED TLSv1.1: ENABLED TLSv1.2: ENABLED TLSv1.3: DISABLED Push Encryption Trigger: Always Send Close-Notify: YES Strict Sig-Digest Check: DISABLED Zero RTT Early Data: DISABLED DHE Key Exchange With PSK: NO Tickets Per Authentication Context: 1 ECC Curve: P_256, P_384, P_224, P_521 1) CertKey Name: sv Server Certificate Data policy 1) Policy Name: pol-ssl-alpn Priority: 2 1) Cipher Name: DEFAULT Description: Default cipher list with encryption strength >= 128bit Done
sh ssl policy pol-ssl-alpn Name: pol-ssl-alpn Rule: client.ssl.client_hello.alpn.has_nextprotocol("h2") Action: forward-action-alpn UndefAction: Use Global Hits: 0 Undef Hits: 0 Policy is bound to following entities 1) Bound to: CLIENTHELLO_REQ VSERVER VMain-alpn Priority: 2 Done
sh ssl action forward-action-alpn 1) Name: forward-action-alpn Type: Data Insertion Forward to: fwd-vserver-1 Hits: 0 Undef Hits: 0 Action Reference Count: 1 Done
sh ssl vserver fwd-vserver-1 Advanced SSL configuration for VServer fwd-vserver-1: DH: DISABLED DH Private-Key Exponent Size Limit: DISABLED Ephemeral RSA: ENABLED Refresh Count: 0 Session Reuse: ENABLED Timeout: 120 seconds Cipher Redirect: DISABLED ClearText Port: 0 Client Auth: DISABLED SSL Redirect: DISABLED Non FIPS Ciphers: DISABLED SNI: DISABLED OCSP Stapling: DISABLED HSTS: DISABLED HSTS IncludeSubDomains: NO HSTS Max-Age: 0 HSTS Preload: NO SSLv3: ENABLED TLSv1.0: ENABLED TLSv1.1: ENABLED TLSv1.2: ENABLED TLSv1.3: DISABLED Push Encryption Trigger: Always Send Close-Notify: YES Strict Sig-Digest Check: DISABLED Zero RTT Early Data: DISABLED DHE Key Exchange With PSK: NO Tickets Per Authentication Context: 1 ECC Curve: P_256, P_384, P_224, P_521 1) CertKey Name: sv Server Certificate 2) CertKey Name: rootCA CA Certificate OCSPCheck: Optional CA_Name Sent 1) Cipher Name: DEFAULT Description: Default cipher list with encryption strength >= 128bit Done
このコンテンツの正式なバージョンは英語で提供されています。Cloud Software Groupドキュメントのコンテンツの一部は、お客様の利便性のみを目的として機械翻訳されています。Cloud Software Groupは機械翻訳されたコンテンツを管理していないため、誤り、不正確な情報、不適切な用語が含まれる場合があります。英語の原文から他言語への翻訳について、精度、信頼性、適合性、正確性、またはお使いのCloud Software Group製品またはサービスと機械翻訳されたコンテンツとの整合性に関する保証、該当するライセンス契約書またはサービス利用規約、あるいはCloud Software Groupとのその他すべての契約に基づき提供される保証、および製品またはサービスのドキュメントとの一致に関する保証は、明示的か黙示的かを問わず、かかるドキュメントの機械翻訳された範囲には適用されないものとします。機械翻訳されたコンテンツの使用に起因する損害または問題について、Cloud Software Groupは責任を負わないものとします。