Citrix ADC

SSLインターセプション

SSLインターセプション用に構成されたCitrix ADCアプライアンスは、プロキシとして機能します。SSL/TLS トラフィックを傍受および復号化し、暗号化されていない要求を検査し、管理者がコンプライアンスルールとセキュリティチェックを適用できるようにします。SSLインターセプションでは、代行受信、ブロック、または許可するトラフィックを指定するポリシーを使用します。たとえば、銀行などの金融ウェブサイトとの間のトラフィックは傍受されてはいけませんが、他のトラフィックは傍受され、ブラックリストに登録されたサイトは識別され、ブロックされます。トラフィックを傍受する一般的なポリシーを1つ構成し、一部のトラフィックをバイパスするより具体的なポリシーを構成することをお勧めします。

クライアントとプロキシは、HTTPS/TLS ハンドシェイクを確立します。プロキシは、サーバーと別の HTTPS/TLS ハンドシェイクを確立し、サーバー証明書を受信します。プロキシは、クライアントに代わってサーバー証明書を検証し、オンライン証明書状態プロトコル (OCSP) を使用してサーバー証明書の有効性をチェックします。サーバ証明書を再生成し、アプライアンスにインストールされている CA 証明書のキーを使用して署名し、クライアントに提示します。したがって、クライアントとCitrix ADCアプライアンスの間で1つの証明書が使用され、アプライアンスとバックエンドサーバー間で別の証明書が使用されます。

重要

再生成されたサーバー証明書がクライアントによって信頼されるように、サーバー証明書の署名に使用される CA 証明書は、すべてのクライアントデバイスにプレインストールする必要があります。

代行受信された HTTPS トラフィックの場合、プロキシサーバは発信トラフィックを復号化し、クリアテキストの HTTP 要求にアクセスします。また、プレーンテキストの URL を調べて、企業ポリシーと URL レピュテーションに基づいてアクセスを許可またはブロックするなど、レイヤ 7 アプリケーションを使用してトラフィックを処理できます。ポリシーがオリジナル・サーバーへのアクセスを許可する場合、プロキシ・サーバーは再暗号化された要求を(オリジナル・サーバー上の)宛先サービスに転送します。プロキシは、オリジンサーバーからの応答を復号化し、クリアテキストの HTTP 応答にアクセスし、オプションで任意のポリシーを応答に適用します。プロキシは応答を再暗号化し、クライアントに転送します。ポリシーがオリジンサーバーへの要求をブロックする場合、プロキシは HTTP 403 などのエラー応答をクライアントに送信できます。

SSLインターセプションを実行するには、先ほど設定したプロキシサーバに加えて、ADC アプライアンスで次の設定を行う必要があります。

  • SSL プロファイル
  • SSL ポリシー
  • CA 証明書ストア
  • SSL エラーの自動学習とキャッシュ

SSLインターセプション証明書ストア

SSL 証明書は、SSL トランザクションの不可欠な部分であり、会社 (ドメイン) または個人を識別するデジタルデータフォーム (X509) です。SSL 証明書は、認証局 (CA) によって発行されます。CA は、プライベートまたはパブリックにできます。Verisign などのパブリック CA によって発行された証明書は、SSL トランザクションを実行するアプリケーションによって信頼されます。これらのアプリケーションは、信頼する CA の一覧を維持します。

ADCアプライアンスは、フォワード・プロキシとして、クライアントとサーバー間のトラフィックの暗号化と復号化を実行します。これは、クライアント(ユーザー)のサーバーとして、およびサーバーのクライアントとして機能します。アプライアンスは HTTPS トラフィックを処理する前に、不正なトランザクションを防ぐために、サーバーの ID を検証する必要があります。したがって、オリジンサーバーのクライアントとして、アプライアンスはオリジンサーバー証明書を受け入れる前にオリジンサーバー証明書を確認する必要があります。サーバーの証明書を確認するには、サーバー証明書の署名と発行に使用されるすべての証明書(ルート証明書と中間証明書など)がアプライアンスに存在している必要があります。デフォルトの CA 証明書セットは、アプライアンス上にプレインストールされています。アプライアンスは、これらの証明書を使用して、ほとんどすべての共通オリジンサーバー証明書を検証できます。この既定のセットは変更できません。ただし、展開でさらに多くの CA 証明書が必要な場合は、そのような証明書のバンドルを作成し、そのバンドルをアプライアンスにインポートできます。バンドルには、単一の証明書を含めることもできます。

