ローカル管理配置に関する Cisco ACNS ソフトウェア コンフィギュレーション ガイド Release 5.4
スタンドアロン Content Engine の ICAP の設定
スタンドアロン Content Engine の ICAP の設定
発行日;2012/01/14 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 9MB) | フィードバック

目次

スタンドアロン Content Engine の ICAP の設定

ICAP の概要

ICAP ベンダーとのインターオペラビリティ

ICAP サービスについて

ICAP サービスとベクタ ポイントについて

ICAP パフォーマンスについて

Content Engine での ICAP サービス設定の例

スタンドアロン Content Engine での ICAP の設定

スタンドアロン Content Engine での ICAP の設定

スタンドアロン Content Engine での ICAP サービスの設定

スタンドアロン Content Engine での ICAP サーバの設定

ICAP 交換のロギングの設定

ICAP 設定に関する情報の表示

ICAP サービスの統計情報の表示

スタンドアロン Content Engine の ICAP の設定

この章では、スタンドアロン Content Engine で Internet Content Adaptation Protocol(ICAP)を設定する方法について説明します。ACNS 5.2.1 ソフトウェアおよびそれ以降のリリースは、HTTP 要求で ICAP をサポートします。ACNS 5.4.1 ソフトウェアおよびそれ以降のリリースは、FTP-over-HTTP 要求で ICAP をサポートします。ネイティブの FTP 要求はサポートされません。

この章の内容は次のとおりです。

「ICAP の概要」

「Content Engine での ICAP サービス設定の例」

「スタンドアロン Content Engine での ICAP の設定」

「ICAP 交換のロギングの設定」

「ICAP 設定に関する情報の表示」

「ICAP サービスの統計情報の表示」


) この章で使用する CLI(コマンドライン インターフェイス)コマンドの構文および使用方法については、『Cisco ACNS Software Command Reference』Release 5.4 を参照してください。

Content Distribution Manager に登録されている Content Engine の ICAP の設定方法については、『Cisco ACNS Software Configuration Guide for Centrally Managed Deployments』Release 5.4を参照してください。


ICAP の概要

ICAP は、通常はネットワークのエッジにあるコンテンツ アダプテーションのためのオープンな標準プロトコルです。コンテンツ アダプテーションには、ウィルス スキャン、コンテンツ変換、コンテンツ フィルタリング、コンテンツ挿入など、エンドユーザへのコンテンツの価値を高める機能があります。ICAP により、HTTP プロキシ サーバとして動作する Content Engine を使用して、要求されたコンテンツのフィルタリングとアダプテーションを実行する ICAP サーバとして動作する外部デバイスとの通信方法を指定します。

ICAP には、HTTP サービスのための 2 つのコンテンツ処理モードがあります。これらのモードによって、ICAP クライアントとして動作する Content Engine と ICAP サーバの間のトランザクションを定義します。2 つのモードは次のとおりです。

要求の変更(reqmod):要求がオリジン サーバに向かう途中で Content Engine から ICAP サーバに送信されるときにその要求を変更できます。ICAP サーバ側では、要求されたサービスに応じてこれらの要求を変更できます。

応答の変更(respmod):要求がオリジン サーバから返されたあとに、要求を変更できます。ICAP サーバは、オリジン サーバから返された後は、要求されたオブジェクトに対してのみ機能します。


) ACNS 5.4.1 ソフトウェアおよびそれ以降のリリースは、FTP-over-HTTP 要求で ICAP もサポートします。ネイティブの FTP 要求はサポートされません。


ICAP ベンダーとのインターオペラビリティ

Content Engine と相互運用するために、認定済みの ICAP ベンダーをすべて表示します。

TrendMicro(reqmod および respmod について)

Symantec(respmod について)

Finjan(reqmod および respmod について)

SurfContol(reqmod について)

ICAP サービスについて

ICAP サービスとは、ICAP サービスと、ICAP サービスを提供する ICAP サーバ(複数)を定義する属性のグループです。1 台の Content Engine に最大 10 の ICAP サービスを設定し、1 つの ICAP サービスに ICAP サーバを 5 台まで設定できます。また、Content Engine が処理したすべての HTTP 要求に ICAP サービスを適用するか、または Rules Template(ルール テンプレート)に一致した要求にのみ ICAP 処理を適用するのかを選択できます。


