Cisco Application Control Engine モジュール SSL コンフィギュレーション ガイド Software Version A3(1.0)
SSL 終了の設定
SSL 終了の設定
発行日;2012/02/06 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 2MB) | フィードバック

目次

SSL 終了の設定

SSL 終了の概要

SSL 終了設定の前提条件

SSL 終了設定のクイック スタート

SSL パラメータ マップの作成と定義

暗号スイートの追加

失効したサーバ証明書または無効なサーバ証明書の無視

クローズ プロトコルの動作の設定

SSL と TLS のバージョンの定義

SSL キュー遅延の設定

SSL セッション キャッシュ タイムアウトの設定

失効したクライアント証明書の拒否

SSL プロキシ サービスの作成と定義

SSL パラメータ マップと SSL プロキシ サーバ サービスの関連付け

鍵ペアの指定

証明書の指定

証明書チェーン グループの指定

クライアント認証のイネーブル化

クライアント認証での CRL の使用

ダウンロードした CRL をクライアント認証用に設定

DNS クライアントの設定

ドメイン ルックアップのイネーブル化

デフォルトのドメイン名の設定

ドメイン名検索リストの設定

ドメイン ネーム サーバの設定

SSL URL リライトの設定

アクション リストの設定

SSL URL リライト文字列とポートの定義

アクションリストとレイヤ 7 HTTP ロードバランシング ポリシー マップの関連付け

SSL 終了用のレイヤ 3 およびレイヤ 4 クラス マップの作成

SSL 終了用のレイヤ 3 およびレイヤ 4 ポリシー マップの作成

レイヤ 3 およびレイヤ 4 ポリシー マップの作成

レイヤ 3 およびレイヤ 4 クラス マップとポリシー マップの関連付け

SSL プロキシ サーバ サービスとポリシー マップの関連付け

ポリシー マップの VLAN への適用

ポリシー マップのグローバル適用

特定の VLAN へのポリシー マップの適用

SSL 終了の設定例

SSL 終了の設定

この章では、SSL 終了用の仮想 SSL サーバとして Cisco 4700 シリーズ Application Control Engine(ACE)Applianceのコンテキストを設定するために必要な手順を説明します。この章の主な内容は、次のとおりです。

SSL 終了の概要

ACE SSL 終了設定の前提条件

SSL 終了設定のクイック スタート

SSL パラメータ マップの作成と定義

SSL プロキシ サービスの作成と定義

DNS クライアントの設定

SSL URL リライトの設定

SSL 終了用のレイヤ 3 およびレイヤ 4 クラス マップの作成

SSL 終了用のレイヤ 3 およびレイヤ 4 ポリシー マップの作成

ポリシー マップの VLAN への適用

SSL 終了の設定例

SSL 終了の概要

SSL 終了を設定するのは、SSL プロキシ サーバとして動作する ACE がクライアントからの SSL 接続を終了し、HTTP サーバへの TCP 接続を確立する場合です。ACE は SSL 接続を終了する際に、クライアントからの暗号文を復号化し、そのデータをクリア テキストとして HTTP サーバに送信します。

図3-1 は、ACE がクライアントとの SSL 接続を終了するネットワーク接続を表しています。

クライアントから ACE まで ― クライアントとの SSL 接続。ACE は SSL プロキシ サーバとして機能します。

ACE からサーバまで ― ACE と HTTP サーバの間の TCP 接続

図3-1 クライアントとの SSL の終了

 

ACE は、パラメータ マップ、SSL プロキシ サービス、およびクラス マップを組み合わせることにより、クライアント、ACE、およびサーバ間の情報フローのポリシー マップを確立します。SSL 終了は、クライアントからのインバウンド トラフィック フローの宛先 IP アドレスに基づいているので、レイヤ 3 およびレイヤ 4 アプリケーションです。このタイプのアプリケーションの場合は、ACE がインバウンド トラフィックに適用するレイヤ 3 およびレイヤ 4 ポリシー マップを作成する必要があります。

SSL 終了用のポリシー マップを設定する際には、パラメータ マップと SSL プロキシ サーバ サービスを、SSL セッション パラメータとクライアント/サーバ認証ツール(証明書と RSA 鍵ペアなど)を定義するポリシー マップと関連付けます。さらに、そのポリシー マップをクラス マップと関連付けて、インバウンド トラフィックの宛先 IP アドレスとの照合に使用する仮想 SSL サーバ IP アドレスを定義します。アドレスが一致した場合、ACE はクライアントと SSL 接続の確立をネゴシエートします。

図3-2 は、ACE が SSL の終了に使用するレイヤ 3 およびレイヤ4 ポリシー マップの確立および適用に必要とされる主なプロセスを示します。この図には、ポリシー マップ設定のさまざまな構成要素の相互関係も示してあります。

図3-2 SSL 終了の基本的な設定フロー図

 

ACE SSL 終了設定の前提条件

ACE に SSL 動作を設定する前に、まず ACE にサーバ ロード バランシング(SLB)を設定する必要があります。サーバおよびサーバ ファームの実際の設定プロセスでは、実サーバをサーバ ファームに関連付けて、実サーバに適切なポート番号を割り当てます。ポートを指定しないと、ACE はデフォルトの動作をとり、インバウンド接続の場合と同じ宛先ポートを自動的にアウトバウンド サーバ接続に割り当てます。

たとえば、ACE への着信接続がセキュアなクライアント HTTPS 接続である場合、この接続には通常、ポート 443 が使用されます。実サーバにポート番号を割り当てないと、ACE は自動的にポート 443 を使用してサーバに接続するので、ポート 443 を通じてクリア テキストの HTTP 接続が確立されます。このような場合は通常、バックエンド サーバ接続に 80、81、または 8080 のアウトバウンド宛先ポートを定義します。

SLB トラフィックのポリシー設定プロセスでは、次の設定オブジェクトを作成します。

レイヤ 7 クラス マップ

レイヤ 3 およびレイヤ 4 クラス マップ

レイヤ 7 ポリシー マップ

レイヤ 3 およびレイヤ 4 ポリシー マップ

SLB を設定したあと、このマニュアルに記載されている SSL 終了用の SSL 設定要件に基づいて既存の SLB クラス マップとポリシー マップを修正します。

ACE の SLB 設定手順については、『 Cisco 4700 Series Application Control Engine Appliance Server Load-Balancing Configuration Guide 』を参照してください。

SSL 終了設定のクイック スタート

表3-1 は、ACE に SSL終了を設定するために必要な手順を簡潔に示したものです。各手順には、その作業を完了するために必要な CLI コマンドまたは手順の参照箇所が示されています。各機能の詳細な説明および各 CLI コマンドに関連付けられているすべてのオプションについては、 表3-1 以降のセクションを参照してください。


) 次のクイック スタートには、図3-2 に示されているパラメータ マップの作成手順は含まれていません。ACE は、表3-2 に示されているパラメータ マップのデフォルト値を使用します。


 

表3-1 SSL 終了設定のクイック スタート

作業およびコマンド例

1. 複数のコンテキストを使用している場合は、CLI プロンプトをよく見て、目的のコンテキストで動作していることを確認します。必要な場合は、適切なコンテキストに直接ログイン(変更)してください。

host1/Admin# changeto C1
host1/C1#
 

この表の以降の例では、Admin コンテキストが使用されています。コンテキスト作成に関する詳細は、『 Cisco 4700 Series Application Control Engine Appliance Virtualization Configuration Guide 』を参照してください。

2. コンフィギュレーション モードを開始します。

host1/Admin# config
host1/Admin(config)#

3. SSL プロキシ サーバ サービスを作成して、SSL サーバとして機能する ACE がポリシー マップに適用するハンドシェイク パラメータを定義します。

host1/Admin(config)# ssl-proxy service SSL_PSERVICE_SERVER
host1/Admin(config-ssl-proxy)#

4. 証明書および対応する RSA 鍵ペアを定義することにより、SSL プロキシ サーバ サービスを設定します。