証明書バンドルをアプライアンスにインポートすると、アプライアンスはリモートの場所からバンドルをダウンロードし、バンドルに証明書のみが含まれていることを確認した後、アプライアンスにインストールします。証明書バンドルを使用してサーバ証明書を検証するには、事前に証明書バンドルを適用する必要があります。また、証明書バンドルをエクスポートして編集したり、オフラインの場所にバックアップとして保存したりすることもできます。

CLI を使用して CA 証明書バンドルをアプライアンスにインポートして適用する

コマンドプロンプトで、次のように入力します。

import ssl certBundle <name> <src>
apply ssl certBundle <name>
show ssl certBundle

要点:

名前:

インポートした証明書バンドルに割り当てる名前。ASCII 英数字またはアンダースコア (_) 文字で始まり、ASCII 英数字、アンダースコア、ハッシュ (#)、ピリオド (.)、スペース、コロン (:)、アットマーク (@)、等しい (=)、およびハイフン (-) 文字のみを含める必要があります。次の要件は、CLI だけに適用されます。

名前に 1 つ以上のスペースが含まれる場合は、名前を二重引用符または一重引用符で囲みます (「my file」や「my file」など)。

最大長さ:31

src:

インポートまたはエクスポートする証明書バンドルへのプロトコル、ホスト、およびパス(ファイル名を含む)を指定する URL。たとえば、http://www.example.com/cert_bundle_fileのようになります。

: インポートするオブジェクトがアクセスにクライアント証明書認証を必要とする HTTPS サーバー上にある場合、インポートは失敗します。

最大の長さ:2047

:

import ssl certbundle swg-certbundle http://www.example.com/cert_bundle
apply ssl certBundle swg-certbundle
show ssl certbundle

            Name : swg-certbundle(Inuse)

            URL : http://www.example.com/cert_bundle

    Done

GUI を使用して CA 証明書バンドルをアプライアンスにインポートして適用する

  1. [セキュリティ] > [SSL フォワードプロキシ] > [はじめに] > [証明書バンドル] に移動します。
  2. 次のいずれかを行います:
    • リストから証明書バンドルを選択します。
    • 証明書バンドルを追加するには、[+] をクリックし、名前とソース URL を指定します。[OK] をクリックします。
  3. [OK] をクリックします。

CLI を使用して CA 証明書バンドルをアプライアンスから削除する

コマンドプロンプトで、次のように入力します。

remove certBundle <cert bundle name>

:

remove certBundle mytest-cacert

CLI を使用してアプライアンスから CA 証明書バンドルをエクスポートする

コマンドプロンプトで、次のように入力します。

export certBundle <cert bundle name> <Path to export>

要点:

名前:

インポートした証明書バンドルに割り当てる名前。ASCII 英数字またはアンダースコア (_) 文字で始まり、ASCII 英数字、アンダースコア、ハッシュ (#)、ピリオド (.)、スペース、コロン (:)、アットマーク (@)、等しい (=)、およびハイフン (-) 文字のみを含める必要があります。次の要件は、CLI だけに適用されます。

名前に 1 つ以上のスペースが含まれる場合は、名前を二重引用符または一重引用符で囲みます (「my file」や「my file」など)。

最大長さ:31

src:

インポートまたはエクスポートする証明書バンドルへのプロトコル、ホスト、およびパス(ファイル名を含む)を指定する URL。たとえば、http://www.example.com/cert_bundle_fileのようになります。

: インポートするオブジェクトがアクセスにクライアント証明書認証を必要とする HTTPS サーバー上にある場合、インポートは失敗します。

最大の長さ:2047

:

export certBundle mytest-cacert http://192.0.2.20/

Mozilla CA 証明書ストアから CA 証明書バンドルをインポート、適用、検証する

コマンドプロンプトで、次のように入力します。

> import certbundle mozilla_public_ca https://curl.haxx.se/ca/cacert.pem
Done

バンドルを適用するには、次のように入力します。

> apply certbundle mozilla_public_ca
Done

使用中の証明書バンドルを確認するには、次のように入力します。

> sh certbundle | grep mozilla
                Name : mozilla_public_ca (Inuse)

制限事項

  • 証明書バンドルは、クラスタ設定またはパーティション化されたアプライアンスではサポートされません。
  • TLSv1.3 プロトコルは、SSL フォワードプロキシではサポートされていません。

SSL 代行受信のための SSL ポリシーインフラストラクチャ

ポリシーは、着信トラフィックに対するフィルタのように動作します。ADCアプライアンスのポリシーは、プロキシ接続と要求の管理方法を定義するのに役立ちます。処理は、そのポリシーに対して設定されているアクションに基づきます。つまり、接続要求のデータはポリシーで指定された規則と比較され、規則に一致する接続にアクションが適用されます (式)。ポリシーに割り当ててポリシーを作成するアクションを定義したら、そのアクションをプロキシサーバにバインドして、そのプロキシサーバを通過するトラフィックに適用する必要があります。

SSLインターセプションの SSL ポリシーは、着信トラフィックを評価し、ルール(式)に一致する要求に事前定義されたアクションを適用します。接続の代行受信、バイパス、またはリセットは、定義された SSL ポリシーに基づいて決定されます。ポリシーに対して、INTERCEPT、BYPASS、または RESET の 3 つのアクションのいずれかを設定できます。ポリシーを作成するときは、アクションを指定する必要があります。ポリシーを有効にするには、アプライアンスのプロキシサーバーにポリシーをバインドする必要があります。ポリシーが SSLインターセプションを対象とするように指定するには、プロキシサーバーにポリシーをバインドするときに、タイプ(バインドポイント)を INTERCEPT_REQ として指定する必要があります。ポリシーのバインドを解除するときは、タイプを INTERCEPT_REQ として指定する必要があります。

プロキシサーバは、ポリシーを指定しない限り、傍受を決定できません。

トラフィックインターセプションは、任意の SSL ハンドシェイク属性に基づいて行うことができます。最も一般的に使用されるのは SSL ドメインです。SSL ドメインは通常、SSL ハンドシェイクの属性によって示されます。これは、SSL Client Hello メッセージから抽出されたサーバー名インジケータ値(存在する場合)、または元のサーバー証明書から抽出されたサーバー別名(SAN)値になります。SSLi ポリシーには DETECTED_DOMAIN という特殊な属性が表示されます。これにより、お客様はオリジンサーバー証明書から SSL ドメインに基づくインターセプションポリシーを簡単に作成できます。顧客は、ドメイン名を文字列、URL リスト(URL セットまたはpatset)、またはドメインから派生した URL カテゴリと照合できます。

CLI を使用した SSL ポリシーの作成

コマンドプロンプトで、次のように入力します。

add ssl policy <name> -rule <expression> -action <string>

:

次の例は、detected_domain 属性を使用してドメイン名をチェックする式を持つポリシーの例です。

XYZBANKなどの金融機関へのトラフィックを傍受しない

add ssl policy pol1 -rule client.ssl.detected_domain.contains("XYZBANK") -action BYPASS

ユーザーが企業ネットワークから YouTube に接続することを許可しない

add ssl policy pol2 -rule client.ssl.client.ssl.detected_domain.url_categorize(0,0).category.eq ("YouTube") -action RESET

すべてのユーザトラフィックを代行受信する

add ssl policy pol3 –rule true –action INTERCEPT

お客様が detected_domain を使用したくない場合は、任意の SSL ハンドシェイク属性を使用してドメインを抽出および推測できます。

たとえば、ドメイン名が、クライアントの hello メッセージの SNI 内線番号に見つかりません。ドメイン名は、オリジンサーバー証明書から取得する必要があります。次の例は、オリジンサーバー証明書のサブジェクト名でドメイン名をチェックする式を持つポリシーの例です。

任意のYahooドメインへのすべてのユーザートラフィックを傍受する

add ssl policy pol4 -rule client.ssl.origin_server_cert.subject.contains("yahoo") –action INTERCEPT

カテゴリ「ショッピング/小売」のすべてのユーザートラフィックを傍受する

add ssl policy pol_url_category -rule client.ssl.origin_server_cert.subject.URL_CATEGORIZE(0,0).CATEGORY.eq("Shopping/Retail") -action INTERCEPT

未分類の URL へのすべてのユーザトラフィックを代行受信する

add ssl policy pol_url_category -rule client.ssl.origin_server_cert.subject.url_categorize(0,0).category.eq("Uncategorized") -action INTERCEPT

次の例は、URL セットのエントリに対してドメインを照合するポリシーの例です。

SNI のドメイン名が URL セット「top100」のエントリと一致する場合に、すべてのユーザトラフィックを傍受します。

add ssl policy pol_url_set  -rule client.ssl.client_hello.SNI.URLSET_MATCHES_ANY("top100") -action INTERCEPT

オリジンサーバー証明書が URL セット「top100」のエントリと一致する場合、ドメイン名のすべてのユーザートラフィックを傍受します。

add ssl policy pol_url_set  -rule client.ssl.origin_server_cert.subject.URLSET_MATCHES_ANY("top100") -action INTERCEPT

GUI を使用したプロキシサーバーへの SSL ポリシーの作成

  1. [トラフィック管理] > [SSL] > [ポリシー] に移動します。
  2. [SSL ポリシー] タブで、[追加] をクリックし、次のパラメータを指定します。
    • ポリシー名
    • ポリシーアクション:代行受信、バイパス、またはリセットから選択します。
  3. [作成] をクリックします。

CLI を使用して SSL ポリシーをプロキシサーバーにバインドする

コマンドプロンプトで、次のように入力します。

bind ssl vserver <vServerName> -policyName <string> -priority <positive_integer> -type  INTERCEPT_REQ

:

bind ssl vserver <name> -policyName pol1 -priority 10 -type INTERCEPT_REQ

GUI を使用して SSL ポリシーをプロキシサーバーにバインドする

  1. [セキュリティ] > [SSL フォワードプロキシ] > [プロキシ仮想サーバー] に移動します。
  2. 仮想サーバを選択し、[Edit] をクリックします。
  3. [詳細設定]で、[SSL ポリシー] をクリックします。
  4. [SSL ポリシー] ボックスの内側をクリックします。
  5. 「ポリシーの選択」で、バインドするポリシーを選択します。
  6. タイプ」で「 INTERCEPT_REQ」を選択します。
  7. [バインド] をクリックし、[OK] をクリックします。

コマンドラインを使用して SSL ポリシーをプロキシサーバーにバインド解除する

コマンドプロンプトで、次のように入力します。

unbind ssl vserver <vServerName> -policyName <string> -type INTERCEPT_REQ

SSL ポリシーで使用される SSL 式

説明
CLIENT.SSL.CLIENT_HELLO.SNI.* SNI 拡張を文字列形式で返します。文字列を評価して、指定したテキストが含まれているかどうかを確認します。例:client.ssl.client_hello.sni.contains(“xyz.com”)
CLIENT.SSL.ORIGIN_SERVER_CERT.* バックエンドサーバーから受け取った証明書を、文字列形式で返します。文字列を評価して、指定したテキストが含まれているかどうかを確認します。例:client.ssl.origin_server_cert.subject.contains(“xyz.com”)
CLIENT.SSL.DETECTED_DOMAIN.* SNI 拡張またはオリジンサーバー証明書からドメインを文字列形式で返します。文字列を評価して、指定したテキストが含まれているかどうかを確認します。例:client.ssl.detected_domain.contains(“xyz.com”)

SSL エラーの自動学習中

学習モードがオンの場合、アプライアンスはSSLバイパスリストにドメインを追加します。ラーニングモードは、クライアントまたはオリジナルサーバから受信した SSL アラートメッセージに基づいています。つまり、学習は、アラートメッセージを送信するクライアントまたはサーバーによって異なります。アラートメッセージが送信されない場合、ラーニングは行われません。アプライアンスは、次のいずれかの条件が満たされているかどうかを学習します。

  1. クライアント証明書の要求がサーバーから受信されます。

  2. ハンドシェイクの一環として、次のいずれかのアラートが受信されます。

    • BAD_CERTIFICATE
    • UNSUPPORTED_CERTIFICATE
    • CERTIFICATE_REVOKED
    • CERTIFICATE_EXPIRED
    • CERTIFICATE_UNKNOWN
    • UNKNOWN_CA(クライアントがピン接続を使用している場合、サーバ証明書を受信すると、この警告メッセージを送信します)。
    • HANDSHAKE_FAILURE

学習を有効にするには、エラーキャッシュを有効にし、学習用に予約されているメモリを指定する必要があります。

GUI を使用した学習の有効化

  1. [トラフィック管理] > [SSL] に移動します。

  2. [設定] で、[SSL の詳細設定の変更] をクリックします。

  3. SSLインターセプション」で、「 SSLインターセプションエラー・キャッシュ」を選択します。

  4. SSLインターセプション最大エラーキャッシュメモリ」で、予約するメモリ(バイト単位)を指定します。

    エラーキャッシュ

  5. [OK] をクリックします。

CLI を使用した学習の有効化

コマンドプロンプトで次のように入力します。

set ssl parameter -ssliErrorCache ( ENABLED | DISABLED ) -ssliMaxErrorCacheMem <positive_integer>

引数:

ssliErrorCache:

ダイナミックラーニングを有効または無効にし、学習した情報をキャッシュして、要求の代行受信またはバイパスに関するその後の決定を行います。有効にすると、アプライアンスはキャッシュ検索を実行して、要求をバイパスするかどうかを決定します。

設定可能な値:ENABLED, DISABLED

デフォルト値: DISABLED

ssliMaxErrorCacheMem:

学習したデータのキャッシュに使用できる最大メモリをバイト単位で指定します。このメモリは LRU キャッシュとして使用されるため、設定されたメモリ制限が枯渇した後、古いエントリが新しいエントリに置き換えられます。値 0 を指定すると、自動的に制限が決定されます。

デフォルト値:0

最小値:0

最大値:4294967294

SSL プロファイル

SSL プロファイルは、暗号やプロトコルなどの SSL 設定の集まりです。プロファイルは、異なるサーバーに共通の設定がある場合に役立ちます。各サーバーに同じ設定を指定する代わりに、プロファイルを作成し、プロファイルに設定を指定し、プロファイルを別のサーバーにバインドできます。カスタムフロントエンド SSL プロファイルが作成されない場合、既定のフロントエンドプロファイルは、クライアント側のエンティティにバインドされます。このプロファイルを使用すると、クライアント側の接続を管理するための設定を構成できます。

SSL インターセプションの場合は、SSL プロファイルを作成し、プロファイルで SSLインターセプション (SSLi) を有効にする必要があります。デフォルトの暗号グループはこのプロファイルにバインドされますが、展開に合わせてさらに多くの暗号を設定できます。SSLi CA 証明書をこのプロファイルにバインドし、プロファイルをプロキシサーバーにバインドする必要があります。SSLインターセプションの場合、プロファイルの重要なパラメーターは、オリジナル・サーバー証明書の OCSP ステータスの確認、オリジナル・サーバーが再ネゴシエーションを要求した場合のクライアントの再ネゴシエーションのトリガー、フロントエンドの SSL セッションを再利用する前にオリジナル・サーバー証明書の検証に使用されるパラメーターです。オリジンサーバーと通信する場合は、デフォルトのバックエンドプロファイルを使用します。デフォルトのバックエンドプロファイルで、暗号スイートなどのサーバー側のパラメータを設定します。カスタムバックエンドプロファイルはサポートされません。

最も一般的に使用される SSL 設定の例については、このセクションの最後の「サンプルプロファイル」を参照してください。

暗号/プロトコルのサポートは、内部ネットワークと外部ネットワークによって異なります。次の表では、ユーザーとADCアプライアンスの間の接続は内部ネットワークです。外部ネットワークは、アプライアンスとインターネットの間にあります。

SSL プロファイルイメージ

表1:内部ネットワークの暗号/プロトコルサポートマトリックス

(Cipher/protocol)/Platform MPX (N3)* VPX
TLS 1.1/1.2 12.1, 13.0 12.1, 13.0
ECDHE/DHE(Example TLS1-ECDHE-RSA-AES128-SHA) 12.1, 13.0 12.1, 13.0
AES-GCM(Example TLS1.2-AES128-GCM-SHA256) 12.1, 13.0 12.1, 13.0
SHA-2 Ciphers(Example TLS1.2-AES-128-SHA256) 12.1, 13.0 12.1, 13.0
ECDSA(Example TLS1-ECDHE-ECDSA-AES256-SHA) 12.1, 13.0 12.1, 13.0

表2:外部ネットワークの暗号/プロトコルサポートマトリックス

(Cipher/protocol)/Platform MPX (N3)* VPX
TLS 1.1/1.2 12.1, 13.0 12.1, 13.0
ECDHE/DHE(Example TLS1-ECDHE-RSA-AES128-SHA) 12.1, 13.0 12.1, 13.0
AES-GCM(Example TLS1.2-AES128-GCM-SHA256) 12.1, 13.0 12.1, 13.0
SHA-2 Ciphers(Example TLS1.2-AES-128-SHA256) 12.1, 13.0 12.1, 13.0
ECDSA(Example TLS1-ECDHE-ECDSA-AES256-SHA) 12.1, 13.0 未サポート

* sh hardware (show hardware)コマンドを使用して、アプライアンスに N3 チップがあるかどうかを確認します。

:

sh hardware

Platform: NSMPX-22000 16\*CPU+24\*IX+12\*E1K+2\*E1K+4*CVM N3 2200100

Manufactured on: 8/19/2013

CPU: 2900MHZ

Host Id: 1006665862

Serial no: ENUK6298FT

Encoded serial no: ENUK6298FT

Done

CLI を使用して SSL プロファイルを追加し、SSLインターセプションを有効にする

コマンドプロンプトで、次のように入力します。

add ssl profile <name> -sslinterception ENABLED -ssliReneg ( ENABLED | DISABLED ) -ssliOCSPCheck ( ENABLED | DISABLED ) -ssliMaxSessPerServer <positive_integer>

引数:

sslInterception:

SSL セッションのインターセプションを有効または無効にします。

設定可能な値:ENABLED, DISABLED

デフォルト値: DISABLED

スライレネグ:

オリジンサーバーから再ネゴシエーション要求を受信したときのクライアント再ネゴシエーションのトリガーを有効または無効にします。

設定可能な値:ENABLED, DISABLED

デフォルト値:ENABLED

ssliOCSPCheck:

オリジンサーバー証明書の OCSP チェックを有効または無効にします。

設定可能な値:ENABLED, DISABLED

デフォルト値:ENABLED

サーバごとの最大サイズ:

動的オリジンサーバーごとにキャッシュされる SSL セッションの最大数。クライアント hello メッセージでクライアントから受信した SNI 内線番号ごとに、一意の SSL セッションが作成されます。一致するセッションは、サーバーセッションの再利用に使用されます。

デフォルト値:10

最小値:1

最大値:1000

:

add ssl profile swg_ssl_profile  -sslinterception ENABLED

Done

sh ssl profile swg_ssl_profile

1)    Name: swg_ssl_profile (Front-End)

                SSLv3: DISABLED               TLSv1.0: ENABLED  TLSv1.1: ENABLED  TLSv1.2: ENABLED

                Client Auth: DISABLED

                Use only bound CA certificates: DISABLED

                Strict CA checks:                               NO

                Session Reuse: ENABLED                              Timeout: 120 seconds

                DH: DISABLED

                DH Private-Key Exponent Size Limit: DISABLED   Ephemeral RSA: ENABLED                            Refresh Count: 0

                Deny SSL Renegotiation                                ALL

                Non FIPS Ciphers: DISABLED

                Cipher Redirect: DISABLED

                SSL Redirect: DISABLED

                Send Close-Notify: YES

                Strict Sig-Digest Check: DISABLED

                Push Encryption Trigger: Always

                PUSH encryption trigger timeout:             1 ms

                SNI: DISABLED

                OCSP Stapling: DISABLED

                Strict Host Header check for SNI enabled SSL sessions:                   NO

                Push flag:            0x0 (Auto)

                SSL quantum size:                            8 kB

                Encryption trigger timeout           100 mS

                Encryption trigger packet count:               45

                Subject/Issuer Name Insertion Format: Unicode

                SSL Interception: ENABLED

                SSL Interception OCSP Check: ENABLED

                SSL Interception End to End Renegotiation: ENABLED

                SSL Interception Server Cert Verification for Client Reuse: ENABLED

                SSL Interception Maximum Reuse Sessions per Server:  10

                Session Ticket: DISABLED              Session Ticket Lifetime: 300 (secs)

                HSTS: DISABLED

                HSTS IncludeSubDomains: NO

                HSTS Max-Age: 0

                ECC Curve: P_256, P_384, P_224, P_521

1)            Cipher Name: DEFAULT Priority :1

                Description: Predefined Cipher Alias

