この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
この章では、Cisco Anomaly Guard Module(Guard モジュール)上でゾーンを作成し、管理する方法について説明します。これらの手順は、ゾーン保護をイネーブルにするために必要です。
• 概要
• ゾーンの作成
• ゾーン ポリシーのしきい値の調整とゾーン保護のイネーブル化の同時実行
• Guard モジュールのゾーン設定と Detector モジュールの同期
• ゾーンの保護
ゾーンは、Guard で DDoS 攻撃からの保護の対象となるネットワーク要素です。ゾーンは、ネットワーク サーバ、クライアント、ルータ、ネットワーク リンク、サブネット、ネットワーク全体、個々のインターネット ユーザ、企業、インターネット サービス プロバイダー(ISP)、またはこれらを組み合せたものを包含できます。Guard は、ゾーンのネットワーク アドレスの範囲が重なっていなければ、複数のゾーンを同時に保護できます。
ゾーンには、名前を割り当て、この名前を使用してゾーンを参照します。
• ゾーンの作成:ゾーンを作成し、ゾーン名、説明、およびネットワーク IP アドレスなど、ゾーンのアトリビュートを設定します。詳細については、「ゾーンの作成」を参照してください。
• ゾーン フィルタの設定:さまざまなゾーン フィルタを設定します。ゾーン フィルタは、ゾーン トラフィックを必要な保護レベルに誘導し、Guard モジュールが特定のトラフィック フローを処理する方法を定義します。詳細については、 第7章「ゾーンのフィルタの設定」 を参照してください。
• ゾーンのトラフィック特性のラーニング:Guard モジュールが特定のトラフィック フローを分析し、トラフィック フローがポリシーのしきい値を超過した場合にアクションを実行することを可能にする、ゾーンの保護ポリシーを作成します。ポリシーは、ポリシー構築およびしきい値調整という 2 つのフェーズで構成されるラーニング プロセスの中で構築されます。詳細については、「ゾーン トラフィックの特性のラーニング」を参照してください。
ゾーンを作成し、ゾーンのアトリビュートを設定します。ゾーンのアトリビュートは、ゾーン名、ゾーンの説明、ゾーンのネットワーク アドレス、ゾーンの動作定義、およびネットワーク定義で構成されています。
新しいゾーンを作成するときには、既存のゾーンをテンプレートとして使用するか、またはシステム定義のゾーン テンプレートからゾーンを作成することができます。ゾーン テンプレートには、ゾーンの初期ポリシーおよびフィルタ設定が定義されています。
新しいゾーンには、オンデマンド保護用に調整されたデフォルト ポリシーが割り当てられます。ただし、すぐにゾーンを保護する必要がない場合は、Guard モジュールでゾーンのトラフィック特性をラーニングすることをお勧めします。詳細については、「オンデマンド保護のイネーブル化」を参照してください。または、ゾーンの設定とゾーン ポリシーを Detector モジュールからコピーすることもできます。
• 新しいゾーンの作成 :システム定義のゾーン テンプレートから新しいゾーンを作成します。この方式は、デフォルトのポリシーおよびフィルタを使用して新しいゾーンを作成する場合に使用します。
新しいゾーンを作成したら、ゾーンの特性を設定する必要があります。
• ゾーンの複製 :既存のゾーンからゾーンを作成します。この方式は、新しいゾーンに既存のゾーンと同様のトラフィック パターンを割り当てる場合に使用します。
• Detector モジュールからのゾーン設定のコピー:この方式は、ゾーン設定と Detector モジュールの同期をイネーブルにする場合に使用します。「Guard モジュールのゾーン設定と Detector モジュールの同期」を参照してください。
このアクションは、Cisco Traffic Anomaly Detector Module だけで開始できます。詳細については、『 Cisco Trafiic Anomaly Detector Module Configuration Guide 』を参照してください。
ゾーン設定の設定値を変更する方法については、「ゾーンのアトリビュートの設定」を参照してください。
システム定義のゾーン テンプレートから新しいゾーンを作成するには、次のコマンドのいずれかを入力します。
• zone new-zone-name [template-name] [ interactive ]:Guard モジュールは新しいゾーンを作成します。 template-name 引数を挿入しない場合、新しいゾーンは GUARD_DEFAULT ゾーン テンプレートから作成されます。
• zone zone-name [template-name] [ interactive ]:Guard モジュールは、既存のゾーンを削除し、同じ名前で新しいゾーンを作成します。
システム定義のゾーン テンプレートを使用する場合、Guard モジュールはゾーンのアトリビュートすべてにデフォルト設定を適用します。これらのデフォルト ポリシーの設定は、オンデマンド保護用に調整されます。
コマンドが正常に実行されると、Guard モジュールは新しいゾーンの設定モードに入ります。
ゾーン テンプレートを指定しないで既存のゾーンの名前を入力すると、Guard モジュールは指定されたゾーンの設定モードに入ります。
表 6-1 に、 zone コマンドの引数とキーワードを示します。
|
|
---|---|
新しいゾーンの名前。名前は、1 ~ 63 文字の英数字の文字列です。この文字列は英字で始まる必要があり、アンダースコアを含むことができますが、スペースを含むことはできません。 |
|
(オプション)ゾーンの設定を定義するゾーン テンプレート。デフォルトでは、GUARD_DEFAULT ゾーン テンプレートを使用してゾーンが作成されます。 詳細については、 表 6-2 を参照してください。 |
|
Guard モジュールがゾーン保護をインタラクティブに実行するように設定します。ポリシーが作成する動的フィルタは、推奨事項として表示されます。各動的フィルタをアクティブにするかどうかを決定する必要があります。詳細については、 第9章「インタラクティブ保護モード」 を参照してください。 |
表 6-2 に、ゾーン テンプレートを示します。
user@GUARD-conf#
zone scannet interactive
user@GUARD-conf-zone-scannet#
ゾーンを削除するには、 no zone コマンドを使用します。ゾーンを削除するときは、ゾーン名の末尾に、ワイルドカード文字としてアスタリスク(*)を使用できます。ワイルドカードを使用すると、同じプレフィクスを持つ複数のゾーンを 1 つのコマンドで削除できます。
ゾーン テンプレートを表示するには、グローバル モードまたは設定モードで show templates コマンドを使用します。ゾーン テンプレートのデフォルト ポリシーを表示するには、グローバル モードまたは設定モードで show templates template-name policies コマンドを使用します。
既存のゾーンに基づいて、新しいゾーンを作成することができます。既存のゾーンを新しいゾーンのテンプレートとして使用すると、既存のゾーンのプロパティすべてが、新しく定義したゾーンにコピーされます。スナップショットを指定すると、ゾーン ポリシーはスナップショットからコピーされます。
• zone new-zone-name copy-from-this [ snapshot-id ]:このコマンドは、現在のゾーンの設定を使用して新しいゾーンを作成するときに、 ゾーン設定モードで使用します。
• zone new-zone-name copy-from zone-name [ snapshot-id ]:このコマンドは、特定のゾーンの設定を使用して 新しいゾーンを作成するときに、設定モードで使用します。
表 6-3 で、 zone コマンドの引数について説明します。
|
|
---|---|
新しいゾーンの名前。名前は、1 ~ 63 文字の英数字の文字列です。この文字列は英字で始まる必要があり、アンダースコアを含むことができますが、スペースを含むことはできません。 |
|
既存のスナップショットの ID。詳細については、「スナップショットの表示」を参照してください。 |
次の例は、現在のゾーンに関連して新しいゾーンを作成する方法を示しています。
コマンドが正常に実行されると、Guard モジュールは新しいゾーンの設定モードに入ります。
新しいゾーンのポリシーには、未調整のマークが付けられます。ラーニング プロセスのしきい値調整フェーズを実行して、ポリシーのしきい値をゾーンのトラフィックに合せて調整する方法をお勧めします。新しいゾーンのトラフィック特性が、元になるゾーンのトラフィック特性と同じか、よく似ていれば、ポリシーのしきい値に調整済みのマークを付けることができます。詳細については、「ポリシーへの調整済みのマーク付け」を参照してください。
新しいゾーンのアクティベーション インターフェイスは、ソース ゾーンの設定に関係なく zone-name-only に設定されます。詳細については、「アクティベーション方式の設定」を参照してください。
ゾーンのアトリビュートを設定するには、次の手順を実行します。
ステップ 1 ゾーン設定モードに入ります。すでにゾーン設定モードになっている場合、このステップは省略してください。
ゾーン設定モードに入るには、次のコマンドのいずれかを入力します。
• zone zone-name: 設定モードまたはゾーン設定モードから
zone-name 引数には、既存のゾーンの名前を指定します。
ステップ 2 ゾーンの IP アドレスを定義します。Guard モジュールがゾーン トラフィックをラーニングし、ゾーンを保護することを可能にするには、IP アドレスを定義する必要があります。
ゾーンの IP アドレスを設定するには、次のコマンドを入力します。
表 6-4 に、 ip address コマンドの引数を示します。
ゾーン保護をアクティブにするには、IP アドレスを少なくとも 1 つ定義する必要があります。ゾーンの IP アドレスおよびサブセットはいつでも追加できます。
ゾーンの IP アドレスまたはサブセットを変更する場合は、次のタスクのいずれかを実行します。
• 新しい IP アドレスまたはサブネットが新しいサービスで構成され、そのサービスがゾーンのネットワークで定義されたことがない場合は、ゾーン保護をアクティブにする前にポリシー構築フェーズをアクティブにするか、サービスを手動で追加します。詳細については、「ポリシーの構築」および「サービスの追加」を参照してください。
• ゾーンが保護およびラーニング状態にある場合は、 no learning-params threshold-tuned コマンドを使用して、ゾーン ポリシーに未調整のマークを付けます。ゾーンに対する攻撃がある場合は、ゾーン ポリシーのステータスを未調整に変更しないでください。これは、ステータスを変更すると Guard モジュールで攻撃が検出されなくなり、Guard モジュールが悪意のあるトラフィックのしきい値をラーニングするためです。詳細については、「ポリシーへの調整済みのマーク付け」を参照してください。
• ゾーンが保護およびラーニングの動作状態になく、保護およびラーニングの動作状態をアクティブにする予定がない場合は、しきい値調整フェーズをアクティブにしてから、ゾーン保護をアクティブにします。「しきい値の調整」を参照してください。
ステップ 3 (オプション)ゾーンで処理可能と考えられるトラフィックのレートに応じて、Guard モジュールがゾーンに再び注入するトラフィックの帯域幅を制限します。
帯域幅の値は、ゾーンへの送信で測定された最大の帯域幅に設定することをお勧めします。この値が不明な場合は、デフォルトの帯域幅の値(無制限)のままにします。
表 6-5 に、 rate limit コマンドの引数を示します。
ステップ 4 (オプション)識別の目的で、ゾーンの説明を追加します。次のコマンドを入力します。
ゾーンの説明を変更するには、ゾーンの説明を再入力します。前の説明は新しい説明で上書きされます。
ステップ 5 新しく設定されたゾーンの設定を表示します。ゾーン設定モードで
show running-config コマンドを使用します。
設定情報は、Guard モジュールを現在の設定値で設定するために実行される CLI コマンドで構成されています。詳細については、特定のコマンド エントリを参照してください。
次の例は、新しいゾーンを作成し、ゾーンのアトリビュートを設定する方法を示しています。
user@GUARD-conf-zone-scannet# ip address 192.168.100.34 255.255.255.252
user@GUARD-conf-zone-scannet# rate-limit 1000 2300 pps
user@GUARD-conf-zone-scannet# description Demonstration zone
この項では、Guard モジュールのラーニング プロセスを使用してゾーンのトラフィック特性を分析し、Guard がゾーン保護に使用するポリシーを作成および微調整する方法について説明します。
• ゾーンのラーニング プロセスの結果と Cisco Traffic Anomaly Detector Module の同期
• ポリシーの構築
• しきい値の調整
ラーニング プロセスでは、Guard が通常のゾーン トラフィックの特性をラーニングします。Guard モジュールはラーニング プロセスの結果を使用して、ゾーン保護のポリシーを作成します。これらのポリシーは、ゾーンのトラフィック フローの処理方法を Guard に指示します。
ポリシーを構築する最初のラーニング プロセスが終了したら、ラーニング プロセスとゾーン保護を同時にアクティブにできます。同時に、Guard モジュールはポリシーのしきい値を調整し、トラフィックの異常に関するポリシーのしきい値を監視します。このプロセスでは、Guard モジュールはゾーンを保護し、同時にゾーンのトラフィック特性に応じてポリシーのしきい値を常に更新することができます。また、Guard モジュールでは悪意のあるトラフィックのしきい値がラーニングされなくなります。
ゾーンのトラフィック特性をラーニングするには、ゾーンのトラフィックを Guard に宛先変更する必要があります。外部デバイスを使用して、ラーニング プロセスを開始する前に宛先変更を設定するか、ゾーンのトラフィックを Guard に手動で宛先変更する必要があります。Guard のルーティング設定を使用して、ゾーンの宛先変更を設定してください。
詳細については、 第5章「トラフィックの宛先変更の設定」 を参照してください。
ラーニング プロセスは、次の 2 つのフェーズで構成されます。
1. ポリシー構築:Guard はポリシー テンプレートを使用してゾーン ポリシーを作成します。トラフィックが透過的に Guard を通過し、Guard はゾーンによって使用される主なサービスを検出できます。既存のポリシーが新しいポリシーで上書きされます。
ポリシー テンプレートは、Guard のポリシー構築用ツールです。このテンプレートは、Guard が作成するゾーン ポリシーのタイプを定義します。また、ポリシー テンプレートは、Guard が厳密に監視するサービスの最大数と、Guard による新しいポリシーの作成をトリガーする最小しきい値も定義します。ゾーン ポリシーを構築するための指針となる規則を変更するには、ポリシー テンプレート パラメータを変更してから、ポリシー構築フェーズを開始します。詳細については、 第8章「ポリシー テンプレートとポリシーの設定」 を参照してください。
2. しきい値の調整:Guard はゾーンのサービスのトラフィック レートに合せてポリシーを調整します。トラフィックが透過的に Guard を通過し、Guard はゾーン ポリシーの構築中に検出されたサービスのしきい値を調整できます。既存のしきい値が新しいしきい値で上書きされます。
しきい値調整フェーズとゾーン保護を同時にアクティブにすると(保護およびラーニング モード)、Guard モジュールで悪意のあるトラフィックのしきい値がラーニングされなくなります。Guard が常にポリシーを調整するように設定し、Guard がポリシーのしきい値を更新するときの間隔を定義することができます。
(注) 保護およびラーニング モードにおいて Guard モジュールをアクティブにすると、ゾーン トラフィックは常に Guard モジュールに宛先変更されます。
Guard は、ゾーンのトラフィックの特性をラーニングして、ゾーンのトラフィックを比較する基準とし、悪意の攻撃となる可能性のあるあらゆる異常をトレースします。Guard は、ラーニング プロセス中は、現在のゾーン ポリシーを変更しません。Guard がポリシーを更新するのは、ラーニング フェーズのいずれかの段階における結果を受け入れるように指定した場合のみです。
ポリシーが作成された後は、ポリシーを追加または削除できます。また、しきい値、サービス、タイムアウト、アクションなどのポリシー パラメータを変更することもできます。
snapshot threshold-selection cur-thresholds コマンドを使用すると、現在のゾーン ポリシーをいつでもバックアップできます。詳細については、「スナップショットの作成」を参照してください。
(注) ラーニング プロセスでは、Guard がパケットをドロップするのは、パケットにある送信元 IP アドレス、プロトコル番号、UDP 送信元または宛先ポート、および TCP 送信元または宛先ポートの各フィールドのいずれかがゼロの場合だけです。
ラーニング プロセスが完了する前にゾーンに対する攻撃があった場合、次の条件のいずれかに該当するときは、オンデマンド保護を使用してゾーンを保護します。
• Guard モジュールが保護およびラーニング モードになっているが、ゾーンのトラフィック特性をラーニングしていない。
• ゾーンのトラフィックを表さないと考えられるポリシーのしきい値を受け入れている。
詳細については、「オンデマンド保護のイネーブル化」を参照してください。
複数のゾーンに対して同時に ラーニング 関連のコマンドを発行できます。これには、グローバル モードで、ワイルドカードにアスタリスク(*)を使用してコマンドを発行します。たとえば、すべてのゾーンについてポリシー構築フェーズを開始する場合は、グローバル モードで learning policy-construction * コマンド を入力します。scan で始まる名前を持つ Guard モジュールのすべてのゾーン(scannet や scanserver など)のポリシー構築フェーズの結果を受け入れるには、グローバル モードで no learning scan * accept コマンドを入力します。
Cisco Traffic Anomaly Detector Module(Detector モジュール)が常にゾーン トラフィックをラーニングし、Guard のゾーン ポリシーを更新するように設定できます。
Detector モジュールはゾーンに対する攻撃を検出すると、ラーニング プロセスを停止し、Guard モジュールによるゾーン保護をアクティブにします。攻撃が終了すると、ゾーン トラフィックのラーニングを再開します。このプロセスでは、ゾーン ポリシーのしきい値を継続的に調整する一方で、ゾーン トラフィックを常に Guard モジュールに宛先変更することを回避できます。
ラーニング プロセスの結果を Detector モジュールに同期させるには、次のタスクを実行する必要があります。
1. Guard モジュールを Detector モジュールのリモート Guard SSL リストのいずれかに追加します。
2. Detector モジュールと SSL 通信チャネルを確立します(「SSL 通信チャネルの設定」を参照)。
3. GUARD ゾーン テンプレートを使用して、Detector モジュール上にゾーンを作成します。
ゾーン設定を Detector モジュールに同期させることや、ゾーン設定を Detector モジュールに自動的に同期させるように Detector モジュールを設定することが可能です。詳細については、「Guard モジュールのゾーン設定と Detector モジュールの同期」を参照してください。
このオプションは、Detector モジュールだけで設定できます。詳細については、『Cisco Trafiic Anomaly Detector Module Configuration Guide』を参照してください。
ポリシー構築フェーズでは、Guard はポリシー テンプレートを使用してゾーン ポリシーを作成します。トラフィックが透過的に Guard を通過し、Guard はゾーンによって使用される主なサービス(ポートとプロトコル)を検出できます。ポリシー構築の指針となる規則を設定することもできます。たとえば、Guard で特定のタイプのポリシーが作成されないようにするには、関連するポリシー テンプレートをディセーブルにします。ゾーン ポリシーを構築するための規則を変更するには、ポリシー テンプレート パラメータを変更してから、ポリシー構築フェーズを開始します。詳細については、「ポリシー テンプレートについて」を参照してください。
Guard は、ポリシー パラメータ(タイムアウト、アクション、およびしきい値)のデフォルト値を設定します。動作パラメータのデフォルト値の設定方法については、 第8章「ポリシー テンプレートとポリシーの設定」 を参照してください。
このフェーズで Guard が作成する新しいポリシーは、既存のポリシーを上書きします。
(注) 帯域幅限定リンク ゾーン テンプレート(GUARD_LINK_128K、GUARD_LINK_1M、GUARD_LINK_4M、および GUARD_LINK_512K)に基づくゾーンに対しては、ポリシー構築を実行できません。
ステップ 1 ポリシー構築フェーズを開始します。ゾーン設定モードで次のコマンドを入力します。
ヒント Guard モジュールがゾーンのトラフィックの宛先変更を実行していることを確認してください。ポリシー構築またはしきい値調整を開始してから少なくとも 10 秒待ってから、show rates details コマンドを発行します。Received traffic レートの値がゼロより大きいことを確認します。値がゼロの場合は、宛先変更に問題があることを示しています。
ステップ 2 (オプション)Guard モジュールが構築しているポリシーを表示します。ポリシー構築フェーズの任意の段階でラーニング パラメータ(サービス、しきい値、およびポリシー関連のその他のデータ)のスナップショットを保存しておいて、後で確認することができます。単一のスナップショットを保存するか、定期的なスナップショットを(指定した間隔で)保存することができます。詳細については、「スナップショットを使用したラーニング プロセスの結果の確認」を参照してください。
ステップ 3 (オプション)ポリシー構築フェーズを長期間実行する場合、 ポリシー構築フェーズを停止しなくても、 Guard によって提案されたポリシーを受け入れることができます。ポリシーを 1 回受け入れるか、提案されたポリシーを Guard が指定された間隔で自動的に受け入れるように定義できます。このようにすると、ゾーンが最新のポリシーを持つと同時に、継続してゾーンのトラフィックをラーニングすることを保証できます。
Guard によって提案されたポリシーを受け入れ、ポリシー構築フェーズを継続するには、次のコマンドを入力します。
Guard によって提案されたポリシーを指定した間隔で自動的に受け入れるには 、次のコマンドを入力します。
詳細については、「ラーニング パラメータの設定」を参照してください。
定期的なアクションを終了するには、 no learning-params periodic-action コマンドを使用します。
ステップ 4 十分に時間をおいてからポリシー構築フェーズを終了し、新しく構築されたポリシーの取り扱いを決定します。
ポリシー構築フェーズを終了する前に、少なくとも 2 時間はこのフェーズを続けることを推奨します。
• 提案されたポリシーの受け入れ: Guard によって提案されたポリシーを受け入れるには、 ゾーン設定モードで次のコマンドを入力します。
Guard は、以前にラーニングしたポリシーとしきい値を消去します。
新しく構築されたポリシーを受け入れた後は、手動でポリシーを追加または削除できます。詳細については、 第8章「ポリシー テンプレートとポリシーの設定」 を参照してください。
• 提案されたポリシーの拒否 :Guard によって提案されたポリシーを拒否するには 、ゾーン設定モードで次のコマンドを入力します。
Guard はプロセスを停止し、ラーニングした新しいポリシーを保存しません。ゾーンのポリシーは、ラーニング プロセスを開始する前のままになるか、ポリシー構築フェーズの結果を最後に受け入れる前のままになります。
次の例は、ポリシー構築フェーズを開始し、提案されたポリシーを 12 時間 間隔で受け入れる方法を示しています。例では、次に、ポリシー構築フェーズを停止し、提案されたポリシーを受け入れます。
user@GUARD-conf-zone-scannet#
learning policy-construction
user@GUARD-conf-zone-scannet#
learning-params periodic-action auto-accept
0 12 0
しきい値調整フェーズでは、Guard がゾーンのトラフィックを分析し、ポリシー構築フェーズで構築されたポリシーのしきい値を定義します。
ゾーンのトラフィックをラーニングし、同時にトラフィックの異常に関するポリシーの、最後に受け入れられたしきい値を監視するように、Guard モジュールを設定できます。Guard モジュールはゾーンに対する攻撃を検出すると、しきい値調整フェーズを停止しますが、ゾーン保護は継続します。この結果、Guard モジュールでは悪意のあるトラフィックのしきい値がラーニングされなくなります。
攻撃が終了すると、Guard モジュールはラーニング プロセスを再開します。攻撃が終了してからラーニング プロセスを再度アクティブにするまで、Guard モジュールは、protection-end-timer で定義された期間(最大で 10 分)待機します。詳細については、「保護の無活動タイムアウトの設定」を参照してください。
(注) しきい値調整フェーズは、トラフィックのピーク時(最も忙しい日)に、少なくとも 24 時間実行することを推奨します。
保護およびラーニング モードを開始すること、つまり、しきい値調整フェーズをアクティブにすると同時に Guard がゾーンを保護するように設定することをお勧めします。ゾーン設定モードで次のコマンドを入力します。
または、 learning threshold-tuning コマンドと protect コマンドを順番に発行します(順序は問いません)。
ヒント Guard モジュールがゾーンのトラフィックの宛先変更を実行していることを確認してください。ポリシー構築またはしきい値調整を開始してから少なくとも 10 秒待ってから、show rates details コマンドを発行します。Received traffic レートの値がゼロより大きいことを確認します。値がゼロの場合は、宛先変更に問題があることを示しています。
Guard モジュールはゾーンに対する攻撃を検出すると、しきい値調整フェーズを停止しますが、ゾーン保護は継続します。
(注) ゾーンへのトラフィックが穏やかなときに保護およびラーニング モードを開始すると、Guard モジュールは、ピーク時のトラフィックを攻撃と見なす場合があります。このような場合は、次のいずれかを行うことができます。
• ポリシーのしきい値の状態を未調整に設定する。ゾーン設定モードで learning-params threshold-tuned コマンドを使用します。詳細については、「ポリシーへの調整済みのマーク付け」を参照してください。
• ゾーン保護を非アクティブにし、継続してポリシーのしきい値をラーニングする。ゾーン設定モードで no protect コマンドを使用します。
ゾーン保護としきい値調整フェーズを同時に非アクティブにするには、ゾーン設定モードで deactivate コマンドを使用します。
しきい値調整フェーズだけをアクティブにするには、 learning threshold-tuning コマンドを使用します。
ステップ 2 (オプション)Guard モジュールが調整しているポリシーを表示します。しきい値調整フェーズの任意の段階で、ラーニング パラメータ(サービス、しきい値、およびポリシー関連のその他のデータ)のスナップショットを保存できます。後でスナップショットを確認することや、ラーニング パラメータを別のスナップショットと比較することができます。単一のスナップショットを保存するか、定期的なスナップショットを(指定した間隔で)保存することができます。詳細については、「スナップショットを使用したラーニング プロセスの結果の確認」を参照してください。
ステップ 3 Guard によって提案されたポリシーを受け入れ、 しきい値調整 フェーズを継続することができます。ポリシーを 1 回受け入れるか、提案されたポリシーを Guard が指定された間隔で自動的に受け入れるように定義できます。このようにすると、ゾーンが最新のポリシーを持つと同時に、継続してゾーンのトラフィックをラーニングすることを保証できます。
Guard によって提案されたポリシーを受け入れ、 しきい値調整 フェーズを継続するには、次のコマンドを入力します。
[
threshold-selection {new-thresholds | max-thresholds | weighted weight}]
threshold-selection の引数とキーワードについては、 表 6-7 を参照してください。
Guard によって提案されたポリシーを指定した間隔で自動的に受け入れるには 、次のコマンドを入力します。
詳細については、「ラーニング パラメータの設定」を参照してください。
定期的なアクションを終了するには、 no learning-params periodic-action コマンドを使用します。
ステップ 4 十分な時間が経過してから、しきい値調整フェーズを終了し、新しく調整されたポリシーの処理方法を決定します。
ただし、Guard モジュールが常にゾーン トラフィックを宛先変更している場合は、ゾーンを保護およびラーニング モードのままにし、しきい値調整フェーズを終了しないことをお勧めします。
• 提案されたポリシーの受け入れ: Guard によって提案されたポリシーのしきい値を受け入れるには、 ゾーン設定モードで次のコマンドを入力します。
[
threshold-selection {new-thresholds | max-thresholds | weighted weight}]
threshold-selection の引数とキーワードについては、 表 6-7 を参照してください。
新しく調整されたポリシーを受け入れた後は、手動でポリシーのパラメータを変更することができます。詳細については、 第8章「ポリシー テンプレートとポリシーの設定」 を参照してください。
• 提案されたポリシーの拒否 :Guard によって提案されたポリシーのしきい値を拒否するには 、ゾーン設定モードで次のコマンドを入力します。
この場合、Guard はしきい値調整フェーズを停止し、しきい値調整フェーズを開始する前のしきい値の状態に戻ります。その結果、新しく構築されたポリシーには、以前のトラフィック特性に基づいて取得したしきい値が使用される場合があります。
次の例は、しきい値調整フェーズを開始し、提案されたポリシーを 1 時間 間隔で受け入れる方法を示しています。例では、次に、しきい値調整フェーズを停止し、しきい値が現在の値よりも大きい場合に、提案されたポリシーを受け入れます( max-thresholds 方式)。
user@GUARD-conf-zone-scannet#
learning threshold-tuning
user@GUARD-conf-zone-scannet#
learning-params periodic-action auto-accept
0 1 0
user@GUARD-conf-zone-scannet#
no learning accept threshold-selection max-thresholds
ラーニングの結果を表示するには、 show policies statistics コマンドを使用します。
詳細については、「ポリシーの表示」を参照してください。
ラーニングしたしきい値を確認した後は、結果の一部を変更できます。この変更がその後のしきい値調整フェーズで上書きされないようにするには、次のアクションのいずれかを実行します。
• ポリシーのしきい値を固定値として設定する:Guard は新しいしきい値を無視し、現在のしきい値を保持します。詳細については、「固定値としてのしきい値の設定」を参照してください。
• ポリシーの固定乗数を設定する:新しいポリシーのしきい値を計算する場合は、ラーニングしたしきい値に指定の乗数を掛け、その結果にしきい値選択方式を適用します。詳細については、「しきい値の乗数の設定」を参照してください。
ラーニング パラメータを使用すると、Guard モジュールが実行できるラーニング関連のアクションと、Guard モジュールが指定のポリシーを処理する方法を設定できます。次のパラメータを定義できます。
• periodic-action :ポリシーのスナップショットを保存し、ポリシーを自動的に受け入れるように Guard モジュールを設定できます。または、ポリシーのスナップショットを指定された間隔だけで保存するように Guard モジュールを設定できます。「定期的なアクションの設定」を参照してください。
• threshold-tuned :ゾーンのポリシーに調整済みのマークを付けます。ゾーンのポリシーに調整済みのマークが付いていない場合、Guard モジュールはゾーンに対する攻撃を検出しません。「ポリシーへの調整済みのマーク付け」を参照してください。
• threshold-selection :しきい値調整フェーズの結果を受け入れた場合に、新しいポリシーのしきい値を生成するために Guard モジュールが使用するデフォルトの方式を設定します。「しきい値選択方式の設定」を参照してください。
• fixed-threshold :ポリシーのしきい値を固定値として設定します。Guard モジュールは、以後のしきい値調整フェーズにおいてポリシーのしきい値を変更しません。「固定値としてのしきい値の設定」を参照してください。
• threshold-multiplier :ポリシーのしきい値の固定乗数を設定します。Guard モジュールは、以後のしきい値調整フェーズでは、現在のポリシーのしきい値、ラーニングされたしきい値、および固定乗数に基づいて、ポリシーのしきい値を計算します。「しきい値の乗数の設定」を参照してください。
ラーニング パラメータの設定を表示するには、ゾーン設定モードで
show learning-params コマンドを使用します。
ポリシーのスナップショットを保存し、ポリシーを自動的に受け入れるように Guard モジュールを設定できます。または、ポリシーのスナップショットを指定された間隔だけで保存するように Guard モジュールを設定できます。スナップショットの詳細については、「ポリシーの監視」を参照してください。
定期的なアクションを設定するには、次のコマンドを入力します。
learning-params periodic-action {auto-accept | snapshot-only} learn_params_days learn_params_hours learn_params_minutes
表 6-6 で、 learning-params コマンドの引数とキーワードについて説明します。
|
|
---|---|
Guard によって提案されたポリシーを 、指定された間隔で受け入れます。Guard は新しく提案されたゾーン ポリシーを受け入れた後で、ゾーン ポリシーのスナップショットを保存します。 |
|
指定された間隔でポリシーのスナップショットを保存します。Guard は新しいポリシーを受け入れず、ポリシーのしきい値を変更しません。 |
|
間隔の値は、 learn_params_days 、 learn_params_hours 、および learn_params_minutes の合計となります。
次の例は、ポリシーを 1 時間 間隔で受け入れるように Guard モジュールを設定する方法を示しています。
user@GUARD-conf-zone-scannet#
learning-params periodic-action auto-accept
0 1 0
しきい値調整フェーズで新しいポリシーのしきい値が受け入れられた場合に、新しいしきい値を生成するために Guard モジュールが使用するデフォルトの方式を設定できます。しきい値調整フェーズの結果を手動で受け入れること、またはしきい値調整フェーズの結果を指定された間隔で自動的に受け入れるように Guard モジュールを設定することが可能です。
learning-params threshold-selection {new-thresholds | max-thresholds | weighted weight}
表 6-7 で、 learning-params threshold-selection コマンドの引数とキーワードについて説明します。
|
|
---|---|
Guard モジュールは、ポリシーの現在のしきい値とラーニング済みのしきい値とを比較し、2 つのうちで大きな方の値をゾーン設定に保存します。 |
|
次の例は、ラーニングされたしきい値が現在のポリシーのしきい値よりも大きい場合に、提案されたポリシーを受け入れるように Guard モジュールを設定する方法を示しています。
user@GUARD-conf-zone-scannet#
learning-params threshold-selection max-thresholds
Guard モジュールは、ポリシーのしきい値のステータス(ポリシーのしきい値が調整済みかどうかということ)にマークを付けます。保護およびラーニング モードのときは、このステータスに関連付けられます。ポリシーのしきい値のステータスは、ポリシーのしきい値超過が発生したときに Guard モジュールがゾーンに対する攻撃を識別するかどうかを示します。
新しいゾーンが作成された場合、またはゾーンのポリシー構築フェーズの結果が受け入れられた場合、Guard モジュールはゾーン ポリシーのしきい値に未調整のマークを付けます。ゾーン テンプレートのデフォルトのしきい値は、Guard モジュールがゾーンのトラフィックに異常を発見した場合にスプーフィング防止メカニズムをすぐにアクティブにするように調整されています。そのため、Guard モジュールが保護およびラーニング モードの場合は、ラーニング プロセスが停止することがあります。このような状況を避けるため、Guard モジュールは、保護およびラーニング モードでゾーン ポリシーが調整済みでない場合は(ゾーン ポリシーのしきい値が一度受け入れられるまでは)、ゾーン トラフィックの攻撃を検出しません。
ゾーン ポリシーが未調整の場合、Guard モジュールは accept-new のしきい値選択方式だけをアクティブにします(「しきい値選択方式の設定」を参照)。Guard モジュールは、以前のしきい値を無視して、新しいしきい値を受け入れます。これは、そのゾーンに関するラーニング プロセスのしきい値調整フェーズの結果を受け入れるときに、accept-new 以外のしきい値選択方式を使用すると、ポリシーのしきい値の集合が不適切になる場合があるためです。
次の場合、Guard モジュールは、ゾーン ポリシーに未調整のマークを付けます。
• ゾーン ポリシーに対してサービスの削除または新しいサービスの追加を行った場合
しきい値調整フェーズの結果を受け入れると、Guard モジュールは、ゾーン ポリシーに調整済みのマークを付けます。
ユーザは、ゾーン ポリシーの設定を変更できます。ゾーン ポリシーに調整済みのマークを付けるには、ゾーン設定モードで次のコマンドを入力します。
learning-params threshold-tuned
ゾーン ポリシーに未調整のマークを付けるには、このコマンドの no 形を使用します。
次のどちらかの場合は、ゾーン ポリシーのステータスを調整済みに変更してもかまいません。
• 新しいゾーンが既存のゾーンまたはスナップショットから複製されており、両方のゾーンのトラフィック特性が似ている場合
次のいずれかの場合は、ゾーン ポリシーのステータスを未調整に変更してもかまいません。
• トラフィックのピーク時に保護およびラーニング モードを開始しなかった場合(Guard モジュールではピーク時のトラフィックが攻撃と見なされなくなる)
Guard モジュールは現在のポリシーのしきい値に関連付けられず、しきい値超過が発生してもゾーンに対する攻撃を検出しません。
(注) ゾーンに対する攻撃がある場合は、ゾーン ポリシーのステータスを未調整に変更しないでください。これは、ステータスを変更すると Guard モジュールで攻撃が検出されなくなり、Guard モジュールが悪意のあるトラフィックのしきい値をラーニングするためです。
次の例は、ゾーン ポリシーのステータスに調整済みのマークを付ける方法を示しています。
user@GUARD-conf-zone-scannet# learning-params threshold-tuned
ポリシーを構築する最初のラーニング プロセスが終了したら、ラーニング プロセスをアクティブにし、同時にゾーン保護をイネーブルにすることができます。Guard モジュールはポリシーのしきい値を調整し、同時にトラフィックの異常に関するポリシーのしきい値を監視します。この状態では、Guard モジュールはゾーンを保護し、同時にゾーンのトラフィック特性に応じてポリシーのしきい値を常に更新することができます。また、Guard モジュールでは悪意のあるトラフィックのしきい値がラーニングされなくなります。
新しいゾーンを作成した場合や、ゾーン ポリシーに対してサービスの追加または削除を行った場合、またはゾーンのポリシー構築フェーズの結果を受け入れた場合、Guard モジュールはゾーン ポリシーのしきい値に未調整のマークを付けます。ラーニング プロセスのしきい値調整フェーズの結果を受け入れた場合にのみ、Guard モジュールは、ゾーン ポリシーに調整済みのマークを付けます。
ラーニング プロセスとゾーン保護を同時にイネーブルにした場合、ゾーン ポリシーが調整済みでないときは、Guard モジュールは次のように動作します。
• Guard モジュールは、ゾーン トラフィックの攻撃を検出しません(ゾーン ポリシーのしきい値が一度受け入れられるまで)。
• Guard モジュールは、accept-new のしきい値選択方式だけをアクティブにします(「しきい値選択方式の設定」を参照)。
Guard モジュールはゾーンに対する攻撃を識別すると、ラーニング プロセスを停止しますが、ゾーン保護は継続します。攻撃が終了すると、Guard モジュールは保護およびラーニング動作状態に戻ります。
ラーニング プロセスとゾーン保護を同時にアクティブにするには、 保護 learning コマンドを使用するか、 learning threshold-tuning コマンドと 保護 コマンドを順番に入力します(順序は問いません)。
ゾーンの設定とポリシーを Detector モジュール上のゾーンに同期させることができます。Detector モジュールは、完全なゾーン設定をコピーします。したがって、ゾーンを一度設定すれば、Guard モジュールと Detector モジュールの両方で同じ設定とポリシーを保持できます。
Detector モジュールと Guard モジュールの間の通信には、Secure Socket Layer(SSL)プロトコルが必要です。SSL には認証と暗号化が用意されています。ゾーンを同期させる前に、SSL 通信接続チャネルを設定する必要があります。詳細については、「Cisco Traffic Anomaly Detector Module との通信のイネーブル化」を参照してください。
ゾーン ポリシーを最新の状態に保つためにゾーンのトラフィック特性を常にラーニングする一方で、ゾーン トラフィックを常に Guard モジュールに宛先変更することを回避するように、Detector モジュールを設定できます。
同期用のゾーンを作成し、Detector モジュールからゾーンを同期させる必要があります。詳細については、『 Cisco Trafiic Anomaly Detector Module Configuration Guide』 を参照してください。
Guard モジュールと Detector モジュールの間でゾーンを同期させる場合は、次のガイドラインを使用します。
• Guard モジュールと Detector モジュールの間でゾーンを同期させるには、Guard モジュールと Detector モジュールの両方に適したゾーン テンプレート(GUARD ゾーン テンプレート)を使用して、Detector モジュール上に新しいゾーンを作成する必要があります。
• ゾーン ポリシーが正しく同期されることを保証するには、Guard モジュール(トラフィックを宛先変更している場合)と Detector モジュールの両方に同じタイプのトラフィックが流れることを確認する必要があります。それ以外の場合は、ゾーンのグローバル ポリシーが高すぎるか、または低すぎるため、スプーフィングを利用した DDoS 攻撃から適切に保護されることを保証できません。
• Detector モジュールを集中設定ポイントとして使用します。Detector モジュールにゾーンを設定し、Detector モジュールの設定のバックアップを保持します。Detector モジュールから Guard モジュールにゾーン設定をコピーします。
• デバイスを物理的に変更した場合や、Detector モジュールと Guard モジュールが通信に使用するインターフェイスの IP アドレスを変更した場合は、Detector モジュールと Guard モジュールが安全な通信のために使用する SSL 証明書を再生成する必要があります。
• Guard モジュール上のゾーン設定を確認します。アクティベーション範囲が ip-address-only で、アクティベーション方式が zone-name-only 以外の場合は、 protection-end-timer コマンドを使用して、ゾーンに対する攻撃が終了したことを識別するときに Guard モジュールが使用するタイマーを設定することをお勧めします。 protection-end-timer の値が forever の場合、Guard モジュールは、ゾーンに対する攻撃が終了したことを識別せず、特定の IP アドレスを保護するために作成したサブゾーンを削除しません。
次の設定プロセスの例は、同期を使用して、現在のトラフィック特性に応じてゾーンが保護されることを保証する方法を示しています。
1. GUARD ゾーン テンプレートのいずれかを使用して、Detector モジュール上に新しいゾーンを作成および設定します。
Guard モジュールでは、そのようなゾーンを識別するために、ゾーン設定モードでの show コマンド出力にあるゾーン ID フィールドの横に (Guard/Detector) が表示されます。
2. Guard モジュールを、Detector モジュール上にあるゾーンの SSL リモート Guard リストまたはデフォルトの SSL リモート Guard リストに追加します。
3. ゾーン ポリシーを構築するように Detector モジュールを設定します。 learning policy-construction コマンドを使用します。
4. トラフィックの異常を検出しながら、ゾーン トラフィックをラーニングし、ポリシーのしきい値を調整するように Detector モジュールを設定します。 detect learning コマンドを使用します。
5. ラーニングするポリシーのしきい値を 24 時間ごとに受け入れるように Detector モジュールを設定します。これにより、ゾーンのポリシーが、変化するトラフィック パターンで更新されることが保証されます。
6. ラーニングした新しいポリシーのしきい値を受け入れるたびに、ゾーン設定を Guard モジュールに同期させるように Detector モジュールを設定します。これにより、Detector モジュールがゾーン ポリシーをラーニングした場合に Guard モジュール上のゾーン ポリシーが更新されることが保証されます。
7. Guard モジュールによるゾーン保護をアクティブにする前に、ゾーン設定を Guard モジュール上の設定に同期させるように Detector モジュールを設定します。これにより、Guard モジュールがゾーンを保護する時点で Guard モジュール上のゾーンの設定とポリシーが最新の状態になっていることが保証されます。
8. Detector モジュールは、ゾーンに対する攻撃を検出すると、次のアクションを実行します。
–Guard モジュール上のゾーン設定が最新の状態になっていることを確認する。Guard モジュール上のゾーン設定が Detector モジュール上のゾーン設定と異なる場合、Detector モジュールはゾーン設定を同期させます。
–Guard モジュールによるゾーン保護をアクティブにする(Guard モジュールがゾーン保護をアクティブにします)。
–ゾーンのラーニング プロセスを停止し、ゾーン トラフィックの異常の検出を継続する。この結果、Detector モジュールでは悪意のあるトラフィックのしきい値がラーニングされなくなります。
攻撃が進行中でも、Guard 上でゾーンのポリシーを変更できます。
Detector モジュールは常に Guard モジュールをポーリングします。攻撃が終了すると、Guard モジュールはゾーン保護を非アクティブにします。Detector モジュールは、Guard がゾーン保護を非アクティブにしたことを識別すると、ほかにトラフィック異常がないことを確認してから、検出およびラーニング動作状態を再度アクティブにします。
9. ゾーン ポリシーを攻撃の特性に合せて調整するように Guard モジュール上のゾーン ポリシーを手動で変更した場合は、新しいポリシーを Detector モジュールに再び同期させることができます。このことは、ゾーン トラフィックによって、特定のポリシーのしきい値を固定値として設定することや、ポリシーのしきい値の固定乗数を設定することが必要になった場合に重要になります。このようにすると、Detector モジュールが以後のしきい値調整フェーズでポリシーのしきい値に正しく関連し、Guard モジュールのポリシーが正しいしきい値で更新されることが保証されます。
詳細については、「固定値としてのしきい値の設定」および「しきい値の乗数の設定」を参照してください。
このアクションは、Detector モジュールだけで実行できます。詳細については、『 Cisco Trafiic Anomaly Detector Module Configuration Guide』 を参照してください。
Guard モジュールと Detector モジュールの間に安全な通信チャネルを確立できなくても、ゾーン設定を同期させることができます。次のいずれかの場合は、ゾーン設定をオフラインで同期させることが必要になる場合があります。
• Guard モジュールが Detector モジュールへのアクセス権を持っていない場合
• Detector モジュールが Guard モジュールへのアクセス権を持っていない場合
• Detector モジュールが Network Address Translation(NAT; ネットワーク アドレス変換)デバイスを介して Guard モジュールと通信する場合
ゾーン設定をオフラインで同期させるには、Detector モジュールから FTP またはセキュア FTP(SFTP)サーバにゾーン設定をエクスポートしてから、ゾーン設定を Guard モジュールに手動でインポートする必要があります。
Guard モジュールと Detector モジュールの間に安全な通信チャネルがないため、Detector モジュールがゾーン トラフィックの異常を検出するときは、Guard モジュールによるゾーン保護を手動でアクティブにする必要があります。
詳細については、「ゾーンの保護」を参照してください。
Guard モジュールでのゾーン設定の同期をイネーブルにするには、GUARD ゾーン テンプレートのいずれかを使用して Detector モジュール上にゾーンを作成する必要があります。
ゾーンの設定をオフラインで同期させるには、次の手順を実行します。
ステップ 1 ゾーン設定をソース デバイスからエクスポートします。
copy zone zone-name running-config ftp コマンドを使用します。「設定のエクスポート」を参照してください。
ステップ 2 ゾーンの設定を FTP または SFTP サーバからターゲット デバイスにインポートします。 copy ftp running-config コマンドまたは copy sftp running-config コマンドを使用します。
ゾーン設定をインポートする前に、ゾーンを非アクティブにすることをお勧めします。詳細については、「設定のインポートとアップデート」を参照してください。
ゾーン保護をアクティブにする前に、Guard モジュールでゾーンのトラフィック パターンをラーニングすることをお勧めします。ラーニング プロセスにより、Guard モジュールで各ゾーンのトラフィック パターンをラーニングし、ゾーン トラフィックの統計分析に従って推奨のしきい値のセットを作成することができます。または、Cisco Traffic Anomaly Detector Module(Detector モジュール)から、ポリシーを含むゾーン設定を同期させることもできます。ゾーンの IP アドレス範囲が重なっていなければ、複数のゾーンを同時に保護できます。
ラーニング プロセスを開始する前に宛先変更を設定するか、ゾーンのトラフィックを Guard に手動で宛先変更する必要があります。Guard のルーティング設定を使用して、ゾーンの宛先変更を設定してください。
詳細については、 第5章「トラフィックの宛先変更の設定」 を参照してください。
ゾーンが攻撃を受けてなければ、保護およびラーニング モードにおいて Guard モジュールをアクティブにすることができます。Guard モジュールは、常にゾーン トラフィックを宛先変更し、ポリシーのしきい値を調整します。詳細については、「ゾーン トラフィックの特性のラーニング」を参照してください。
• 動作モード :Guard モジュールがゾーンを自動的に保護する手段をとるか、インタラクティブに保護する手段をとるかを定義します。
• アクティベーション方式 :ゾーンをアクティブにするときに、ゾーン名、ゾーンのアドレス範囲、または受信トラフィックのいずれに従うかを定義します。外部デバイス(Detector モジュールなど)によってゾーン保護をアクティブにする場合は、アクティベーション方式を設定する必要があります。
• アクティベーション範囲 :ゾーン保護を、ゾーンのアドレス範囲全体についてアクティブにするか、ゾーン内の特定の IP アドレスに限定してアクティブにするかを定義します。アクティベーション範囲は、外部デバイスによってゾーン保護がアクティブにされたゾーンだけに適用されます。
• 保護の終了のタイムアウト :Guard モジュールがゾーン保護を終了するまでのタイムアウトを定義します。
外部(Cisco Traffic Anomaly Detector Module やその他の手段)から攻撃の兆候が示されてから Guard モジュールを設定してゾーンを保護することも、ゾーンの設定後すぐにゾーンを保護するように Guard モジュールに指示することもできます。Guard モジュールがゾーンを保護する場合、Guard モジュールはゾーンのトラフィックを自分自身に宛先変更し、その保護ポリシーを適用します。
Guard モジュールでゾーンのトラフィック特性をラーニングし終わる前にゾーンが攻撃中になった場合は、オンデマンド保護を使用してゾーンを保護します。新しいゾーンに対する Guard のデフォルトのしきい値を使用すると、効果的なオンデマンド保護を実行できます。詳細については、「オンデマンド保護のイネーブル化」を参照してください。
(注) 受信トラフィックに応じてゾーン保護をアクティブにするように Guard モジュールを設定する場合は、ゾーン トラフィックを Guard モジュールに手動で宛先変更する必要があります。
• ゾーン全体の保護。ゾーン設定モードで次のコマンドを入力します。
learning キーワードは、ゾーンを保護し、ポリシーのしきい値を調整するように Guard モジュールを設定します。詳細については、「しきい値の調整」を参照してください。
• ゾーンのアドレス範囲の一部である、IP が特定されたゾーンの保護。この場合、Guard モジュールは新しいゾーンを作成します。新しいゾーンの名前は、元になるゾーンの最初の 30 文字と、アンダースコアで連結された特定の IP アドレスで構成されます。同じ名前のゾーンがすでに存在する場合、Guard モジュールは同じ名前の別のゾーンを作成せず、既存のゾーンに対するゾーン保護をアクティブにします。
IP が特定されたゾーンについてゾーン保護をアクティブにするには、グローバル モードで次のコマンドを入力します。
protect zone-name ip-address-general
zone-name 引数には、特定のゾーンの名前を指定し、 ip-address-general 引数には、ゾーンのアドレス範囲内の特定の IP アドレスを指定します。IP アドレスをドット区切り 10 進表記で入力します。たとえば、192.168.5.6 です。
このゾーンを削除するには、 zone コマンドの no 形を使用します。
• 特定の IP アドレスの保護。グローバル モードで次のコマンドを入力します。
protect ip-address-general [subnet-mask]
ip-address-general 引数には、ゾーンのアドレス範囲内にある特定の IP アドレスを指定します。IP アドレスをドット区切り 10 進表記で入力します。たとえば、192.168.5.6 です。Guard モジュールは、IP アドレス アクティベーション方式に従って、ゾーン保護をアクティブにします。詳細については、 「アクティベーション範囲の設定」 を参照してください。
複数のゾーンに対して同時に 保護 関連のコマンドを発行できます。これには、グローバル モードで、ワイルドカードにアスタリスク(*)を使用してコマンドを発行します。たとえば、すべてのゾーンについてゾーン保護を停止する場合は、グローバル モードで no protect * コマンドを入力します。名前が scan で始まるゾーン(scannet や scanserver など)すべてについてゾーン保護を停止する場合は、グローバル モードで no protect scan * コマンドを入力します。
ヒント Guard モジュールがゾーンのトラフィックを受信していることを確認してください。ゾーン保護をアクティブにしてから少なくとも 10 秒待って、show rates コマンドを発行します。レートのうち少なくとも 1 つの値がゼロより大きいことを確認します。すべてのレートの値がゼロの場合は、宛先変更に問題があることを示しています。
ゾーンに対する攻撃がなく、別のソースを利用してゾーン トラフィックの異常を検出する場合は、ゾーン保護を非アクティブにし、トラフィックの Guard モジュールへの宛先変更を終了してもかまいません。
ゾーン保護を非アクティブにするには、ゾーン設定モードで次のコマンドのいずれかを入力します。
• no protect: ゾーン保護を終了します。ゾーンが保護およびラーニング モードの場合、Guard モジュールは継続的にポリシーのしきい値をラーニングします。
Guard の保護は、次の 2 つの動作モードにおいてアクティブにできます。
• 自動保護モード:動的フィルタはユーザの操作なしでアクティブになります。これはデフォルトの動作モードです。
• インタラクティブ保護モード:動的フィルタは、インタラクティブ モードにおいて手動でアクティブになります。動的フィルタは推奨事項としてグループ化され、ユーザの決定を待ちます。ユーザは、これらの推奨事項を確認して、どの推奨事項を受け入れるか、無視するか、自動アクティベーションに切り替えるかを決定できます。
詳細については、 第9章「インタラクティブ保護モード」 を参照してください。
アクティベーション方式は、外部からの攻撃の兆候を受信した場合に、ゾーン保護をアクティブにするゾーンを Guard モジュールが識別する方法を定義します。この兆候には、外部デバイス(Cisco Traffic Anomaly Detector Module など)からのコマンドや、ゾーンを宛先とするトラフィック(パケット)があります。
Guard モジュールは、次のアクティベーション方式をサポートします。
• ゾーン名 :Guard モジュールは、ゾーン名に基づいてゾーン保護をアクティブにします。ゾーン保護をアクティブにする外部からの兆候には、ゾーン名が含まれている必要があります。これはデフォルトのアクティベーション方式です。
• IP アドレス :Guard は、宛先変更されたトラフィックから抽出する情報に基づいて、ゾーン保護をアクティブにします。Guard モジュールは、ゾーンの一部である IP アドレスまたはサブネットで構成された外部からの攻撃の兆候を受信した場合に、ゾーン保護をアクティブにします。Guard モジュールはゾーンのデータベースをスキャンし、受信 IP アドレスまたはサブネットを含むアドレス範囲を持つゾーンをアクティブにします。受信 IP アドレスを含むアドレス範囲を持つ複数のゾーンが設定されている場合、Guard モジュールは、プレフィックスが最も長く一致するゾーンをアクティブにします。つまり、受信した IP アドレスが含まれていて、アドレス範囲が最も詳細に特定されるゾーンです。受信した IP アドレスまたはサブネットは、ゾーンの IP アドレス範囲に全体が含まれている必要があります。
• パケット(トラフィック) :Guard モジュールは、ゾーンを宛先とするトラフィックを受信した場合に、ゾーン保護をアクティブにします。Guard モジュールはゾーンのデータベースをスキャンし、受信パケットの IP アドレスを含むアドレス範囲を持つゾーンをアクティブにします。受信パケットの IP アドレスを含むアドレス範囲を持つ複数のゾーンが設定されている場合、Guard モジュールは、プレフィックスが最も長く一致するゾーンをアクティブにします。つまり、受信パケット IP アドレスを含むアドレス範囲が最も限定的なゾーンがアクティブになります。受信した IP アドレスまたはサブネットは、ゾーンの IP アドレス範囲に全体が含まれている必要があります。
Guard モジュールは、単一の IP アドレスへの受信トラフィックのレートがアクティベーションの詳細度よりも高い場合にのみ、ゾーン保護をアクティブにします。アクティベーションの詳細度はグローバルに定義され、すべてのゾーンに適用されます。
ゾーン保護をアクティブにするのに必要な最小パケット レートを変更するには、設定モードで次のコマンドを入力します。
protect-packet activation-sensitivity min-rate
min-rate 引数には、Guard モジュールがゾーンに対するゾーン保護をアクティブにする原因となる、単一のゾーン宛先 IP アドレスを宛先とするパケットの最小レートを定義します。デフォルトは 0 pps です。
(注) アクティベーション範囲がパケットの場合や、Guard モジュールがゾーン トラフィックを監視できない場合は、外部デバイスを使用して、ゾーン トラフィックを Guard モジュールに手動で宛先変更する必要があります。
• IP アドレスまたはパケット :Guard モジュールは、ゾーンを宛先とするトラフィック(パケット)を受信した場合、またはゾーンのアドレス範囲の一部である IP アドレスまたはサブネットで構成される外部からの攻撃の兆候を受信した場合に、ゾーン保護をアクティブにします。詳細については、上記の箇条書きの IP アドレス と パケット(トラフィック) の項を参照してください。
アクティベーション方式が zone-name-only 以外の場合、Guard モジュールは、ゾーンのアクティベーション範囲に応じて、ゾーン全体または指定された IP アドレス範囲をアクティブにします(「アクティベーション範囲の設定」を参照)。
アクティベーション方式を設定するには、ゾーン設定モードで次のコマンドを入力します。
activation-interface {packet | ip-address | packet-or-ip-address | zone-name-only}
デフォルトは zone-name-only です。ゾーンを複製すると(「ゾーンの複製」を参照)、ソース ゾーンの設定に関係なく、アクティベーション インターフェイスはデフォルトに設定されます。
(注) アクティベーション範囲が ip-address-only で(「アクティベーション範囲の設定」を参照)、アクティベーション方式が zone-name-only 以外の場合は、protection-end-timer コマンドを使用して、ゾーンに対する攻撃が終了したことを識別するときに Guard モジュールが使用するタイマーを設定することをお勧めします(「保護の無活動タイムアウトの設定」を参照)。
protection-end-timer の値が forever の場合、Guard モジュールは、ゾーンに対する攻撃が終了したことを識別せず、特定の IP アドレスを保護するために作成したサブゾーンを削除しません。
受信 IP アドレスまたはパケットが他のどのゾーンにも含まれない場合に Guard モジュールが保護するデフォルト ゾーンを作成できます。そのようなゾーンを定義できるのは、ネットワークが同種であるために、同じゾーン テンプレートを使用できる場合のみです。そのゾーンに対してラーニング プロセスを実行することはできません。IP アドレスが 0.0.0.0 で、サブネットが 0.0.0.0 のゾーンを作成します。アクティベーション範囲は、ip-address として定義します(「アクティベーション範囲の設定」を参照)。
アクティベーション範囲は、Guard モジュールが外部からの攻撃の兆候を受信した場合に、ゾーン全体またはゾーンの一部に対してゾーン保護をアクティブにするかどうかを定義します。この兆候には、外部デバイス(Cisco Traffic Anomaly Detector Module など)からのコマンドや、ゾーンを宛先とするトラフィック(パケット)があります。
Guard モジュールは、次のアクティベーション範囲をサポートします。
• ゾーン全体 :ゾーン全体についてゾーン保護をアクティブにします。Guard モジュールは、ゾーンを宛先とするトラフィックを受信した場合、またはゾーンの一部である IP アドレスまたはサブネットで構成される外部からの攻撃の兆候を受信した場合に、ゾーン保護をアクティブにします。
• IP アドレスのみ :指定した IP アドレスまたはサブネットに限定してゾーン保護をアクティブにします。Guard モジュールは、ゾーンを宛先とするトラフィックを受信した場合、またはゾーンの一部である IP アドレスまたはサブネットで構成される外部からの攻撃の兆候を受信した場合、新しいゾーン(サブゾーン)を作成します。これはデフォルトのアクティベーション範囲です。詳細については、「サブゾーンについて」を参照してください。
アクティベーション範囲を設定するには、ゾーン設定モードで次のコマンドを入力します。
ゾーンの一部(ソース ゾーンのすべての IP アドレス範囲を含まないゾーン)に対してゾーン保護をアクティブにした場合、Guard モジュールはサブゾーンを作成します。サブゾーンの IP アドレス範囲は、ソース ゾーンのアドレス範囲に含まれます。
サブゾーンの設定は、IP アドレスと名前を除いて、ソース ゾーンの設定と同じです。サブゾーンの名前は、ソース ゾーン名の最初の 30 文字と、アンダースコアで連結された IP アドレスおよびサブネットで構成されます。サブゾーンが単一の IP アドレスで構成される場合、サブネットは追加されません。たとえば、ソース ゾーンの名前が scannet で、アドレス範囲 10.10.10.0 とサブネット 255.255.255.0 を持つとき、Guard モジュールが IP アドレス 10.10.10.192 の内部範囲およびサブネット 255.255.255.252 に対してゾーン保護をアクティブにする場合、サブゾーンの名前は scannet_10.10.10.192_255.255.255.252 となります。
サブゾーンの IP アドレスおよびサブネットは、Guard モジュールが外部からの攻撃の兆候で受信したもの、または Guard モジュールがゾーン保護をアクティブにする原因となったパケットの IP アドレスです。
サブゾーンに対するゾーン保護が終了すると、Guard モジュールはサブゾーンを消去しますが、サブゾーンのログと攻撃レポートは消去しません。サブゾーンのゾーン保護を終了する方法は、通常のゾーンのゾーン保護を終了する方法と同じで、アクティベーション方式と保護の終了のタイムアウトに従います。
Guard モジュールがサブゾーンを消去した後で、サブゾーンのログとレポートを表示するには、次のコマンドを使用します。
• show log sub-zone-name: 詳細については、「Guard モジュールの設定の表示」を参照してください。
• show reports sub-zone-name [ report-id | current ] [ details ]:詳細については、「攻撃レポートの表示」を参照してください。
Guard モジュールでは、ゾーンに対する攻撃が終了したことを識別した場合、保護およびラーニング モードをアクティブまたは非アクティブにすることができます。Guard モジュールがゾーンを保護している場合、ゾーンに対する攻撃が終了すると、Guard モジュールはゾーン保護を終了します。Guard モジュールが保護およびラーニング モードの場合、Guard モジュールは、攻撃が検出されるとラーニング プロセスを非アクティブにし、ゾーンに対する攻撃が終了するとラーニング プロセスを再開します。
Guard モジュールは、ゾーンに対する攻撃が終了したかどうかを、無活動タイムアウトに従って確認します。このタイムアウトは、数秒から無限まで定義できます。
無活動タイムアウトを定義するには、次のコマンドを入力します。
protection-end-timer {time-seconds | forever}
表 6-8 に、 protection-end-timer コマンドの引数とキーワードを示します。
|
|
---|---|
|
|
|
デフォルトは forever です。デフォルト値を変更しない場合は、ゾーン保護を手動で非アクティブにする必要があります。
Guard モジュールは、動的フィルタの無活動とドロップされたトラフィックに基づいて、無活動を測定します。事前に定義された期間に、動的フィルタが使用されず、次の条件が両方とも当てはまる場合、Guard モジュールはゾーンに対する攻撃が終了したものと見なします。
–新しい動的フィルタが追加されない:動的フィルタを削除する時期を Guard が決定する方法については、「動的フィルタの非アクティブ化」を参照してください。
–ドロップされているゾーン トラフィックのレートが定義済みのしきい値よりも低い:Guard モジュールは、保護メカニズム(動的フィルタ、フレックスコンテンツ フィルタ、およびレート リミット モジュール)によって攻撃の一部と識別されたゾーン パケットをドロップします。ドロップされるパケットは、ゾーンの Dropped カウンタを使用してカウントされます(詳細については、「ゾーンのカウンタの表示」を参照)。デフォルトのしきい値は 1 pps です。ドロップ カウンタのしきい値を変更するには、ゾーン設定モードで次のコマンドを入力します。
attack-detection zone-malicious-rate threshold
threshold 引数には、ドロップされるゾーン パケットの最小レートを定義します。レートがこのしきい値より低くなった場合、Guard モジュールがゾーン保護を終了することがあります。
ゾーンのアクティベーション方式が パケット の場合、Guard モジュールは、ゾーンを非アクティブにする前に、受信トラフィックに基づいて無活動を確認します。Guard モジュールが保護を非アクティブにするのは、前の条件が当てはまり、ゾーンへのパケットが受信されなかった場合のみです。
ゾーンが攻撃にさらされている場合など、緊急を要する場合には、ラーニング プロセスを実行せずにゾーンを保護することができます。システム定義のゾーン テンプレートには、ラーニング プロセスが完了していないゾーンの保護に適した定義済みの保護ポリシーとユーザ フィルタが含まれています。このゾーン テンプレートのデフォルトのしきい値は、Guard モジュールがゾーンのトラフィックに異常を発見した場合にスプーフィング防止メカニズムをすぐにアクティブにするように調整されています。
Guard モジュールはゾーンのトラフィック パターンについての知識を持たないため、送信元 IP アドレスをブロック(ドロップ)するために使用されるしきい値は、比較的高い値に設定されています。つまり、オンデマンド保護では、スプーフィングを利用しない攻撃を軽減する場合にはユーザの介入が必要になります。ゾーンの正当なトラフィックと悪意のあるトラフィックのレートを監視して、Guard モジュールの軽減アクションを確認する必要があります。
次のいずれかの場合は、ゾーンに対してオンデマンド保護が必要になる場合があります。
• Guard モジュールが保護およびラーニング モードになっているが、ゾーンのトラフィック特性をラーニングしていない。
• ゾーンのトラフィックを表さないと考えられるポリシーのしきい値を受け入れている。
ステップ 1 新しいゾーンを作成します。次のコマンドを入力します。
詳細については、「新しいゾーンの作成」を参照してください。
ステップ 2 ゾーンの IP アドレスを定義します。次のコマンドを入力します。
詳細については、「ゾーンのアトリビュートの設定」を参照してください。
ステップ 3 ゾーン保護をアクティブにします。次のコマンドを入力します。
詳細については、「ゾーンの保護」を参照してください。
ステップ 4 ゾーンのトラフィック パターンを分析します。詳細については、 第13章「Guard モジュールによる軽減の分析」 を参照してください。