host1/Admin(config-ssl-proxy)# key MYRSAKEY_SERVER
host1/Admin(config-ssl-proxy)# cert MYCERT_SERVER
host1/Admin(config-ssl-proxy)# exit
host1/Admin(config)#

5. レイヤ 3 およびレイヤ 4 クラス マップを作成し、必要に応じてこれに入力トラフィック一致基準を設定します。

host1/Admin(config)# class-map L4VIPCLASS
host1/Admin(config-cmap)# match virtual-address 192.168.10.24 tcp any
host1/Admin(config-cmap)# exit
host1/Admin(config)#

6. ポリシー マップを作成し、ステップ 5 で作成したクラス マップをこれに関連付けます。

host1/Admin(config)# policy-map multi-match L4POLICY
host1/Admin(config-pmap)# class L4VIPCLASS
host1/Admin(config-pmap-c)#

7. このポリシー マップに、ステップ 3 で作成された SSL プロキシ サーバ サービスを関連付けます。

host1/Admin(config-pmap-c)# ssl-proxy server SSL_PSERVICE_SERVER
host1/Admin(config-pmap-c)# exit
host1/Admin(config-pmap)# exit
host1/Admin(config)#

8. このポリシー マップを、次の方法で、目的のインターフェイスの入力トラフィックに適用します。

ポリシー マップを、すべてのコンテキスト VLAN にグローバルに適用します。

host1/Admin(config)# service-policy input L4POLICY
 

ポリシー マップを特定の VLAN に適用します。

host1/Admin(config)# interface vlan 50
host1/Admin(config-if)# service-policy input L4POLICY

9. 実行コンフィギュレーションを表示して、追加した情報が適切に設定されていることを確認します。

host1/Admin(config-if)# do show running-config

10. (任意)実行コンフィギュレーションをスタートアップ コンフィギュレーションにコピーすることにより、設定変更をフラッシュ メモリに保存します。

host1/Admin(config-if)# do copy running-config startup-config

SSL パラメータ マップの作成と定義

SSL パラメータ マップには、ACE が SSL プロキシ サービスに適用する SSL セッション パラメータを定義します。SSL パラメータ マップを作成すると、同じ SSL セッション パラメータを異なるプロキシ サービスに適用できるようになります。 表3-2 に各 SSL セッション パラメータとそのデフォルト値を示します。

 

表3-2 SSL パラメータ マップの SSL セッション パラメータ

SSL セッション
パラメータ
説明
デフォルト値

暗号スイート

ACE が SSL ハンドシェイク中にサポートする暗号スイートを定義します(ACE がサポートしている使用可能な暗号スイートのリストは、 表3-3 を参照)。

ACE は、使用可能な暗号スイートをすべてサポートしています。

認証失敗の無視

ACE が、失効したサーバ証明書または無効なサーバ証明書を無視し、SSL 開始設定でのバックエンド接続の設定を継続できるようにします。

ディセーブル

クローズ プロトコル

ACE による close-notify メッセージの実行方法を定義します。

none ― ACE はセッションをクローズするとき、close-notify アラート メッセージをピアに送信しますが、ピアからの応答の受信は待ちません。

バージョン

ACE が SSL ハンドシェイク時にサポートする SSL およびTLS のバージョンを定義します。

ACE は、バージョン SSL3 と TLS1 をサポートします。

キュー遅延時間

サーバからのパケット データをクライアント向けに暗号化するまでに ACE が保持する時間を定義します。

ディセーブル

セッション キャッシュ タイムアウト

ACE で、新しい SSL セッションを確立するための新しい SSL ハンドシェイクが必要になるまでの、SSL セッション ID が有効な時間を定義します。

ディセーブル

失効した CRL

CRL が失効していた場合、ACE はすべての着信クライアント証明書を拒否するかどうかを定義します。

ディセーブル


) SSL プロキシ サービスでデフォルトの SSL セッション パラメータ値を使用する場合は、SSL パラメータ マップを作成したり、それをプロキシ サービスに関連付けたりする必要はありません。パラメータ マップを SSL プロキシ サービスに関連付けない場合、ACE は、表3-2 にリストされたセッション パラメータのデフォルト値をプロキシ サービスに自動的に適用します。


SSL パラメータ マップを作成するには、コンフィギュレーション モードで parameter-map type ssl コマンドを使用します。

このコマンドの構文は次のとおりです。

parameter-map type ssl parammap_name

parammap_name 引数は、SSL パラメータ マップの名前です。64 文字以内で、引用符やスペースを含めずに、英数字を入力します。

たとえば、SSL パラメータ マップ PARAMMAP_SSL を作成する場合は、次のように入力します。

host1/Admin(config)# parameter-map type ssl PARAMMAP_SSL
 

SSL プロキシ パラメータ マップを作成すると、CLI はパラメータ マップ SSL コンフィギュレーション モードになります。

host1/Admin(config-parammap-ssl)#
 

SSL セッション パラメータを何も定義せずにパラメータ マップ SSL コンフィギュレーション モードを終了した場合、ACE は 表3-2 に示されているデフォルト値をパラメータ マップに設定します。

既存の SSL パラメータ マップを削除するには、次のように入力します。

host1/Admin(config)# no parameter-map type ssl PARAMMAP_SSL
 

ここで説明する内容は、次のとおりです。

暗号スイートの追加

失効したサーバ証明書または無効なサーバ証明書の無視

クローズ プロトコルの動作の設定

SSL と TLS のバージョンの定義

SSL キュー遅延の設定

SSL セッション キャッシュ タイムアウトの設定

失効したクライアント証明書の拒否

暗号スイートの追加

SSL プロトコルは、次のような動作用に、さまざまな暗号アルゴリズム(暗号文)をサポートしています。

サーバとクライアントの相互認証

証明書の送信

セッション キーの確立

クライアントとサーバがサポートする暗号スイート(暗号文のセット)は、サポートする SSL バージョン、許容できる暗号強度に関する企業ポリシー、SSL 対応ソフトウェアの輸出に対する政府規制など、さまざまな要因によって異なる可能性があります。特に SSL ハンドシェイク プロトコルは、サーバとクライアントが相互認証、証明書の送信、セッション キーの確立に使用する暗号スイートのネゴシエーション方法を決定します。

図3-3 に示されているとおり、暗号スイートは、鍵交換アルゴリズム、データ暗号化アルゴリズム、メッセージ認証(ハッシュ)アルゴリズムという 3 つのアルゴリズムで構成されています。

図3-3 暗号スイート アルゴリズム

 


) 輸出可能な暗号スイートは、ソフトウェア製品に対する米国輸出規制に定義されているいくつかの暗号スイート(128 ビットの 3DES または RC4 暗号)よりも強度が劣る暗号スイートです。輸出可能な暗号スイートは、米国からほとんどの国への輸出が許可されており、輸出可能な製品に使用できる最強の暗号を提供します。


ACE にセキュア セッションでサポートさせる各暗号スイートを定義するには、ssl パラメータ マップ コンフィギュレーション モードで cipher コマンドを使用します。適切な暗号スイートは、環境やセキュリティ要件によって異なり、ACE にロードした証明書やキーと相関させる必要があります。


) デフォルトでは、ACE は表3-3 に示されているすべての暗号スイートをサポートします。デフォルトの設定が機能するのは、SSL パラメータ マップに具体的な暗号を何も設定しない場合です。all cipher suites の値が使用されるように戻すには、このコマンドの no 形式を使用して、具体的に定義されている暗号をパラメータ マップから削除する必要があります。


このコマンドの構文は次のとおりです。

cipher cipher_name [priority cipher_priority ]

キーワードと引数は次のとおりです。

cipher_name ― ACE でサポートする暗号スイートの名前。ACE のサポート対象となっている暗号スイートについては、 表3-3 を参照してください。この表からサポート対象の暗号スイートを 1 つ入力します。