Done

CLI を使用して SSLインターセプション CA 証明書を SSL プロファイルにバインドする

コマンドプロンプトで、次のように入力します。

bind ssl profile <name> -ssliCACertkey <ssli-ca-cert>

:

bind ssl profile swg_ssl_profile -ssliCACertkey swg_ca_cert

Done

sh ssl profile swg_ssl_profile

1)            Name: swg_ssl_profile (Front-End)

                SSLv3: DISABLED               TLSv1.0: ENABLED  TLSv1.1: ENABLED  TLSv1.2: ENABLED

                Client Auth: DISABLED

                Use only bound CA certificates: DISABLED

                Strict CA checks:                               NO

                Session Reuse: ENABLED                              Timeout: 120 seconds

                DH: DISABLED

                DH Private-Key Exponent Size Limit: DISABLED   Ephemeral RSA: ENABLED                            Refresh Count: 0

                Deny SSL Renegotiation                                ALL

                Non FIPS Ciphers: DISABLED

                Cipher Redirect: DISABLED

                SSL Redirect: DISABLED

                Send Close-Notify: YES

                Strict Sig-Digest Check: DISABLED

                Push Encryption Trigger: Always

                PUSH encryption trigger timeout:             1 ms

                SNI: DISABLED

                OCSP Stapling: DISABLED

                Strict Host Header check for SNI enabled SSL sessions:                   NO

                Push flag:            0x0 (Auto)

                SSL quantum size:                            8 kB

                Encryption trigger timeout           100 mS

                Encryption trigger packet count:               45

                Subject/Issuer Name Insertion Format: Unicode

                SSL Interception: ENABLED

                SSL Interception OCSP Check: ENABLED

                SSL Interception End to End Renegotiation: ENABLED

                SSL Interception Server Cert Verification for Client Reuse: ENABLED

                SSL Interception Maximum Reuse Sessions per Server:  10

                Session Ticket: DISABLED              Session Ticket Lifetime: 300 (secs)

                HSTS: DISABLED

                HSTS IncludeSubDomains: NO

                HSTS Max-Age: 0

                ECC Curve: P_256, P_384, P_224, P_521