ヒント ICAP サーバのクラスタ間で使用する負荷分散のタイプを設定するには、icap service load balancing グローバル コンフィギュレーション コマンドを使用します。


ICAP サービスとベクタ ポイントについて

ICAP サービスがコンテンツに適用されるポイントを ベクタ ポイント と呼びます。このポイントは、 vector-point オプションで指定します。次の 3 つのベクタ ポイントがサポートされています。

クライアント要求のベクタ ポイント( reqmod-postcache ):ICAP サーバはクライアント要求に対して次のアクションのいずれかを実行します。

接続を切断する。

変更されたエラー応答を送信する。

要求の中の URL を使用してキャッシュを検索する。

変更された URL を使用してキャッシュを検索する。

キャッシュ ミスの場合に要求のヘッダーまたは本体を変更する。

キャッシュ ミスのベクタ ポイント( reqmod-precache ):ICAP サーバは要求をオリジン サーバに転送する前に、次のアクションのいずれかを実行します。

接続を切断する。

変更されたエラー応答を送信する。

元の URL を使用して要求をオリジン サーバに送信する。

別の URL を使用して要求をオリジン サーバに送信する。

要求のヘッダーまたは本体を変更する。

サーバ応答のベクタ ポイント( respmod-precache ):ICAP サーバはオリジン サーバから応答を受信したあとに、次のいずれかのアクションを実行します。

応答をクライアントに返す。

要求のヘッダーまたは本体を変更する。

元の URL を使用して応答をキャッシングする。

別の URL を使用して応答をキャッシングする。


) 同じベクタ ポイントに割り当てられている各種 ICAP サービスで、さまざまな負荷分散 オプションを使用できます。


次のコマンドは、2 つのベクタ ポイント( reqmod-precache respmod-precache )で処理する必要があるウィルス スキャン サービスの一般的な設定を示しています。

ContentEngine(config)# icap apply all
ContentEngine(config)# icap service trend-reqmod
ContentEngine(config-icap-service)# enable
ContentEngine(config-icap-service)# vector-point reqmod-precache
ContentEngine(config-icap-service)# server icap://172.19.227.150/REQ-Service
ContentEngine# exit
ContentEngine# icap service trend-respmod
ContentEngine(config-icap-service)# enable
ContentEngine(config-icap-service)# vector-point respmod-precache
ContentEngine(config-icap-service)# server icap://172.19.227.150/interscan
ContentEngine# exit
 

ICAP ベンダーが複数のベクタ ポイントで同じサービス名をサポートしている場合には、次の例に示すように、1 つのサービスを設定して、サポート対象のベクタ ポイントを追加できます。

ContentEngine(config)# icap service myicap-service
ContentEngine(config-icap-service)# enable
ContentEngine(config-icap-service)# vector-point reqmod-precache
ContentEngine(config-icap-service)# vector-point respmod-precache
ContentEngine(config-icap-service)# server icap://172.19.227.150/icap-service-name
ContentEngine(config-icap-service)# exit
ContentEngine(config)#

ICAP パフォーマンスについて

ICAP ベンダーがウィルス スキャンに使用する応答変更のベクタ ポイント(respmod)では、Content Engine モデル CE-7305 のパフォーマンスのトランザクションは 300/秒となります。

ICAP ベンダーが URL のフィルタリングに使用する要求変更のプレキャッシュ ベクタ ポイント(respmod)では、Content Engine モデル CE-7305 のパフォーマンスは標準パフォーマンスに比べて 20% 低下します。


) Content Engine のパフォーマンスは、ICAP サーバのパフォーマンスによって制限されます。


Content Engine での ICAP サービス設定の例

次の手順は、スタンドアロン Content Engine で ICAP サービスを定義し、有効にする方法の一例です。


ステップ 1 icap apply {all | rules-template} グローバル コンフィギュレーション コマンド を使用して、Content Engine が受信するどの要求に対してどの ICAP サービスを実行するかを指定します。