priority ― (任意)暗号スイートにプライオリティ レベルを指定します。プライオリティ レベルは、暗号スイートの優先順位を表します。最も優先順位が高い値は 10、最も低い値は 1 です。デフォルトでは、設定されているすべての暗号スイートのプライオリティ レベルが 1 になります。使用する暗号スイートのネゴシエーション時に、ACE は、クライアント リストからプライオリティ レベルが最も高い暗号スイートを選択します。プライオリティ レベルが高いほど、暗号スイートとして指定されやすくなります。SSL 終了アプリケーションでは、ACE はクライアントの ClientHello ハンドシェイク メッセージ内の暗号スイートの照合にプライオリティ レベルを使用します。SSL 開始アプリケーションでは、プライオリティ レベルは、ACE がサーバへの ClientHello ハンドシェイク メッセージに暗号スイートを配置する順序を表します。

cipher_priority ― 暗号スイートのプライオリティ レベル。1 ~ 10 の整数値を入力します。デフォルト値は 1 です。

たとえばプライオリティ レベル 2 の暗号スイート rsa_with _aes_128_cbc_sha を追加するには、次のように入力します。

host1/Admin(config)# parameter-map type ssl PARAMMAP_SSL
host1/Admin(config-parammap-ssl)# cipher rsa_with_aes_128_cbc_sha priority 2
 

SSL パラメータ マップに設定する各暗号スイートに対して、 cipher コマンドを使用します。

SSL パラメータ マップから暗号スイートを削除するには、次のように入力します。

host1/Admin(config-parammap-ssl)# no cipher rsa_with_aes_128_cbc_sha
 

表3-3 は、ACE がサポートする使用可能な暗号スイートの一覧表です。この表は、ACE からの海外輸出が可能な暗号スイートがどれかわかるようになっています。この表には、各暗号スイートに必要な認証証明書と暗号鍵も示されています。

デフォルトの設定では、 ACE は、 表3-3 に示されているすべての暗号スイートを黙示的にサポートします。このようなデフォルト値を使用するか、または同じプライオリティを持つ各暗号スイートを明示的に設定した場合、クライアント接続で複数の暗号が使用されると、ACE はこの表に記載されている順序で
(RSA_WITH_RC4_128_MD5 から)、ピアに暗号スイートを送信します。


注意 タイトルに「export」がある暗号スイートは、米国外での使用を目的としたものであり、鍵のサイズが制限されている暗号アルゴリズムを持ちます。

 

表3-3 ACE がサポートしている SSL 暗号スイート

暗号スイート
エクスポート
可能かどうか
使用される認証証明書
使用される鍵交換アルゴリズム

RSA_WITH_RC4_128_MD5

不可

RSA 証明書

RSA 鍵交換

RSA_WITH_RC4_128_SHA

不可

RSA 証明書

RSA 鍵交換

RSA_WITH_DES_CBC_SHA

不可

RSA 証明書

RSA 鍵交換

RSA_WITH_3DES_EDE_CBC_SHA

不可

RSA 証明書

RSA 鍵交換

RSA_WITH_AES_128_CBC_SHA

不可

RSA 証明書

RSA 鍵交換

RSA_WITH_AES_256_CBC_SHA

不可

RSA 証明書

RSA 鍵交換

RSA_EXPORT_WITH_RC4_40_MD5

RSA 証明書

RSA 鍵交換

RSA_EXPORT1024_WITH_RC4_56_MD5

RSA 証明書

RSA 鍵交換

RSA_EXPORT_WITH_DES40_CBC_SHA

RSA 証明書

RSA 鍵交換

RSA_EXPORT1024_WITH_DES_CBC_SHA

RSA 証明書

RSA 鍵交換

RSA_EXPORT1024_WITH_RC4_56_SHA

RSA 証明書

RSA 鍵交換

失効したサーバ証明書または無効なサーバ証明書の無視

失効したサーバ証明書または無効なサーバ証明書を無視し、SSL 開始コンフィギュレーションの close-notify メッセージでバックエンド接続の設定を継続するように、ACE を有効化できます。それには、パラメータ マップ SSL コンフィギュレーション モードで authentication-failure ignore コマンドを使用します。このコマンドによって、ACE はサーバ証明書に関する次の非重大エラーを無視できるようになります。

証明書がまだ有効になっていない

証明書が失効した

発行元の証明書を取得できない

証明書が無効になった

このコマンドの構文は次のとおりです。

authentication-failure ignore

たとえば、失効したサーバ証明書または無効なサーバ証明書を無視するには、次のように入力します。

host1/Admin(config)# parameter-map type ssl SSL_PARAMMAP_SSL
host1/Admin(config-parammap-ssl)# authentication-failure ignore
 

デフォルト設定であるディセーブルに戻すには、このコマンドの no 形式を使用します。

host1/Admin(config-parammap-ssl)# no authentication-failure ignore

クローズ プロトコルの動作の設定

パラメータ マップ SSL コンフィギュレーション モードで close-protocol コマンドを使用すると、ACE による close-notify メッセージ送信の処理方法を設定できます。

このコマンドの構文は次のとおりです。

close-protocol { disabled | none }

キーワードは次のとおりです。

disabled ― ACE はセッションをクローズするとき、close-notify アラート メッセージをピアに送信しません。ピアからの応答の受信は待ちません。

none ― ACE はセッションをクローズするとき、close-notify アラート メッセージをピアに送信しますが、ピアからの応答の受信は待ちません。

たとえば、 close-protocol を disabled に設定するには、次のように入力します。

host1/Admin(config)# parameter-map type ssl SSL_PARAMMAP_SSL
host1/Admin(config-parammap-ssl)# close-protocol disabled
 

close-protocol コマンドをデフォルト値の none に設定するには、次のように、このコマンドの no 形式を使用します。

host1/Admin(config-parammap-ssl)# no close-protocol

SSL と TLS のバージョンの定義

パラメータ マップ SSL コンフィギュレーション モードで version コマンドを使用すると、ACE がピアとの SSL ハンドシェイク中にサポートするセキュリティ プロトコルのバージョンを指定できます。

このコマンドの構文は次のとおりです。

version {all | ssl3 | tls1}

キーワードは次のとおりです。

all ― (デフォルト)ACE は SSL バージョン 3.0 と TLS バージョン 1.0 の両方をサポートします。

ssl3 ― ACE は SSL バージョン 3.0 だけをサポートします。

tls1 ― ACE は TLS バージョン 1.0 だけをサポートします。

パラメータ マップに SSL バージョン 3.0 を指定する場合は、次のように入力します。

host1/Admin(config)# parameter-map type ssl PARAMMAP_SSL
host1/Admin(config-parammap-ssl)# version ssl3
 

SSL プロキシ パラメータ マップからセキュリティ プロトコル バージョンを削除するには、次のように入力します。

host1/Admin(config-parammap-ssl)# no version tlsl

SSL キュー遅延の設定

ACE は、クライアントへの転送用に暗号化する前に、サーバからのパケット データをキューに入れます。次のいずれかのイベントが起こると、ACE は、キューからデータを出して、暗号化します。

キューが 4096 バイトに達する。

サーバが TCP-FIN セグメントを送信する。

キューが 4096 バイトに達する前に、ACE のキュー遅延時間を超過する。

キュー遅延時間は、キューからデータを出してして暗号化を行う前に ACE が待機する時間です。デフォルトでは、キュー遅延時間はディセーブルになっています。パラメータ マップ SSL コンフィギュレーション モードで queue-delay timeout コマンドを使用して、遅延時間を設定できます。このコマンドの構文は次のとおりです。

queue-delay timeout milliseconds

milliseconds 引数は、データをキューから出すまでの待機時間(ミリ秒)です。0 ~ 10000 の整数値を入力します。値を 0 にすると、遅延タイマーはディセーブルになります。それにより、サーバからデータが着信すると ACE はすぐにデータを暗号化し、暗号化されたデータをクライアントに送信します。


) キュー遅延は、ACE がクライアントに送信する暗号化データにのみ適用されます。