1)            Cipher Name: DEFAULT Priority :1

                Description: Predefined Cipher Alias

1)            SSL Interception CA CertKey Name: swg_ca_cert

Done

GUI を使用して SSLインターセプションCA 証明書を SSL プロファイルにバインドする

  1. [システム] > [プロファイル] > [SSL プロファイル] に移動します。

  2. [追加] をクリックします。

  3. プロファイルの名前を指定します。

  4. SSL セッションインターセプションを有効にします。

  5. [OK] をクリックします。

  6. [詳細設定]で、[証明書キー] をクリックします。

  7. プロファイルにバインドする SSLi CA 証明書キーを指定します。

  8. [選択] をクリックし、[バインド] をクリックします。

  9. オプションで、展開に合わせて暗号を設定します。

    • 編集アイコンをクリックし、[追加] をクリックします。
    • 1 つ以上の暗号グループを選択し、右矢印をクリックします。
    • [OK] をクリックします。
  10. [完了] をクリックします。

GUI を使用して SSL プロファイルをプロキシサーバーにバインドする

  1. [セキュリティ] > [SSL フォワードプロキシ] > [プロキシ仮想サーバー] に移動し、サーバーを追加するか、変更するサーバーを選択します。
  2. [SSL プロファイル] で、[編集] アイコンをクリックします。
  3. [SSL プロファイル] リストで、前に作成した SSL プロファイルを選択します。
  4. [OK] をクリックします。
  5. [完了] をクリックします。