次に例を示します。

use-icap-service のルール アクションに一致する ICAP サービスのみを実行するように Content Engine に指示します。

ContentEngine(config)# icap apply rules-template
 

受信するすべての HTTP 要求に対する ICAP サービスをすべて実行するように Content Engine に指示します。

ContentEngine(config)# icap apply all
 

ステップ 2 local1/logs/icap/ディレクトリにある、ICAP 関連のトランザクション ロギングをイネーブルにします。

ContentEngine(config)# icap logging enable
 

ステップ 3 Content Engine の各種 ICAP サービスを設定し、イネーブルにします。

 

ContentEngine(config)# icap service trend-reqmod
ContentEngine(config-icap-service)# enable
ContentEngine(config-icap-service)# vector-point reqmod-precache
ContentEngine(config-icap-service)# server icap//172.19.227.150/REQ-Service
ContentEngine# exit
ContentEngine(config)# icap service trend-respmod
ContentEngine(config-icap-service)# enable
ContentEngine(config-icap-service)# vector-point respmod-precache
ContentEngine(config-icap-service)# server icap//172.19.227.150/interscan
ContentEngine# exit
 

ステップ 4 rule グローバル コンフィギュレーション コマンドを使用して、この Content Engine に ICAP サービスのルールを定義します。

次の例では、ある特定のトラフィック(イントラネットのドメイン トラフィックや他の信頼されるトラフィックなど)の ICAP 処理を意図的に回避しています。

ContentEngine(config)# rule enable
ContentEngine(config)# rule action use-icap-service trend-reqmod pattern-list 1
protocol all
ContentEngine(config)# rule action use-icap-service trend-respmod pattern-list 1
protocol all
ContentEngine(config)# rule pattern-list 1 domain “!(.*cisco\.com|.*datek\.com)”

ヒント デフォルトでは、ストリーミング メディア クライアントからの要求が ICAP 処理をバイパスします。ただし、必要があれば、icap bypass streaming-media グローバル コンフィギュレーション コマンドを使用して、ストリーミング メディアに対するバイパス機能を有効にできます。


 


) ICAP サービスの詳細については、「ICAP サービスとベクタ ポイントについて」を参照してください。


スタンドアロン Content Engine での ICAP の設定

スタンドアロン Content Engine で ICAP を設定するには、Content Engine CLI を使用する必要があります。次のセクションで、必要な作業を説明します。

「スタンドアロン Content Engine での ICAP の設定」

「スタンドアロン Content Engine での ICAP サービスの設定」

「スタンドアロン Content Engine での ICAP サーバの設定」

スタンドアロン Content Engine での ICAP の設定

スタンドアロン Content Engine で ICAP を設定するには、Content Engine CLI を使用する必要があります(Content Engine GUI では、ICAP 設定は現在サポートされていません)。

icap グローバル コンフィギュレーション コマンドを使用して、スタンドアロン Content Engine に ICAP パラメータを設定するときには、次の重要な点に留意してください。

Content Engine と ICAP サーバ間のセッション ネゴシエーション時に ICAP サーバに渡される ICAP 拡張ヘッダーを指定するには、 icap append-x-headers グローバル コンフィギュレーション コマンドを使用します。

ACNS 5.1 ソフトウェアおよびそれ以降のリリースでは、ICAP サーバに渡される要求にクライアントとサーバの IP アドレス ヘッダーを付加するように Content Engine を設定できます。この機能により、ICAP サーバを使用して、クライアントの IP アドレスとサーバの IP アドレスに基づいて URL フィルタリングを実行できます。この機能を有効にするには、コマンド オプション icap append-x-headers x-client-ip と icap append-x-headers x-server-ip を使用する必要があります。

ACNS 5.2 ソフトウェアおよびそれ以降のリリースでは、ICAP サーバに渡される要求にユーザ名とグループ名のヘッダーを付加するように Content Engine を設定できます。この機能により、ICAP サーバを使用して、ユーザ名とグループ名に基づいて URL フィルタリングを実行できます。icap append-x-headers グローバル コンフィギュレーション コマンドの次の 2 つのコマンド オプションを次のように使用します。