たとえば、キュー遅延時間を 500 ミリ秒に設定するには、次のように入力します。

host1/Admin(config-parammap-ssl)# queue-delay timeout 500
 

キュー遅延タイマーをディセーブルにするには、次のように入力します。

host1/Admin(config-parammap-ssl)# no queue-delay timeout

SSL セッション キャッシュ タイムアウトの設定

クライアントと ACE が完全な SSL 鍵交換を行い、新しいマスター秘密鍵が生成されるたびに、SSL セッション ID が作成されます。クライアントと ACE 間の SSL ネゴシエーション プロセスを短縮するため、SSL セッション ID の再利用機能によって、ACE がセッション キャッシュの秘密鍵情報を再利用できます。次にクライアントに接続する際に、ACE は最後にネゴシエートされたセッションのキャッシュに格納された鍵を再利用します。ACE は、最大 10 万の SSL セッション ID をセッション キャッシュに保存できます。

デフォルトでは、ACE での SSL セッション ID の再利用はディセーブルになっています。セッション ID の再利用をイネーブルにするには、SSL セッション ID の有効期間の合計であるセッション キャッシュ タイムアウト値を設定します。タイムアウトになると、ACE で新しいセッションを確立する完全な SSL ハンドシェイクが必要になります。

パラメータ マップ SSL コンフィギュレーション モードで session-cache timeout コマンドを使用して、セッション キャッシュ タイムアウトを設定できます。このコマンドの構文は次のとおりです。

session-cache timeout seconds

seconds 引数は、セッション ID が削除されるまでに、ACE がキャッシュに格納された鍵を再利用する時間(秒)です。0 ~ 72000(20 時間)の整数値を入力します。デフォルトでは、セッション ID の再利用はディセーブルになっています。値を 0 にすると、キャッシュがいっぱいになったとき、ACE がキャッシュからセッション ID を削除して、Least-Recently Used(LRU)タイムアウト ポリシーを適用します。

たとえば、セッション キャッシュ タイムアウトを 600 秒に設定するには、次のように入力します。

host1/Admin(config-parammap-ssl)# session-cache timeout 600
 

タイマーをディセーブルにして、ACE と接続が確立されるたびに SSL フル ハンドシェイクを実行するには、次のように入力します。

host1/Admin(config-parammap-ssl)# no session-cache timeout
 

コンテキストのセッション キャッシュ情報をクリアするには、 clear crypto session-cache コマンドを使用します。このコマンドの構文は次のとおりです。

clear crypto session-cache [all]

all オプション キーワードは、全コンテキストのすべてのセッション キャッシュ情報をクリアします。このオプションは、Admin コンテキストでのみ利用できます。

失効したクライアント証明書の拒否

「クライアント認証での CRL の使用」 で説明されているように、クライアント認証のために ACE で Certificate Revocation List(CRL; 証明書失効リスト)を設定する場合、CRL には、新バージョンの発効日を指定するアップデート フィールドが含まれています。デフォルトでは、ACE は、失効日を指定されたアップデート フィールドを含む CRL を使用するため、CRL を使用した着信クライアント証明書の拒否は行われません。

使用中の CRL が失効している場合に ACE がクライアント証明書を拒否するように設定するには、パラメータ マップ SSL コンフィギュレーション モードで expired-crl reject コマンドを使用します。このコマンドの構文は次のとおりです。

expired-crl reject

たとえば、次のように入力します。

host1/Admin(config-parammap-ssl)# expired-crl reject
 

使用中の CRL の失効後、ACE のデフォルト動作をリセットしてクライアント証明書を受け入れるようにするには、次のように入力します。

host1/Admin(config-parammap-ssl)# no expired-crl reject
 

SSL プロキシ サービスの作成と定義

SSL プロキシ サービスによって、SSL ハンドシェイク時に ACE が使用する SSL パラメータ マップ、鍵ペア、証明書、およびチェーン グループが定義されます。SSL 終了の場合、ACE は SSL サーバとして機能するので、ACE に SSL プロキシ サーバ サービスを設定します。

SSL プロキシ サービスを作成するには、コンフィギュレーション モードで ssl-proxy service コマンドを使用します。

このコマンドの構文は次のとおりです。

ssl-proxy service pservice_name

pservice_name 引数は、SSL プロキシ サーバ サービスの名前です。64 文字以内で、引用符やスペースを含めずに、英数字を入力します。

たとえば、SSL プロキシ サーバ サービス PSERVICE_SERVER を作成する場合は、次のように入力します。

host1/Admin(config)# ssl-proxy service PSERVICE_SERVER
 

SSL プロキシ サーバ サービスを作成すると、CLI は SSL プロキシ コンフィギュレーション モードになります。

host1/Admin(config-ssl-proxy)#
 

既存の SSL プロキシ サーバ サービスを削除するには、次のように入力します。

host1/Admin(config)# no ssl-proxy PSERVICE_SERVER
 

ここで説明する内容は、次のとおりです。

SSL パラメータ マップと SSL プロキシ サーバ サービスの関連付け

鍵ペアの指定

証明書の指定

証明書チェーン グループの指定

クライアント認証のイネーブル化

クライアント認証での CRL の使用

ダウンロードした CRL をクライアント認証用に設定

SSL パラメータ マップと SSL プロキシ サーバ サービスの関連付け

SSL パラメータ マップと SSL プロキシ サーバ サービスを関連付けるには、SSL プロキシ コンフィギュレーション モードで ssl advanced-options コマンドを使用します。

このコマンドの構文は次のとおりです。

ssl advanced-options parammap_name

parammap_name 引数は、SSL パラメータ マップの名前です(「SSL パラメータ マップの作成と定義」を参照)。64 文字以内で、引用符やスペースを含めずに、英数字を入力します。

たとえば、パラメータ マップ PARAMMAP_SSL を SSL プロキシ サービスと関連付ける場合は、次のように入力します。

host1/Admin(config)# ssl-proxy service PSERVICE_SERVER
host1/Admin(config-ssl-proxy)# ssl advanced-options PARAMMAP_SSL
 

SSL パラメータ マップと SSL プロキシ サービスの関連付けを削除するには、次のように入力します。

host1/Admin(config-ssl-proxy)# no ssl advanced-options PARAMMAP_SSL

鍵ペアの指定

データ暗号化のために ACE が SSL ハンドシェイク中に使用する鍵ペアを指定するには、SSL プロキシ コンフィギュレーション モードで key コマンドを使用します。


) 選択する鍵ペア ファイル内の公開鍵が、選択する証明書に埋め込まれている公開鍵と一致する必要があります(「証明書の指定」を参照)。公開鍵の一致の検証については、「証明書および鍵の管理」「鍵ペアに対する証明書の確認」を参照してください。


このコマンドの構文は次のとおりです。

key key_filename

key_filename 引数は、ACE にロードされている既存の鍵ペア ファイルの名前です。40 文字以内で、引用符のない英数字を入力します。

たとえば、鍵ペア ファイル MYKEY.PEM 内の秘密鍵を指定する場合は、次のように入力します。

host1/Admin(config)# ssl-proxy service PSERVICE_SERVER
host1/Admin(config-ssl-proxy)# key MYKEY.PEM
 

SSL プロキシ サービスから秘密鍵を削除するには、次のように入力します。

host1/Admin(config-ssl-proxy)# no key MYKEY.PEM

証明書の指定

ACE が ID を証明するために SSL ハンドシェイク中に使用する証明書を指定するには、SSL プロキシ コンフィギュレーション モードで cert コマンドを使用します。


) 選択する証明書に埋め込まれている公開鍵が、選択する鍵ペア ファイル内の公開鍵と一致する必要があります(「鍵ペアの指定」を参照)。公開鍵の一致の検証については、「証明書および鍵の管理」「鍵ペアに対する証明書の確認」を参照してください。