サンプルプロファイル:

Name: swg_ssl_profile (Front-End)

                SSLv3: DISABLED               TLSv1.0: ENABLED  TLSv1.1: ENABLED  TLSv1.2: ENABLED

                Client Auth: DISABLED

                Use only bound CA certificates: DISABLED

                Strict CA checks:                               NO

                Session Reuse: ENABLED                              Timeout: 120 seconds

                DH: DISABLED

                DH Private-Key Exponent Size Limit: DISABLED   Ephemeral RSA: ENABLED                            Refresh Count: 0

                Deny SSL Renegotiation                                ALL

                Non FIPS Ciphers: DISABLED

                Cipher Redirect: DISABLED

                SSL Redirect: DISABLED

                Send Close-Notify: YES

                Strict Sig-Digest Check: DISABLED

                Push Encryption Trigger: Always

                PUSH encryption trigger timeout:             1 ms

                SNI: DISABLED

                OCSP Stapling: DISABLED

                Strict Host Header check for SNI enabled SSL sessions:                   NO

                Push flag:            0x0 (Auto)

                SSL quantum size:                            8 kB

                Encryption trigger timeout           100 mS

                Encryption trigger packet count:               45

                Subject/Issuer Name Insertion Format: Unicode

                SSL Interception: ENABLED

                SSL Interception OCSP Check: ENABLED

                SSL Interception End to End Renegotiation: ENABLED

                SSL Interception Maximum Reuse Sessions per Server:  10

                Session Ticket: DISABLED              Session Ticket Lifetime: 300 (secs)

                HSTS: DISABLED

                HSTS IncludeSubDomains: NO

                HSTS Max-Age: 0

                ECC Curve: P_256, P_384, P_224, P_521

1)            Cipher Name: DEFAULT Priority :1

                Description: Predefined Cipher Alias

1)            SSL Interception CA CertKey Name: swg_ca_cert

SSLインターセプション