グローバル サービス用として ICAP サーバにユーザ名情報が渡されるようにするには、x-authenticated-user オプションを指定します。このオプションは、デフォルトでは無効になっています。オプション(icap append-x-headers x-authenticated-user オプション)を有効にすると、ICAP サーバへの ICAP 要求に x 認証ユーザ情報が挿入されます。

グローバル サービス用として ICAP サーバにグループ名情報が渡されるようにするには、x-authenticated-groups オプションを指定します。このオプションは、デフォルトでは無効になっています。オプション(icap append-x-headers x-authenticated-groups オプション)を有効にすると、ICAP サーバへの ICAP 要求に x 認証グループ情報が挿入されます。

現在サポートされている認証方式として、LDAP、NTLM、RADIUS、TACACS+ があります。

デフォルトでは、ストリーミング メディア クライアントからの要求は、ICAP 処理をバイパスします。

ISTag が変わるごとにキャッシュ内のコンテンツの厳格な再チェックを強制的に実行させるには、icap bypass streaming-media コマンドを使用します。ISTag は HTTP 応答ヘッダー内のフィールドであり、これによって、ICAP サーバ側からサービス固有のクッキーを ICAP クライアントに送信して、サービスの現在状態を示すことができます。サーバ バージョンの更新の結果として、ISTag がウィルス パターン ファイルやポリシーに変わる場合があります。

表12-1 は、各種の icap グローバル コンフィギュレーション コマンド パラメータの説明です。

 

表12-1 icap コマンドのパラメータ

パラメータ
説明

append-x-headers

ICAP プロトコル ハンドシェイク中に x ヘッダーを付加します。デフォルトでは無効になっています。追加する各種 x ヘッダーとして複数のエントリを指定できます。

x-client-ip

ICAP サーバに送信する要求に x クライアント IP ヘッダーを付加します。デフォルトでは無効になっています。

x-server-ip

ICAP サーバに送信する要求に x サーバ IP ヘッダーを付加します。デフォルトでは無効になっています。

x-authenticated-user

ICAP サーバに送信する要求に x 認証ユーザ ヘッダーを付加します。デフォルトでは無効になっています。

x-authenticated-
groups

ICAP サーバに送信する要求に x 認証グループ ヘッダーを付加します。デフォルトでは無効になっています。

apply

HTTP 要求および FTP-over-HTTP 要求の ICAP 処理を有効にします。

all

すべての HTTP 要求および FTP-over-HTTP 要求の ICAP 処理を有効にします。

rules-template

rule action use-icap-service グローバル コンフィギュレーション コマンドを使用して、Rules Template(ルール テンプレート)に一致した HTTP 要求および FTP-over HTTP 要求の ICAP 処理を有効にします。

bypass

要求された特定コンテンツのバイパスを有効にします。

streaming-media

ストリーミング メディアのバイパスを有効にします。

logging

ICAP サービスの使用時にロギング関連のオプションを指定します。

enable

ICAP サービス使用時にロギングを有効にします。

format

ロギング フォーマットを指定します。

custom

ロギング用にカスタマイズしたフォーマットを指定します。

word

カスタマイズしたロギングを識別するための語を指定します。

standard

ロギング用に標準フォーマットを指定します。

スタンドアロン Content Engine での ICAP サービスの設定

ACNS 5.1 ソフトウェアおよびそれ以降のリリースでは、コンテンツ アダプテーションを使用する、3 つのベクタ ポイントがサポートされています(ICAP サービスとベクタ ポイントについてを参照)。

すべての要求がベクタ ポイントを通過するため、ベクタ ポイントに ICAP サーバを設定すると、特に要求変更プリキャッシュ ベクタ ポイントが HTTP 要求で過負荷になる可能性があります。そのため、ICAP サーバのクラスタ(ICAP サーバの負荷を分散するためのサーバ グループ)が設定可能になっています。ある特定のベクタ ポイントで、各種パラメータに基づいて ICAP クラスタ サーバ間で要求の負荷を分散できます。たとえば、重み付けされた負荷、クライアントとサーバの IP アドレス ベースのハッシュ、ラウンド ロビン形式などを選択できます。