このコマンドの構文は次のとおりです。

cert cert_filename

cert_filename 引数は、ACE にロードされている既存の証明書ファイルの名前です。40 文字以内で、引用符のない英数字を入力します。

たとえば、証明書ファイル MYCERT.PEM 内の証明書を指定する場合は、次のように入力します。

host1/Admin(config)# ssl-proxy service PSERVICE_SERVER
host1/Admin(config-ssl-proxy)# cert MYCERT.PEM
 

SSL プロキシ サービスから証明書ファイルを削除するには、次のように入力します。

host1/Admin(config-ssl-proxy)# no cert MYCERT.PEM

証明書チェーン グループの指定

ACE が SSL ハンドシェイク中にピアに送信する証明書チェーンを指定するには、SSL プロキシ コンフィギュレーション モードで chaingroup コマンドを使用します。ACE には SSL プロキシ サービスに指定した証明書とともに証明書チェーンが含まれています(「証明書の指定」を参照)。

このコマンドの構文は次のとおりです。

chaingroup group_name

group_name 引数は、既存の証明書チェーン グループの名前です(「証明書および鍵の管理」「チェーン グループの作成」を参照)。チェーン グループの最大サイズは 16 KB です。64 文字以内で、引用符のない英数字を入力します。


) チェーングループ証明書を変更した場合、SSL プロキシ サービス内で関連のあるチェーン グループを chaingroup コマンドで再指定しないと変更は適用されません。


たとえば、証明書チェーン グループ MYCHAINGROUP を指定するには、次のように入力します。

host1/Admin(config)# ssl-proxy service PSERVICE_SERVER
host1/Admin(config-ssl-proxy)# chaingroup MYCHAINGROUP
 

SSL プロキシ サービスから証明書チェーン グループを削除するには、次のように入力します。

host1/Admin(config-ssl-proxy)# no chaingroup MYCHAINGROUP

クライアント認証のイネーブル化

通常の SSL ハンドシェイクでは、サーバは自身の証明書をクライアントに送信します。クライアントは、証明書からサーバのアイデンティティを検証します。ただし、クライアントは自身の識別情報をサーバに送信しません。ACE でクライアント認証機能をイネーブルにすると、ACE はサーバに証明書を送信するよう、クライアントに要求します。次に、サーバは下記の証明書情報を検証します。

認められた CA が証明書を発行した。

証明書はまだ有効である。

証明書の署名が有効である。

CA が証明書を無効にしていない。

ACE が SSL ハンドシェイク中に使用する証明書認証グループを指定し、この SSL プロキシ サービスでクライアント認証をイネーブルにするには、SSL プロキシ コンフィギュレーション モードで authgroup コマンドを使用します。ACE には、SSL プロキシ サービスに指定した証明書と、グループに設定された証明書が含まれます(「証明書の指定」を参照)。

このコマンドの構文は次のとおりです。

authgroup group_name

group_name 引数は、既存の証明書認証グループの名前です(「証明書および鍵の管理」「認証の証明書グループの設定」を参照)。64 文字以内で、引用符のない英数字を入力します。


) ACE でクライアント認証をイネーブルにすると、ACE のパフォーマンスが大幅に低下する場合があります。CRL 検索を設定すると、さらに遅延が発生します(「クライアント認証での CRL の使用」を参照)。



) 認証グループを変更した場合、SSL プロキシ サービス内で関連のある認証グループを authgroup コマンドで再指定しないと変更は適用されません。


たとえば、証明書認証グループ AUTH-CERT1 を指定するには、次のように入力します。

host1/Admin(config-ssl-proxy)# authgroup AUTH-CERT1
 

SSL プロキシ サービスから証明書認証グループを削除するには、次のように入力します。

host1/Admin(config-ssl-proxy)# no authgroup AUTH-CERT1

クライアント認証での CRL の使用

デフォルトでは、ACE はクライアント認証で CRL を使用しません。SSL プロキシ サービスで CRL を使用するには、次のいずれかの方法で設定します。

ACE は、サービスの各クライアント証明書をスキャンして、拡張領域に CRL が含まれているかを判断し、CRL がある場合には値を取得します。

CRL は、ACE にダウンロードできます(「ダウンロードした CRL をクライアント認証用に設定」を参照)。


) デフォルトでは、使用中の CRL が更新日を過ぎていても、ACE はクライアント証明書を拒否しません。CRL が失効している場合に ACE が証明書を拒否するよう設定するには、expired-crl reject コマンドを使用します。詳細については、「失効したクライアント証明書の拒否」を参照してください。


クライアント認証にどの CRL 情報を使用するか決定するには、SSL プロキシ コンフィギュレーション モードで crl コマンドを使用します。このコマンドの構文は次のとおりです。

crl crl_name | best-effort

引数とキーワードは次のとおりです。

crl_name ― コンフィギュレーション モードで crypto crl コマンドを使用してダウンロードした CRL に割り当てた名前。「ダウンロードした CRL をクライアント認証用に設定」を参照してください。

best-effort ― ACE は、各クライアント証明書をスキャンして、拡張領域に CRL が含まれているかを判断し、CRL がある場合には値を取得します。

たとえば、SSL プロキシ サービスのクライアント認証で CRL1 CRL をイネーブルにするには、次のように入力します。

host1/Admin(config-ssl-proxy)# crl CRL1
 

クライアント証明書で CRL 情報をスキャンするには、次のように入力します。

host1/Admin(config-ssl-proxy)# crl best-effort
 

クライアント認証時に、ダウンロードした CRL の使用をディセーブルにするには、次のように入力します。

host1/Admin(config-ssl-proxy)# no crl CRL1
 

クライアント認証時に、CRL 情報のためにクライアント証明書の使用をディセーブルにするには、次のように入力します。

host1/Admin(config-ssl-proxy)# no crl best-effort

ダウンロードした CRL をクライアント認証用に設定

ACE が SSL プロキシ サービスにダウンロードした CRL をクライアント認証用に設定できます。ポリシー マップにサービスが設定されていないか、ポリシー マップがアクティブではない場合、ACE は CRL をダウンロードしません。ACE は、次の場合に CRL をダウンロードします。

初めて CRL を設定し、アクティブなレイヤ 4 ポリシー マップにアクションとして適用するとき(「SSL プロキシ サーバ サービスとポリシー マップの関連付け」を参照)。

ACE をリロードするとき。

CRL の中で提供されているように NextUpdate が着信し、ACE がこの情報を読み取り、それに基づいて CRL を更新するとき。ACE は、更新された CRL を次回のクライアント認証要求時にダウンロードします。

最大 4 つの CRL をコンテキストごとに設定できます。CRL の設定後、クライアント認証用に SSL プロキシ サーバに CRL を割り当てます(「クライアント認証での CRL の使用」を参照)。

ACE は、設定した Domain Name System(DNS; ドメイン ネーム システム)クライアントを使用して、CRL にあるホスト名を IP アドレスに変換します。DNS クライアントの設定の詳細については、「DNS クライアントの設定」を参照してください。

ダウンロードした CRL を設定するには、コンフィギュレーション モードで crypto crl コマンドを使用します。このコマンドの構文は次のとおりです。

crypto crl crl_name url

引数は、次のとおりです。

crl_name ― CRL に割り当てる名前。64 文字以内で、引用符やスペースを含めずに、英数字を入力します。

url ― ACE が CRL を検索する URL。CRL ファイル名を含む URL フル パスを、255 文字以内で、引用符のない英数字で入力します。URL は http:// で始めてください。HTTP URL のみサポートされます。

たとえば、http://crl.verisign.com/class1.crl からの CRL を CRL1 と命名するよう設定するには、次のように入力します。

host1/Admin(config)# crypto crl CRL1 http://crl.verisign.com/class1.crl
 

CRL を削除するには、次のように入力します。

host1/Admin(config)# no crypto crl CRL1

DNS クライアントの設定

クライアント認証機能を使用して、ACE に DNS クライアントを設定して、DNS サーバと通信し、CRL 内のホスト名を IP アドレスに変換できます。クライアント認証の詳細については、「クライアント認証での CRL の使用」を参照してください。

DNS クライアントを ACE に設定する前に、1 つまたは複数の DNS ネーム サーバが適切に設定され、到達可能であることを確認してください。設定が適切でなかったり、到達不能な場合、DNS クライアントからの変換要求(ドメイン ルックアップ)は廃棄されます。最大 3 つのネーム サーバを設定できます。ACE は変換が成功するまで、設定済みのネーム サーバを順番に試し、ホスト名の解決を試みます。変換に失敗すると、ACE はエラーを報告します。

(ドメイン名を含まないホスト名など)不完全なホスト名については、ACE が以下の処理で使用する、デフォルト ドメイン名またはドメイン名リストを設定できます。

ホスト名の補完

DNS サーバを使用した、ホスト名から IP アドレスへの解決

DNS クライアント設定を表示するには、 show running-config コマンドを使用します。

ここで説明する内容は、次のとおりです。

ドメイン ルックアップのイネーブル化

デフォルトのドメイン名の設定

ドメイン名検索リストの設定

ドメイン ネーム サーバの設定

ドメイン ルックアップのイネーブル化

ACE で、DNS サーバを使ったドメイン ルックアップ(ホストからアドレスへの変換)の実行をイネーブルにするには、コンフィギュレーション モードで ip domain-lookup コマンドを使用します。デフォルトでは、このコマンドはディセーブルになっています。このコマンドの構文は次のとおりです。

ip domain-lookup

ドメイン ルックアップをイネーブルにするには、次の例のように入力します。

host1/Admin(config)# ip domain-lookup
 

ドメイン ルックアップをデフォルト値のディセーブル状態に戻すには、次のように入力します。

host1/Admin(config)# no ip domain-lookup

デフォルトのドメイン名の設定

DNS クライアント機能により、ACE が不完全なホスト名を補完するのに使用する、デフォルトのドメイン名を設定することができます。不完全なホスト名とは、ドメイン名を含まないものを指します(ドットのない名前など)。ドメイン ルックアップがイネーブルになり、デフォルトのドメイン名が設定されると、ACE は不完全なホスト名にドット(.)と設定済みのデフォルトのドメイン名を付与し、ドメイン ルックアップを実行します。

デフォルト ドメイン名を設定するには、コンフィギュレーション モードで ip domain-name コマンドを使用します。このコマンドの構文は次のとおりです。

ip domain-name name

name 引数は、85 文字以内で、引用符やスペースを含まない英数字です。

たとえば、デフォルト ドメイン名を cisco.com と指定する場合は、次のように入力します。

host1/Admin(config)# ip domain-name cisco.com
 

上記の例では、ACE が CRL内 の不完全なホスト名に .cisco.com を付与してから、ACE は DNS ネーム サーバでホスト名を IP アドレスに解決しようとします。

設定からデフォルト ドメインを削除するには、次のように入力します。

host1/Admin(config)# no ip domain-name cisco.com

ドメイン名検索リストの設定

1 つのデフォルト ドメイン名を設定する代わりに、ACE が不完全なホスト名を補完するのに使用する、ドメイン名検索リストを設定することができます。ドメイン名リストには、最大 3 つまでドメイン名を入れられます。ドメイン名リストとデフォルト ドメイン名の両方を設定した場合、ACE はドメイン名リストのみを使用し、デフォルト ドメイン名を使用しません。ドメイン名ルックアップをイネーブルにして、ドメイン名リストを設定した場合、ACE はドメイン名を IP アドレスに解決するまで、それぞれのドメイン名を順番に使用します。

ドメイン名検索リストを設定するには、 ip domain-list コマンドを使用します。このコマンドの構文は次のとおりです。

ip domain-list name

name 引数は、85 文字以内で、引用符やスペースを含まない英数字です。

ドメイン名リストを設定するには、次の例のように入力します。

host1/Admin(config)# ip domain-list cisco.com
host1/Admin(config)# ip domain-list foo.com
host1/Admin(config)# ip domain-list xyz.com
 

リストからドメイン名を削除するには、次のように入力します。

host1/Admin(config)# no ip domain-list xyz.com

ドメイン ネーム サーバの設定

ホスト名を IP アドレスに変換するには、ACE で既存の DNS ネーム サーバを 1 つまたは複数(最大 3 つ)設定します。サーバが到達可能であることを確認するために、設定する前に各ネーム サーバの IP アドレスに ping を実行します。

ネーム サーバを設定するには、コンフィギュレーション モードで ip name-server コマンドを使用します。このコマンドの構文は次のとおりです。

ip name-server ip_address

ip_address 引数は、ネーム サーバのドット付き 10 進表記の IP アドレスです(例:192.168.12.15)。1 つのコマンドラインに、最大 3 つのネーム サーバ IP アドレスを入力できます。

たとえば、DNS クライアント機能用に 3 つのネーム サーバを設定するには、次のように入力します。

host1/Admin(config)# ip name-server 192.168.12.15 192.168.12.16 192.168.12.17
 

リストからネーム サーバを削除するには、次のように入力します。

host1/Admin(config)# no ip name-server 192.168.12.15

SSL URL リライトの設定

クライアントが暗号化したトラフィックを SSL 終了設定で ACE に送信すると、ACE は SSL トラフィックを終端し、サーバにクリア テキストを送信します。サーバは、クライアントと ACE の間で暗号化トラフィックがやり取りされていることを認識しないため、HTTP リダイレクト応答(301: Moved Permanently または 302: Found)の Location ヘッダーの URL をクライアントに返す場合があります。URL は https://www.cisco.com ではなく、http://www.cisco.com のような形式です。ここでは、最初の要求がセキュアな URL だった場合でも、クライアントは暗号化されていない、セキュアではない URL に要求を送ります。クライアント接続が HTTP に変更されたため、要求したデータは、サーバからクリア テキスト接続で取得できない場合があります。

この問題を解決するために、ACE は SSL URL リライトを提供します。ここでは、クライアントに応答を送信する前に、サーバからの Location 応答ヘッダーのリダイレクト URL をhttp:// から https:// に変更します。URL リライトを使用すると、セキュアではない HTTP リダイレクトを回避できます。Web サーバへのすべてのクライアント接続は SSL 方式を使用するため、安全に HTTPS コンテンツをクライアントに返すことができます。ACE では、URL のリライトが必要かどうかを判断するのに正規表現の照合を使用します。Location 応答ヘッダーが指定の正規表現と一致したら、ACE は URL をリライトします。また、ACE は、SSL ポート番号とクリア ポート番号を追加または変更するコマンドを提供します。

ここで説明する内容は、次のとおりです。

アクション リストの設定

SSL URL リライト文字列とポートの定義

アクションリストとレイヤ 7 HTTP ロードバランシング ポリシー マップの関連付け

アクション リストの設定

SSL URL のリライトを設定するには、最初に新しいアクション リストを作成するか、既存の type modify アクション リストを使用します。アクション リストは、ACE で実行する、関連する一連のアクションに名前を付けたものです。たとえば、アクション リストを作成するには、コンフィギュレーション モードで次のコマンドを入力します。

host1/Admin(config)# action-list type modify http SSL_ACTLIST
host1/Admin(config-actlist-mod)#
 

アクション リストの詳細については、『 Cisco 4700 Series Application Control Engine Appliance Server Load-Balancing Configuration Guide 』を参照してください。

SSL URL リライト文字列とポートの定義

action list modify コンフィギュレーション モードで ssl url rewrite コマンドを使用して、リライトのために SSL URL、SSL ポート、およびクリア ポートを定義できます。このコマンドの構文は次のとおりです。

ssl url rewrite location expression [clearport number ] [sslport number ]

引数、キーワード、およびオプションは次のとおりです。