1 つ以上の ICAP サービスをベクタ ポイントに関連付けることができます。1 つのベクタ ポイントに設定されている 1 つの ICAP サービスでは、サーバの数に関係なく、1 つの負荷分散方式しか設定できません。ただし、1 つまたはすべてのベクタ ポイントに設定されている複数の ICAP サービスでは、さまざまな負荷分散方式を設定できます。


ヒント ICAP Services for Content Engine ウィンドウの Aggregate Settings オプション ボタンをクリックすると、Content Engine が属しているデバイス グループ用に設定済みの ICAP サービスを修正したり、削除することはできません。すなわち、デバイス グループ用に作成された ICAP サービスを表示することしかできません。


スタンドアロン Content Engine 用の ICAP サービスを設定するには、 icap service グローバル コンフィギュレーション コマンドを使用します。

icap service service-id { enable | error-handling [ bypass | return-error] | load-balancing [ client-ip-hash | round-robin | server-ip-hash | weighted-load] | server url [ max-connections connection-number [ weight percentage ] | weight percentage [ max-connections connection-number ]] | vector-point [ reqmod-postcache | reqmod-precache | respmod_precache ] order order-number }

特定の ICAP サービスを設定するには、 icap service service-id コマンドを使用して、ICAP コンフィギュレーション モードに入ります。

service-id には、現在の ICAP サービス用に選択する名前を指定します。 icap service コマンドを入力して、ICAP サービスの名前を指定すると、システムは次のような ICAP サービス設定プロンプトを表示します。

ContentEngine(config-icap-service)#
 

ICAP サービス コンフィギュレーション モード内では、入力するすべてのコマンドが現在の ICAP サービスに適用されます。

表12-2 は、スタンドアロン Content Engine に ICAP サービスを設定するための icap service コマンド パラメータを説明します。

 

表12-2 icap service コマンドのパラメータ

パラメータ
説明

service-id

現在の ICAP サービス用に選択する名前を指定します。

enable

ICAP サービスを使用可能にします。

error-handling

ICAP サービス使用時のエラー処理オプションを指定します。

bypass

サービスでエラーが発生すると、サービスをバイパスします。

return-error

エラー メッセージをクライアントに返して、要求を終了します。

load-balancing

サービスの負荷分散 オプションを指定します。負荷分散 オプションの詳細については、 表12-3 を参照してください。

client-ip-hash

クライアント IP アドレスを使用した ICAP サーバへの負荷分散が可能です。

round-robin

ICAP サーバへのラウンド ロビン負荷分散が可能です。

server-ip-hash

ICAP サーバの IP アドレスを使用した負荷分散が可能です。

weighted-load

サーバ単位に重み付けを指定する、重み付け方式による負荷分散が可能です。

表12-3 は、 icap service 負荷分散 オプションを説明します。

 

表12-3 icap service 負荷分散 オプション

負荷分散のタイプ
説明

クライアント IP ハッシュ

クライアント IP アドレスに基づいたハッシュ ベースのアルゴリズムを使用して、クラスタ内で ICAP サーバの負荷を分散します。

ラウンドロビン

ICAP サーバが交代で HTTP 要求および FTP-over-HTTP 要求を処理する、ラウンドロビン方式を使用します。

サーバ IP ハッシュ

サーバ IP アドレスに基づいたハッシュ ベースのアルゴリズムを使用して、クラスタ内で ICAP サーバの負荷を分散します。

重み付け

負荷容量が異なる複数の ICAP サーバからなるファームを使用します。

スタンドアロン Content Engine での ICAP サーバの設定

ICAP サーバは、さまざまなベクタ ポイントで設定された ICAP サービスに基づいて、クライアントからの HTTP 要求を処理します。ICAP サーバは、HTTP 要求および FTP-over-HTTP 要求の処理中に設定済みのベクタ ポイントで、要求または応答の変更やフィルタリングなどのコンテンツ アダプテーションを実行します。