location expression ― URL の正規表現照合に基づく、Location 応答ヘッダーの URL のリライトを指定します。Location ヘッダーの URL が、指定した URL の正規表現文字列に一致すると、ACE は URL を http:// から https:// にリライトし、ポート番号もリライトします。255 文字以内で、引用符やスペースを含まない英数字を入力します。文字列の前後を引用符(")で囲むと、スペースを含むテキスト文字列を入力することもできます。

ロケーションを表す正規表現を入力する場合は、必ずポートやパス指定のない URL(www\.cisco\.com など)を入力してください。ポートを照合するには、この項で説明する sslport および clearport キーワードを使用します。パスの照合を行う必要がある場合、HTTP ヘッダー リライト機能で文字列をリライトします。HTTP ヘッダー リライト機能についての詳細は、『 Cisco 4700 Series Application Control Engine Appliance Server Load-Balancing Configuration Guide 』を参照してください。

ACE は、データ文字列の照合における正規表現の使用をサポートします。正規表現で使用できる、サポートされている文字の一覧については、 表3-4 を参照してください。


) データ文字列を照合する際、ピリオド(.)と疑問符(?)は正規表現では通常の意味を持ちません。これらの記号を一致させるには、角カッコ([ ])文字クラスを使います(www.xyz.com ではなく、www[.]xyz[.]com と入力するなど)。ドット(.)や疑問符(?)の前にエスケープ文字であるバックスラッシュ(\)を使用することもできます。


clearport number ― (任意)クライアントにサーバ リダイレクト応答を送信する前に ACE がクリア ポート番号に変換する SSL ポート番号を指定します。1 ~ 65535 の整数値を入力します。デフォルト値は 80です。

sslport number ― (任意)クライアントにサーバ リダイレクト応答を送信する前に ACE が SSL ポート番号から変換するクリア ポート番号を指定します。1 ~ 65535 の整数値を入力します。デフォルト値は 443です。

たとえば、www.cisco.com または www.cisco.net という URL で、デフォルト SSL ポート 443 およびクリア ポート 8080 を使用して SSL URL リライトを指定するには、次のように入力します。

host1/Admin(config-actlist-mod)# ssl url rewrite location www\.cisco\.* sslport 443 clearport 8080
 

上記の例では、ACE は次のタスクの実行を試みます。

すべての HTTP リダイレクトを http://www.cisco.com:8080 または http://www.cisco.net:8080 と照合する

HTTP リダイレクトを https://www.cisco.com:443 または https://www.cisco.net:443 にリライトする

HTTP リダイレクトをクライアントに転送する

ssl url rewrite コマンドの入力後、アクション リストをレイヤ 3 およびレイヤ 4 ポリシー マップと関連付けます。「アクションリストとレイヤ 7 HTTP ロードバランシング ポリシー マップの関連付け」を参照してください。

 

表3-4 ストリング式の照合で使用される特殊文字

表記
説明

.

任意の 1 文字

.*

ゼロ文字以上の任意の文字

\.

ピリオド(エスケープ文字を使用)

[ charset ]

範囲内の文字のいずれかと一致

[^charset]

範囲内のどの文字とも一致しない。それ以外の文字と一致する

()

式のグループ化

(expr1 | expr2)

OR 式

(expr)*

0 つ以上の式

(expr)+

1 つ以上の式

expr{m,n}

式を m n 回繰り返します。 m n は 1 ~ 255

expr{m}

式がちょうど m 回一致。 m の範囲は 1 ~ 255

expr{m,}

式が m 回以上一致。 m の範囲は 1 ~ 255

\a

アラート(ASCII 7)

\b

バックスペース(ASCII 8)

\f

改ページ(ASCII 12)

\n

改行(ASCII 10)

\r

復帰(ASCII 13)

\t

タブ(ASCII 9)

\v

垂直タブ(ASCII 11)

\0

ヌル(ASCII 0)

\\

バックスラッシュ

\x##

2 桁の 16 進表記で指定された ASCII 文字

アクションリストとレイヤ 7 HTTP ロードバランシング ポリシー マップの関連付け

policy map load balance class コンフィギュレーション モードで action コマンドを使用して、アクション リストをレイヤ 7 HTTP ロードバランシング ポリシー マップと関連付けることができます。このコマンドの構文は次のとおりです。

action name

name 引数は、既存のアクション リストの識別子です。64 文字以内で、引用符のない英数字を入力します。

たとえば、SSL URL リライトのためのアクション リストをレイヤ 7 HTTP ロードバランシング ポリシー マップと関連付けるには、次のように入力します。

host1/Admin(config)# policy-map type loadbalance http first-match L7_POLICY
host1/Admin(config-pmap-lb)# class L7CLASS
host1/Admin(config-pmap-lb-c)# action SSL_ACTLIST
 

アクション リストとポリシー マップの関連付けを解除するには、次のように入力します。

host1/Admin(config-pmap-lb-c)# no action SSL_ACTLIST
 

SSL 終了用のレイヤ 3 およびレイヤ 4 クラス マップの作成

ポリシー マップに関連付けるクラス マップは、指定した基準と照合するトラフィック フィルタとして機能します。SSL 終了の場合は、次のうち 1 つまたは複数のトラフィック特性に基づいて一致基準を定義できます。

アクセス リスト

仮想 IP アドレス

送信元 IP アドレスとサブネット マスク

宛先 IP アドレスとサブネット マスク

TCP/UDP ポート番号またはポート範囲

レイヤ 3 およびレイヤ 4 クラス マップを作成するには、コンフィギュレーション モードで class-map コマンドを使用します。レイヤ 3 およびレイヤ 4 クラス マップの作成および設定の詳細については、『 Cisco 4700 Series Application Control Engine Appliance Server Load-Balancing Configuration Guide 』を参照してください。

SSL 終了用のレイヤ 3 およびレイヤ 4 ポリシー マップの作成

SSL 終了の場合は、ACE がクライアントによって SSL サーバとして認識されるように ACE を設定します。そのためには、ACE がインバウンド トラフィックに適用するレイヤ 3 およびレイヤ 4 ポリシー マップを設定する必要があります。ポリシー マップは、関連付けられたレイヤ 3 およびレイヤ 4 クラス マップを使用して、インバウンド トラフィックが指定した基準と一致するかどうかを判断します。一致していれば、ACE は SSL ハンドシェイクでクライアントとやりとりし、関連付けられた SSL プロキシ サーバ サービス内の指定したパラメータを使用して SSL セッションを確立します。

ここで説明する内容は、次のとおりです。

レイヤ 3 およびレイヤ 4 ポリシー マップの作成

レイヤ 3 およびレイヤ 4 クラス マップとポリシー マップの関連付け

SSL プロキシ サーバ サービスとポリシー マップの関連付け

レイヤ 3 およびレイヤ 4 ポリシー マップの作成

SSL 終了用のポリシー マップを作成するには、コンフィギュレーション モードで policy-map コマンドを使用します。

このコマンドの構文は次のとおりです。

policy-map multi-match policy_name

policy_name 引数は、ポリシー マップに割り当てる名前です。64 文字以内で、引用符やスペースを含めずに、英数字を入力します。

たとえば、ポリシー マップ L4POLICY を作成する場合は、次のように入力します。

host1/Admin(config)# policy-map multi-match L4POLICY
 

ポリシー マップを作成すると、CLI がポリシー マップ コンフィギュレーション モードになります。

host1/Admin(config-pmap)#
 

既存のポリシー マップを削除するには、次のように入力します。

host1/Admin(config)# no policy-map L4POLICY
 

SSL クラス マップとポリシー マップの関連付けについては、「レイヤ 3 およびレイヤ 4 クラス マップとポリシー マップの関連付け」を参照してください。

レイヤ 3 およびレイヤ 4 クラス マップとポリシー マップの関連付け

レイヤ 3 およびレイヤ 4 クラス マップとポリシー マップを関連付けるには、ポリシー マップ コンフィギュレーション モードで class コマンドを使用します。