接続の最大数や、サーバ クラスタ内で 1 台の ICAP サーバが処理できる重みを設定できます。weight(重み)パラメータは、ICAP サーバにリダイレクトできる負荷の比率を表します。40 の重みを持つ ICAP サーバは、このサーバが 40% の負荷を処理します。負荷分散されたクラスタにあるすべての ICAP サーバの重みの合計が 100 を超えると、各 ICAP サーバに対する負荷の比率が weight パラメータによって表される比率測定値として再計算されます。

スタンドアロン Content Engine に設定済みの ICAP サービス用の ICAP サーバを設定するには、 icap service server グローバル コンフィギュレーション コマンドを使用します。

表12-4 は、スタンドアロン Content Engine に ICAP サーバを設定するための icap service server コマンド パラメータを説明します。

 

表12-4 icap service server コマンドのパラメータ

パラメータ
説明

server

ICAP サービス用に使用する ICAP サーバを URL を使用して有効にします。

url

icap:// ICAPserverIPaddress / servicename という形式に基づいた URL。

keepalive-interval

(任意)キープアライブ間隔を指定します(このオプションは ACNS 5.2 ソフトウェアに追加されています)。

keepalive-interval

キープアライブ間隔(秒数)。デフォルトは 60 秒です。有効な値は 1 ~ 3600 秒です。

max-connections

(任意)特定の ICAP サーバとの最大接続数を指定します。

connection-number

最大接続数(最大値は 5000 です)。

weight

(任意)重み付けによる負荷分散方式を使用している場合に、負荷分散の重みの比率を設定します。

percentage

ICAP サーバにリダイレクトできる負荷の比率(0 ~ 100)。 weighted-load の負荷分散方式を選択している場合は、このパラメータは定義しないでください。

vector-point

指定の ICAP サービスに使用するベクタ ポイントまたはコンテンツ処理モードを指定します。

reqmod-postcache

ICAP サーバから送信され、Content Engine にキャッシングされた要求の変更を可能します。

reqmod-precache

要求がオリジン サーバに向かう途中で Content Engine から ICAP サーバに有効を送信するときに、それらの要求の変更を可能にします。

respmod-precache

要求がオリジン サーバから返されたあとに、要求の変更を可能にします。

order

使用するコンテンツ処理モードの順序を指定します。

order-number

コンテンツ処理モードが Content Engine への要求を処理する順序。

ICAP 交換のロギングの設定

icap logging グローバル コンフィギュレーション コマンドを使用して、ICAP サーバとスタンドアロン Content Engine 間の ICAP 交換のためのトランザクション ロギングを設定し、有効にします。

icap logging { enable | format [ custom word | standard ]}

トランザクション ログの形式(カスタムまたは標準)を指定します。

ICAP の標準のロギング形式でトランザクション ログを作成したい場合は、 standard を選択します。

標準の形式にはない追加のフィールドを記録する場合は、 custom を選択します。


) カスタマイズ形式のトランザクション ロギングは、ACNS 5.1、ACNS 5.2.x、または ACNS 5.3.x ソフトウェアではサポートされていません。Content Engine に設定されている ICAP サービスでは、標準のトランザクション ログ形式のみが使用可能です。


ICAP 設定に関する情報の表示

スタンドアロン Content Engine の現在の ICAP 設定情報を表示するには、show icap EXEC コマンドを使用します。このコマンドの出力には、有効な ICAP 機能のステータス、サービス定義、ベクタ ポイントのリスト、ICAP サービスの順序リストが示されます。

Content Engine に設定されている特定の ICAP サービスの定義とステータスを表示するには、show icap service service-name EXEC コマンドを使用します。

設定済みの ICAP サービスとそれらのステータスの順序リストを表示するには、 show icap vector-point vector-point-name EXEC コマンドを使用します。

ContentEngine# show icap vector-point ?
reqmod-postcache Display reqmod-postcache information
reqmod-precache Display reqmod-precache information
respmod-precache Display rspmod-precache information

ICAP サービスの統計情報の表示

設定済みのすべての ICAP サービスに関する ICAP 統計情報を表示するには、show statistics icap EXEC コマンドを入力します。このコマンドには引数やキーワードを指定しません。デフォルトの機能や値もありません。