このコマンドの構文は次のとおりです。

class class-map

class-map 引数は、既存のクラス マップの名前です。64 文字以内で、引用符やスペースを含まない英数字を入力します。

たとえば、クラス マップ L4VIPCLASS をポリシー マップと関連付けるには、次のように入力します。

host1/Admin(config)# policy-map multi-match L4POLICY
host1/Admin(config-pmap)# class L4VIPCLASS
 

クラス マップをポリシー マップと関連付けると、CLI はポリシー マップ クラス マップ コンフィギュレーション モードになります。

host1/Admin(config-pmap-c)#
 

ポリシー マップとクラス マップの関連付けを削除するには、次のように入力します。

host1/Admin(config-pmap)# no class L4VIPCLASS
 

SSL プロキシ サービスとクラス マップの関連付けについては、「SSL プロキシ サーバ サービスとポリシー マップの関連付け」を参照してください。

SSL プロキシ サーバ サービスとポリシー マップの関連付け

SSL プロキシ サーバ サービスをポリシー マップと関連付けるには、ポリシー マップ クラス コンフィギュレーション モードで ssl-proxy server コマンドを使用します。

このコマンドの構文は次のとおりです。

ssl-proxy server pservice

pservice 引数は、既存の SSL プロキシ サーバ サービスの名前です。64 文字以内で、引用符のない英数字を入力します。

たとえば、SSL プロキシ サーバ サービス PSERVICE_SERVER をポリシー マップと関連付ける場合は、次のように入力します。

host1/Admin(config)# policy-map multi-match L4POLICY
host1/Admin(config-pmap)# class L4VIPCLASS
host1/Admin(config-pmap-c)# ssl-proxy server PSERVICE_SERVER
 

クラス マップの関連付けを削除するには、次のように入力します。

host1/Admin(config-pmap-c)# no ssl-proxy server PSERVICE_SERVER

ポリシー マップの VLAN への適用

ここでは、レイヤ 3 およびレイヤ 4 ポリシー マップを VLAN トラフィックに適用する方法について説明します。ACE を使用すると、現在のコンテキスト内のすべての VLAN にグローバルにポリシーを適用することも、また、コンテキスト内の特定の VLAN にポリシーを適用することもできます。

ここで説明する内容は、次のとおりです。

ポリシー マップのグローバル適用

特定の VLAN へのポリシー マップの適用

ポリシー マップのグローバル適用

コンテキスト内のすべての VLAN に対してポリシー マップをグローバルに適用するには、コンフィギュレーション モードで service-policy コマンドを使用します。

このコマンドの構文は次のとおりです。

service-policy input policy_name

policy_name 引数は、既存のポリシー マップの名前です。64 文字以内で、引用符やスペースを含まない英数字を入力します。

たとえば、ポリシー マップ L4POLICY をコンテキスト内のすべての VLAN に適用する場合は、次のように入力します。

host1/Admin(config)# service-policy input L4POLICY
 

すべての VLAN からポリシーをグローバルに削除するには、次のように入力します。

host1/Admin(config)# no service-policy input L4POLICY

特定の VLAN へのポリシー マップの適用

特定の VLAN インターフェイスにポリシー マップを適用するには、コンフィギュレーション モードで interface コマンドを使用して、インターフェイス コンフィギュレーション モードを開始します。

このコマンドの構文は次のとおりです。

interface vlan vlan

vlan 引数はコンテキストの VLAN 番号です。2 ~ 4094 の整数値を入力します。

たとえば、VLAN 10 のインターフェイス コンフィギュレーション モードを開始するには、次のように入力します。

host1/Admin(config)# interface vlan 10
host1/Admin(config-if)#
 

ポリシー マップをインターフェイスに適用するには、インターフェイス コンフィギュレーション モードで service-policy コマンドを使用します。

このコマンドの構文は次のとおりです。

service-policy input policy-name

policy- name 引数は、既存のポリシー マップの名前です。64 文字以内で、引用符やスペースを含まない英数字を入力します。

たとえば、ポリシー マップ L4POLICY を VLAN 10 に適用する場合は、次のように入力します。

host1/Admin(config)# interface vlan 10
host1/Admin(config-if)# service-policy input L4POLICY
 

インターフェイスからポリシーを削除するには、次のように入力します。

host1/Admin(config-if)# no service-policy input L4POLICY
 

SSL 終了の設定例

次に示すのは、SSL プロキシ サーバとして機能し、クライアントからの SSL または TLS 接続を終端して HTTP サーバへの TCP 接続を確立する ACE の実行コンフィギュレーションの例です。ACE は SSL または TLS 接続を終端する際に、クライアントからの暗号文を復合化し、そのデータをクリア テキストとして HTTP サーバに送信します。この例では、SSL 終了の設定を太字で示してあります。

access-list ACL1 line 10 extended permit ip any any
 
probe http GEN-HTTP
port 80
interval 50
faildetect 5
expect status 200 200
 
serverfarm host SFARM1
description SERVER FARM 1 FOR SSL TERMINATION
probe GEN_HTTP
rserver SERVER1 80
inservice
rserver SERVER2 80
inservice
rserver SERVER3 80
inservice
rserver SERVER4 80
inservice
 
serverfarm host SFARM2
description SERVER FARM 2 FOR SSL TERMINATION
probe GEN_HTTP
rserver SERVER5 80
inservice
rserver SERVER6 80
inservice
rserver SERVER7 80
inservice
rserver SERVER8 80
inservice
 
parameter-map type ssl PARAMMAP_SSL_TERMINATION
cipher RSA_WITH_3DES_EDE_CBC_SHA
cipher RSA_WITH_AES_128_CBC_SHA priority 2
cipher RSA_WITH_AES_256_CBC_SHA priority 3
version all
parameter-map type connection TCP_PARAM
syn-data drop
exceed-mss allow
 
ssl-proxy service SSL_PSERVICE_SERVER
ssl advanced-options PARAMMAP_SSL_TERMINATION
key MYKEY.PEM
cert MYCERT.PEM
 
class-map type http loadbalance match-all L7_SERVER_CLASS
description Sticky for SSL Testing
2 match http url .*.jpg
3 match source-address 192.168.130.0 255.255.255.0
class-map type http loadbalance match-all L7_SLB-HTTP_CLASS
2 match http url .*
3 match source-address 192.168.130.0 255.255.255.0
class-map match-all L4_SSL-TERM_CLASS
description SSL Termination VIP
2 match virtual-address 192.168.130.11 tcp eq https
 
policy-map type loadbalance first-match L7_SSL-TERM_POLICY
class L7_SERVER_CLASS
serverfarm SFARM1
insert-http I_AM header-value "SSL_TERM"
insert-http SRC_Port header-value "%ps"
insert-http DEST_IP header-value "%id"
insert-http DEST_Port header-value "%pd"
insert-http SRC_IP header-value "is"
class L7_SLB-HTTP_CLASS
serverfarm SFARM1
insert-http I_AM header-value "SSL_TERM"
insert-http SRC_Port header-value "%ps"
insert-http DEST_IP header-value "%id"
insert-http DEST_Port header-value "%pd"
insert-http SRC_IP header-value "is"
policy-map multi-match L4_SSL-VIP_POLICY
class L4_SSL-TERM_CLASS
loadbalance vip inservice
loadbalance policy L7_SSL-TERM_POLICY
loadbalance vip icmp-reply
ssl-proxy server SSL_PSERVICE_SERVER
connection advanced-options TCP_PARAM
 
interface vlan 120
description Upstream VLAN_120 - Clients and VIPs
ip address 192.168.120.1 255.255.255.0
fragment chain 20
fragment min-mtu 68
access-group input ACL1
nat-pool 1 192.168.120.70 192.168.120.80 netmask 255.255.255.0 pat
service-policy input L4_SSL-VIP_POLICY
no shutdown
ip route 10.1.0.0 255.255.255.0 192.168.120.254