この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
この章では、Cisco Anomaly Guard Module(Guard モジュール)のサービスの設定方法について説明します。
この章には、Guard モジュールの関連製品である Cisco Detector(Detector)についての記述があります。Detector は、DDoS攻撃(分散型サービス拒絶攻撃)を検出するデバイスです。Detectorは、ゾーン トラフィックのコピーを分析します。Detector は、ゾーンが攻撃を受けていると判断したときに、Guard モジュールの攻撃軽減サービスをアクティブにできます。また、Detector は Guard モジュールとゾーン設定を同期させることができます。Detector の詳細については、『 Cisco Traffic Anomaly Detector Module Configuration Guide 』および『 Cisco Traffic Anomaly Detector Configuration Guide 』を参照してください。
• SSH 鍵の管理
• ホスト名の変更
Guard モジュールには、いくつかのサービス オプションがあります。そのサービス オプションをアクティブにするには、サービスをイネーブルにしてから、サービスへのアクセスを許可される IP アドレスを定義します。この項では、常にアクティブであるセキュア シェル サービス以外のサービスをアクティブにする方法について説明します。
• ノード間通信サービス:Guard モジュールは、Detector との通信チャネルを確立するときにこのサービスを使用します。詳細については、「Detector との通信の確立」を参照してください。
• Simple Network Management Protocol(SNMP; 簡易ネットワーク管理プロトコル)サーバ サービス:SNMP を使用して Guard モジュールにアクセスすることにより、次の MIB で定義された情報を取得できます。
–MIB2(RFC1213-MIB):EGP グループおよび伝送 MIB グループ以外のすべての MIB グループ。
–UCDAVIS(UCD-SNMP-MIB):memory、latable、systemStats、version、および snmperrs の MIB グループのみ。
MIB 定義の詳細については、このソフトウェア バージョンでリリースされた MIB ファイルを参照してください。
(注) Riverhead MIB には、64 ビットのカウンタが含まれています。MIB を読み取るには、SNMP バージョン 2 をサポートするブラウザを使用する必要があります。
• SNMP トラップ サービス:snmp-trap サービスをアクティブにすると、Guard モジュールは SNMP トラップを生成します。詳細については、「SNMP トラップのイネーブル化」を参照してください。
• Secure Shell(SSH; セキュア シェル)サービス:SSH サービスは常にアクティブです。詳細については、「SSH を使用した Guard モジュールへのアクセス」および「SSH 鍵の管理」を参照してください。
• Web-Based Manager(WBM)サービス:Web ブラウザを使用して Guard モジュールを監視および制御できます。詳細については、「Cisco Web-Based Manager による Guard モジュールの管理」を参照してください。
• MultiDevice Manager(MDM)サービス:Web ブラウザを使用して、MDM サーバから Guard モジュール、およびその他の Guard や Detector デバイスを監視および制御できます。詳細については、「Cisco DDoS MultiDevice Manager による Guard モジュールの管理」を参照してください。
デフォルトでは、SSH 以外、Guard モジュールのすべてのサービスはディセーブルになっています。
Guard モジュールのサービスをアクティブにするには、次の手順を実行します。
ステップ 1 設定モードで次のコマンドを入力して、Guard モジュールのサービスをイネーブルにします。
表4-1 に、 service コマンドのキーワードを示します。
|
|
---|---|
ステップ 2 次のいずれかのコマンドを入力して、Guard モジュールのサービスへのアクセスを許可します。
• MDM サービスの場合は、設定モードで次のコマンドを入力することにより、MDM から Guard モジュールのサービスへのアクセスを許可します。
ip-addr 引数には、MDM サーバの IP アドレスを指定します。IP アドレスをドット区切り 10 進表記で入力します。
• 他のすべてのサービスの場合は、設定モードで次のコマンドを入力して、Guard モジュールのサービスへのアクセスを許可し、接続をイネーブルにします。
表4-2 に、 permit コマンドの引数とキーワードを示します。
次の例は、WBM サービスをイネーブルにする方法を示しています。
認証、認可、アカウンティング(AAA)とは、Guard モジュールおよび Guard モジュールのサービスへのユーザ アクセスを制御する方式のことです。AAA には次の機能があります。
• 認証:ユーザに対しシステムおよびシステム サービスへのアクセスを許可する前に、そのユーザを識別します。
• 認可:ユーザがシステムへのアクセス権を取得した後で、実行が許可される内容を決定します。このプロセスは、ユーザ認証後に発生します。
• アカウンティング:ユーザが実行中または実行済みの内容を記録します。アカウンティングにより、ユーザがアクセスしているサービスを追跡することができます。
Guard モジュールには、次のシステム ユーザ アカウントが事前設定されています。
• admin:admin ユーザ アカウントには、管理者アクセス権が設定されています。そのため、Guard モジュールの CLI とその機能にアクセスできます。Guard モジュールの CLI に初めて接続するときは、このアカウントのパスワードを設定する必要があります。新しいユーザ アカウントを設定するには admin ユーザ アカウントを使用します。
• riverhead:riverhead ユーザ アカウントには、ダイナミック(dynamic)のアクセス権が設定されています。Guard モジュールはこのユーザ アカウントを使用して、Detector との最初の通信チャネルを確立します。Guard モジュールCLI に初めて接続すると、このアカウントに対するパスワードを設定するように要求されます。
Guard モジュールのユーザ コミュニティをドメインに分割し、パスワードを割り当てて管理アクセスの安全性を高めることができます。初期設定が完了した後は、ユーザのアクションを監視できるように新しいアカウントを作成し、システム ユーザ アカウントは使用しないことをお勧めします。
• 認証の設定
• 認可の設定
ユーザが Guard モジュールにログインしようとしたとき、または( enable コマンドを使用して)上位の特権レベルを要求したときに、Guard モジュールで使用する認証方式を設定することができます。Guard モジュールは、次の認証オプションを提供します。
• ローカル認証:ローカルに設定されたログイン パスワードおよびイネーブル パスワードを使用する認証。この認証方式がデフォルトです。詳細については、「ローカル認証の設定」を参照してください。
• Terminal Access Controller Access Control System Plus(TACACS+)認証:1 つ以上の TACACS+ サーバを使用するリモート ユーザ認証。
(注) TACACS+ サーバ上で認証するユーザを定義するときは、そのユーザに対する認可も定義する必要があります。これを定義しないと、ユーザは show コマンドにしかアクセスできなくなります(「ローカル認可の設定」を参照)。
Guard モジュールは、ユーザ認証方式の一方または両方を使用するように設定できます。TACACS+ 認証を使用する場合は、複数の TACACS+ サーバを定義できます。複数の認証方式を定義すると、通信エラーによって最初の認証方式が失敗した場合にバックアップが提供されます。
Guard モジュールは、ユーザが Guard モジュールで定義した方式を、そのときの順序に従って使用することにより、ユーザを認証します。定義済みの認証方式のリストを表示するには、 show running config コマンドを入力します。Guard モジュールは、リストの最初の方式を使用してユーザの認証を試みます。最初の認証方式が応答しない場合、続いて Guard モジュールはリストにある次の認証方式を選択し、以後応答する方式が見つかるまでこの動作を続けます。
tacacs-server first-hit コマンドを使用して、Guard モジュールが最初の TACACS+ サーバからの応答を受信する際に実行するアクションを設定できます。first-hit オプション(デフォルト設定)がディセーブルの場合に最初のサーバが認証を拒否すると、Guard モジュールは続けて他の TACACS+ サーバをスキャンして、認証を受け入れるサーバを検出します。定義されている TACACS+ サーバがいずれも認証を受け入れなかった場合、または Guard モジュールがどのサーバとも通信できなかった場合は、ユーザ認証は失敗します。first-hit オプションをイネーブルにすると、Guard モジュールは応答する最初の TACACS+ サーバの認証応答(拒否または承認)を最終決定として受け入れます。デフォルトでは、first-hit オプションはディセーブルになっています。 tacacs-server first-hit コマンドの詳細については、「TACACS+ 検索方式の設定」を参照してください。
(注) Guard モジュールは、Guard モジュールが TACACS+ サーバと通信できない場合にユーザ認証でそのローカル データベースをフォールバックとして使用するように設定できます(「認証方式の設定」の項を参照)。
• 認証方式の設定
Guard モジュールで使用する認証方式を設定するには、次の手順を実行します。
ステップ 1 TACACS+ 認証が必要な場合は、TACACS+ サーバ接続を設定します。詳細については、「TACACS+ サーバ アトリビュートの設定」を参照してください。
ステップ 2 設定モードで次のコマンドを入力し、認証方式を定義します。
表4-3 に、 aaa authentication コマンドのキーワードを示します。
|
|
---|---|
次の例は、上位の特権レベルに入る際に認証を行うように設定する方法を示しています。最初の認証方式は TACACS+ に設定され、2 番目の認証方式はローカル ユーザ データベースに設定されています。
Guard モジュールには、管理者特権を持つ事前設定されたユーザ名(ユーザ定義と呼ばれる)があり、このユーザ名を使用して新しいユーザを作成できます。ユーザ定義を使用すると、Guard モジュールのユーザ コミュニティをドメインに分割し、安全な管理アクセスのためにパスワードを割り当てることができます。
TACACS+ サーバを使用した CLI ユーザの認証をイネーブルにするには、「認証の設定」を参照してください。
• ユーザの追加
Guard モジュールのローカル データベースにユーザを追加するには、設定モードで次のコマンドを使用します。
username username {admin | config | dynamic | show} [ password ]
表4-4 に、 username コマンドの引数とキーワードを示します。
次の例は、新しいユーザを設定し、パスワードを設定する方法を示しています。
ユーザはパスワードをクリア テキストで入力しますが、Guard モジュールの設定ファイルでは、パスワードが暗号化された形式で表示されます。次の例は、Guard モジュールの設定ファイル(running-config)を表示します。
上の例の encrypted キーワードは、パスワードが暗号化されていることを示しています。
Guard モジュール上に設定されているユーザのリストを表示するには、 show running-config コマンドまたは show guard コマンドを使用します。
ユーザは、自分自身のパスワードを変更することができます。管理者は、自分自身のパスワードと、他のユーザのパスワードを変更できます(「他のユーザのパスワードの変更」を参照)。
ステップ 1 グローバル モードで次のコマンドを入力します。
ステップ 2 現在のパスワードを入力します。新しいパスワードの入力を求めるプロンプトが表示されます。
ステップ 3 新しいパスワードを入力します。パスワードは、スペースを含まない 6 ~ 24 文字の英数字の文字列である必要があります。パスワードでは大文字と小文字が区別されます。確認のため新しいパスワードを再入力するよう求めるプロンプトが表示されます。
他のユーザのパスワードを変更するには、管理ユーザ特権を持っている必要があります。
他のユーザのパスワードを変更するには、次の手順を実行します。
ステップ 1 グローバル モードで次のコマンドを入力します。
username-password 引数は、変更対象のパスワードの持ち主のユーザです。
パスワードは、スペースを含まない 6 ~ 24 文字の英数字の文字列である必要があります。パスワードでは大文字と小文字が区別されます。確認のため新しいパスワードを再入力するよう求めるプロンプトが表示されます。
次の例では、管理者がユーザ Jose のパスワードを変更する方法を示しています。
ローカル ユーザ データベースからユーザを削除すると、そのローカル ユーザ データベースのみを使用して認証を行っている場合、関連付けられているユーザが Guard モジュールにアクセスできなくなります。
Guard モジュールのローカル ユーザ データベースからユーザを削除するには、no username username コマンドを使用します。
次の例は、ローカル ユーザ データベースからユーザを削除する方法を示しています。
システム管理者は、ユーザが使用できるサービスを制限することができます。認可をイネーブルにすると、Guard モジュールはユーザ プロファイルを確認します。ユーザ プロファイルは、ローカル ユーザ データベース内または TACACS+ セキュリティ サーバ上にあります。ユーザは、そのユーザのプロファイル内の情報で許可されている場合にのみ、要求したサービスへのアクセスを許可されます。
ユーザがコマンドを実行しようとするときに Guard モジュールで使用する認可方式を設定することができます。Guard モジュールでは、次の認可オプションが提供されています。
• TACACS+ 認可:1 つ以上の TACACS+ サーバを使用するリモート ユーザ認可方式。
次の 2 種類の TACACS+ 認可がサポートされています。
–EXEC 認可:ユーザが Guard モジュールにログインして認証されたときに、そのユーザの特権レベルを決定します。
–コマンド認可:ユーザがコマンドを入力すると、そのコマンドの許可を取得するために、TACACS+ サーバを調べます。
TACACS+ 認可では、コマンドごとにアクセス権を指定できます。
• ローカル認可:コマンド グループのアクセス コントロールにローカルで設定されたユーザ プロファイルを使用する認可方式。認可は、指定された特権レベルのすべてのコマンドに対して定義されます。この認可方式がデフォルトです。
Guard モジュールは、TACACS+ サーバへの通信に失敗した場合、ローカル認可を使用できます。
ユーザ認証方式を定義する順次認証リストを設定できます。順次認証リストには認証に使用する方式を 1 つ以上指定でき、最初の認証方式への通信が失敗した場合は、バックアップが提供されます。
Guard モジュールは、最初にリストされた方式を使用してユーザを認可します。その方式が応答しない場合、Guard モジュールモジュールは 2 番目の認可方式を選択します。認可方式が両方とも成功しなかった場合にのみ、認可は失敗します。
• 認可方式の設定
Guard モジュールの操作にアクセスできるかどうかは、ユーザの特権レベルによって決まります。システム管理者は、ユーザが使用できる操作を制限することができます。Guard モジュールは、ユーザのプロファイルをチェックして、ユーザのアクセス権を確認します。認可されると、ユーザは、そのユーザのプロファイル内の情報で許可されている場合にのみ、要求した操作へのアクセス権を付与されます。ユーザの特権レベルについては、 表3-1 を参照してください。
管理者は、ユーザの特権レベルへのアクセスを制限するパスワードを設定できます。特権レベルおよびパスワードを指定したら、この特権レベルにアクセスする必要のあるユーザにそのパスワードを付与することができます。ユーザは、特権レベルのパスワードを知らないと、そのパスワードで保護されたレベルに移動することはできません。
ローカル パスワードを設定して特権レベルへのアクセスを制御するには、設定モードで次のコマンドを使用します。
enable password [ level level] [password]
表4-5 に、 enable password コマンドの引数とキーワードを示します。
次の例は、ユーザの特権レベル admin にパスワードを割り当てる方法を示しています。
認可されたユーザ(特権レベル パスワードを知っているユーザ)は、ユーザ特権レベル間を移動できます。
ステップ 1 グローバル モードで次のコマンドを入力します。
表4-6 に、ユーザ特権レベルを指定するオプションの level 引数の値を示します。
|
|
---|---|
監視と診断、保護、およびラーニングに関する操作にアクセスできます。dynamic 特権を持つユーザは、フレックスコンテンツ フィルタおよび動的フィルタを設定することもできます。 |
|
次の例は、ユーザの特権レベル admin に切り替える方法を示しています。
show 特権レベル( 表4-5 の説明を参照)に戻る場合は、 disable コマンドを使用します。
ステップ 1 TACACS+ 認可が必要な場合は、TACACS+ サーバ接続を設定します。詳細については、「TACACS+ サーバ アトリビュートの設定」を参照してください。
ステップ 2 設定モードで次のいずれかのコマンドを入力して、認可方式を定義します。
• aaa authorization exec tacacs+
• aaa authorization commands level tacacs+
認可方式のシーケンシャルなリストを設定できます。各方式について、 aaa authorization コマンドを入力します。認証方式を削除するには、このコマンドの no 形式を使用します。
表4-7 に、 aaa authorization コマンドの引数とキーワードを示します。
|
|
---|---|
ユーザが EXEC シェルの実行を許可されているかどうかを判別するために認可が実行されます。Guard モジュールは、TACACS+ サーバに確認して、認証されたユーザの特権レベルを判別します。 |
|
指定された特権レベルのすべてのコマンドに対して認可が実行されます。複数の特権レベルの認可を設定するには、認可が必要な特権レベルごとにこのコマンドを使用します。 |
|
• config :ユーザの定義、削除、および修正に関連する操作を除いて、すべての操作にアクセスできる。 • dynamic :監視と診断、保護、およびラーニングに関する操作にアクセスできる。dynamic 特権を持つユーザは、フレックスコンテンツ フィルタおよび動的フィルタを設定することもできます。 |
|
Guard モジュールのパフォーマンスに影響する可能性があるため、 show 特権レベルコマンドに対する認可は設定しないことをお勧めします。
(注) コンソール セッションから入力したコマンドには、TACACS+ 認可は実行されません。
次の例は、config 特権レベルを必要とするコマンドの認可を設定する方法を示しています。最初の認可方式は TACACS+ に設定され、2 番目の認可方式はローカル ユーザ データベースに設定されています。
TACACS+ サーバのデータベースで、各コマンドの認可を指定することができます。
次の例は、ユーザ Zoe に対して、TACACS+ サーバ上で認可を設定する方法を示しています。
ゾーン名を入力するときのタブ補完機能をディセーブルにして、ゾーン設定へのアクセスを認可されたユーザのみに制限できます。この設定は、ゾーン名を指定するすべてのコマンドに適用されます。
グローバル モードまたは設定モードで zone コマンド、 no zone コマンド、 show zone コマンド、および deactivate コマンドなどのコマンドを入力しても、Guard モジュールはゾーン名の表示や補完を行わなくなります。ゾーン名を完全に入力する、ゾーン操作モードを変更する、またはゾーン統計情報を表示する必要があります。
ゾーン名のタブ補完をディセーブルにすると、Guard モジュールは tab-complete zone-list コマンドを TACACS+ サーバに送信します。認可されたユーザに対してゾーン名のタブ補完をイネーブルにするには、 tab-complete zone-list コマンドに対する認可を TACACS+ サーバ上で設定します。
次の例は、すべての zone コマンドでゾーン名のタブ補完をディセーブルにする方法を示しています。
アカウンティング管理により、ユーザがアクセスしているサービスを追跡し、TACACS+ サーバにアカウンティング情報を保存することができます。課金、レポート、またはセキュリティ目的で、要求されたサービスのアカウンティングをイネーブルにできます。デフォルトでは、Guard モジュールのアカウンティング管理はディセーブルに設定されています。
ステップ 1 TACACS+ サーバ接続を設定します。詳細については、「TACACS+ サーバ アトリビュートの設定」を参照してください。
ステップ 2 設定モードで次のコマンドを入力して、アカウンティングを設定します。
表4-8 に、 aaa accounting commands コマンドのキーワードを示します。
|
|
---|---|
指定された特権レベルのアカウンティングを定義します(ユーザの特権レベルについては、 表3-1 を参照)。 |
|
複数の特権レベルにアカウンティングを設定するには、アカウンティングが必要な特権レベルごとに aaa accounting コマンドを入力します。
アカウンティング管理は、config ユーザ特権レベルに対してのみイネーブルにすることをお勧めします。アカウンティング データの追跡および保存を行うと、Guard モジュールのパフォーマンスに影響を及ぼす可能性があります。
特権レベルのアカウンティング管理を削除するには、このコマンドの no 形式を使用します。
次の例は、TACACS+ サーバ上で config 特権レベルを必要とするコマンドのアカウンティングを設定する方法を示しています。
TACACS+ サーバで認証、認可、またはアカウンティングをイネーブルにするには、TACACS+ サーバ アトリビュートを設定する必要があります。
TACACS+ サーバのアトリビュートを設定するには、次の手順を実行します。
ステップ 1 tacacs-server host ip-address port port_number コマンドを入力して、TACACS+ サーバの IP アドレスを設定します。詳細については、「TACACS+ サーバの IP アドレスの設定」を参照してください。
ステップ 2 tacacs-server key tacacs-key コマンドを入力して、Guard モジュールが TACACS+ サーバへのアクセスに使用する暗号鍵を設定します。詳細については、「TACACS+ サーバの暗号鍵の設定」を参照してください。
ステップ 3 (オプション) tacacs-server first-hit コマンドを入力して、Guard モジュールが認証に使用する検索方式を設定します。詳細については、「TACACS+ 検索方式の設定」を参照してください。
ステップ 4 (オプション) tacacs-server timeout timeout コマンドを入力して、TACACS+ サーバ接続のタイムアウトを設定します。詳細については、「TACACS+ サーバの接続タイムアウトの設定」を参照してください。
ステップ 5 show tacacs statistics コマンドを入力して、TACACS+ サーバ接続の統計情報を表示します。詳細については、「TACACS+ サーバの統計情報の表示」を参照してください。
Guard モジュールが TACACS+ サーバの一連のリストを認証、認可、およびアカウンティングに使用するように設定できます。Guard モジュールは、TACACS+ サーバ リストを使用してユーザを認証、認可、またはアカウンティング イベントを送信します。そのサーバが応答しない場合、Guard モジュールは 2 番目のサーバを選択します。リスト上のすべてのサーバが応答しなかった場合にのみ、認証または認可は失敗します。
または、Guard モジュールがリストの最初の TACACS+ サーバのみを使用してユーザを認証するように設定することもできます(詳細については、「TACACS+ 検索方式の設定」を参照)。
リストには、各 TACACS+ サーバの IP アドレスを定義する必要があります。最大 9 つの TACACS+ サーバを定義できます。
リストに TACACS+ サーバを追加し、IP アドレスを割り当てるには、設定モードで次のコマンドを使用します。
tacacs-server host ip-address [ port port_number]
表4-9 に、 tacacs-server host コマンドの引数とキーワードを示します。
|
|
---|---|
TACACS+ サーバの IP アドレス。IP アドレスをドット区切り 10 進表記で入力します(たとえば 192.168.100.1)。 |
|
(オプション)使用するポート番号を指定します。ポート番号を指定しない場合、Guard モジュールはポート 49(デフォルト)を使用します。 |
TACACS+ サーバは、入力した順序でリストに追加されます。リストには、最大 9 つのサーバを追加できます。
次の例は、TACACS+ サーバ リストにサーバを追加する方法を示しています。
TACACS+ サーバにアクセスするための暗号鍵を設定することもできます。暗号鍵は、TACACS+ サーバ上の暗号鍵と一致する必要があります。暗号鍵にスペースを含めることはできません。
サーバの暗号アクセス鍵を設定するには、設定モードで次のコマンドを使用します。
引数 tacacs-key は、最大 100 文字の英数字の文字列です。
(注) 定義できる暗号鍵は 1 つだけです。複数の TACACS+ サーバを使用する場合、Guard モジュールは同じ鍵を使用して、すべての TACACS+ サーバとの通信を暗号化します。
次の例は、TACACS+ サーバの暗号鍵を MyKey に設定する方法を示しています。
設定モードで tacacs-server first-hit コマンドを使用することにより、認証拒否を最終決定と見なして他の TACACS+ サーバでのそれ以上の検索を停止するように、Guard モジュールを設定することができます。Guard モジュールは、サーバ リストの最初の TACACS+ サーバだけを使用してユーザ認証を実行し、応答します。最初の TACACS+ サーバが応答しない場合、Guard モジュールはリストにある次のサーバを選択します。Guard モジュールは、ユーザ認証に対して最初に受け取る承認または拒否を最終決定と見なし、他の TACACS+ サーバを使用してそのユーザを認証する試みを停止します。
ユーザ認証を受け入れるサーバを検出するため、定義された TACACS+ サーバの順次検索を続行するように Guard モジュールを設定するには、設定モードで no tacacs-server first-hit コマンドを使用します。この方式が、first-hit 動作のデフォルト設定です。定義された TACACS+ サーバすべてがユーザ認証を拒否する場合、または Guard モジュールがどのサーバとも通信できない場合は、ユーザ認証は失敗します。
次の例は、Guard モジュールがリスト内の最初の TACACS+ サーバのみを使用してユーザ認証をするように、TACACS+ 検索方式を設定する方法を示しています。
Guard モジュールが TACACS+ サーバからの応答を待つ時間を設定できます。タイムアウトが終了すると、Guard モジュールは次の TACACS+ サーバ(そのようなサーバが設定されている場合)との接続を確立しようとするか、ローカルの AAA にフォールバックします(フォールバックが設定されている場合)。フォールバックの方式が設定されていない場合、認証と認可は失敗します。
(注) すべての TACACS+ サーバとの通信に同じサーバ タイムアウトが使用されます。
TACACS+ サーバの接続タイムアウトを設定するには、設定モードで次のコマンドを使用します。
timeout 引数には、Guard モジュールが TACACS+ サーバの応答を待つ時間を秒単位で指定します。デフォルトのタイムアウトは 0 です。
次の例は、TACACS+ サーバの接続タイムアウトを 600 秒に設定する方法を示しています。
ヒント ネットワークに問題がある場合や、TACACS+ サーバの応答が遅いためにタイムアウトが繰り返し発生する場合は、タイムアウトの値を大きくすることができます。
設定モードで show tacacs statistics コマンドを使用して、定義した TACACS+ サーバの統計情報を表示できます。
TACACS+ の統計情報をクリアするには、設定モードで clear tacacs statistics コマンドを使用します。
表4-10 に、 show tacacs statistics コマンド出力のフィールドを示します。
|
|
---|---|
Detector と、Detector のリモート Guard リストに定義した Guard モジュールの間に安全な通信チャネルを確立できます。安全な通信チャネルにより、Detector は次のタスクを実行できます。
• Guard モジュールのアクティブ化:Detector は、ゾーン トラフィックの異常を検出すると、通信チャネルを使用して、ゾーン保護を行う Guard モジュールをアクティブにし、ゾーン保護中に Guard モジュールをポーリングします。
• ゾーン設定の同期化:Detector は、通信チャネルを使用して、ゾーン設定情報を Guard モジュールと交換します。
ユーザは、Detector と Guard モジュールの両方で通信チャネル パラメータを設定した後、Detector から Guard モジュールとの接続を開始します。この接続により、Detector は、安全な通信チャネルの確立に必要な鍵と証明書を Guard モジュールと交換します。その後 Detector は接続を閉じ、Guard モジュールをアクティブにする、ゾーン設定を同期させる、または Guard モジュールにポーリングする必要がある場合に、通信チャネルを確立します。
Detector および Guard モジュールは、次の 2 つのタイプの通信チャネルをサポートしています。
• セキュア シェル(SSH)バージョン 2:Detector が Guard をアクティブにできるようにします。
• Secure Sockets Layer(SSL):Detector が Guard モジュールのアクティブ化、Guard モジュールのポーリング、およびゾーン設定の同期化を行うことができるようにします。
Detector 上のゾーン リモート Guard リストおよびデフォルト リモート Guard リストを使用して、Detector がゾーン保護と同期化のために通信する Guard(モジュールまたはアプライアンス)を指定します。リモート Guard リストに Guard を指定する場合は、Detector がその Guard と確立する通信チャネルのタイプ(SSH または SSL)を選択します。SSH または SSL 通信チャネルを確立するには、両方のデバイスに SSH サービスが必要です。デフォルトでは、両方のデバイスで SSH サービスが常にイネーブルになっています。SSL 通信チャネルを確立する場合、Detector は Guard との初期接続に限り SSH 通信チャネルを使用します。この初期接続時に、Detector と Guard は鍵と証明書を交換します。
(注) Detector と Guard モジュールの間に通信チャネルを確立する前に、Guard モジュールを Detector のリモート Guard リストに追加しておく必要があります。詳細については、『Cisco Traffic Anomaly Detector Module Configuration Guide』および『Cisco Traffic Anomaly Detector Configuration Guide』を参照してください。
次のように Detector が Guard モジュールと相互に通信する必要がある場合は、Detector と Guard モジュールの間に SSL 通信チャネルを設定します。
• Detector がトラフィック異常を検出したときに Guard モジュールをアクティブにする。
• Guard モジュールをポーリングして、ゾーンに対する攻撃が終了したことを確認する。Detector で検出およびラーニング プロセスをイネーブルにした場合、Detector は、ゾーンに対する攻撃を検出すると、ラーニング プロセス(しきい値調整)を停止します。Detector は、攻撃を軽減するためにアクティブにした Guard モジュールをポーリングし、攻撃がいつ終了したかを確認します。その時点で、Detector は自動的にラーニング プロセスを再開します。
• Guard モジュールとの通信を監視し、リモート処理(Guard モジュールによるゾーン保護のアクティブ化など)が失敗した場合に通知する。
SSL 通信チャネルとは、認証とデータの暗号化を組み合せることにより安全な接続を提供するもので、デジタル証明書、秘密鍵と公開鍵の交換ペア、および Diffie-Hellman 鍵合意パラメータによって高度なセキュリティを実現します。SSL は、指定された受信者のみがデータを解読できるようにデータを暗号化します。
Guard モジュールおよび Detector はそれぞれ、デジタル証明書を使用して、通信チャネル経由で通信を試みるデバイスを認証します。SSL 証明書にある Guard モジュールと Detector の ID は、デバイスの IP アドレスに関連付けられます。安全な接続を確保するために、Detector は秘密鍵と公開鍵のペアを生成し、公開鍵をリモート Guard リストに定義されている Guard モジュールに配布します。
Guard モジュールと Detector の両方で SSL 通信パラメータを設定した後、2 つのデバイス間で通信チャネルを確立する必要があります。これは、Detector から行います。Guard モジュールへの初期接続中、Detector は Guard モジュール上のユーザ riverhead との SSH 通信チャネルを確立し、その後これらのデバイスが通信チャネルのセキュリティ保護に必要な鍵と証明書を交換します。初期接続後、Detector は、Guard モジュールのアクティブ化、Guard モジュールのポーリング、またはゾーン設定の同期化が必要な場合に SSL 通信チャネルを確立します。
SSL 通信チャネルの片側でいずれか一方のデバイスを交換した場合、またはいずれか一方のデバイスの IP アドレスを変更した場合は、2 つのデバイスが相互の認証に成功するように、両方のデバイスで SSL 証明書を再生成する必要があります。
SSL 通信チャネルをイネーブルにするには、次の接続タイプを許可するように Guard モジュールおよび Detector を設定する必要があります。
• SSH:Detector は、SSH 通信チャネルを使用して Guard モジュールとの初期接続を確立し、鍵と証明書を交換します。
• SSL:初期接続後、Detector は SSL 通信チャネルを使用して、Guard モジュールとのすべての接続を確立します。
SSL 通信チャネルをイネーブルにするには、Guard モジュールおよび Detector の両方で次の手順を実行します。
ステップ 1 設定モードで permit ssh ip-address-general [ ip-mask ] を入力して、コンパニオン デバイスの IP アドレスによる SSH サービスへのアクセスを許可します。
ip-address-general 引数および ip-mask 引数には、コンパニオン デバイスの IP アドレスを指定します。
ステップ 2 設定モードで service internode-comm コマンドを入力して、通信チャネル サービスをイネーブルにします。
ステップ 3 設定モードで permit internode-comm ip-address-general [ ip-mask ] コマンドを入力して、コンパニオン デバイスの IP アドレスによる通信チャネル サービスへのアクセスを許可します。
ip-address-general 引数および ip-mask 引数には、コンパニオン デバイスの IP アドレスを指定します。
SSL 通信チャネルをイネーブルにするように Guard モジュールおよび Detector を設定した後、Guard と Detector の間で通信チャネルを確立できます。通信チャネルの確立については、『 Cisco Traffic Anomaly Detector Module Configuration Guide 』または『 Cisco Traffic Anomaly Detector Configuration Guide 』を参照してください。
SSL 証明書で Guard モジュールと Detector を識別する鍵は、IP アドレスに関連付けられます。次のタスクを実行する場合は、通信チャネルの両側で Guard モジュールと Detector の新しい SSL 証明書を再生成する必要があります。
新しい SSL 証明書を再生成するプロセスには、両方のデバイスから現在の証明書を削除する作業が含まれます。現在使用している SSL 証明書を表示するには、 show internode-comm certs コマンドを使用します。
現在使用している SSL 証明書を再生成するには、次の手順を実行します。
ステップ 1 設定モードで次のコマンドを入力して、Guard モジュールの SSL 証明書を Detector から削除します。
cert-host-ip 引数には、Guard モジュールの IP アドレスを指定します。すべての Guard モジュールの SSL 証明書を削除するには、アスタリスク(*)を入力します。
ステップ 2 設定モードで次のコマンドを入力して、Detector の SSL 証明書を Guard モジュールから削除します。
cert-host-ip 引数には、Detector の IP アドレスを指定します。Guard モジュールとの通信チャネルを確立しているすべての Detector の SSL 証明書を削除するには、アスタリスク(*)を入力します。
ステップ 3 Guard モジュールを交換する場合は、Detector から SSH ホスト鍵も削除する必要があります。設定モードで次のコマンドを使用して、Guard モジュールの SSH ホスト鍵を Detector から削除します。
ip-address-general 引数には、リモート デバイスの IP アドレスを指定します。
ステップ 4 Detector から、Guard モジュールと Detector との間に新しい SSL 通信チャネルを確立することにより、新しい SSL 証明書を再生成します。通信チャネルの確立については、『 Cisco Traffic Anomaly Detector Module Configuration Guide 』または『 Cisco Traffic Anomaly Detector Configuration Guide 』を参照してください。
トラフィック異常を検出したときに Detector が Guard モジュールをアクティブにすること以外に Detector と Guard モジュールが相互に通信する必要がない場合は、Detector と Guard モジュールの間の SSH 通信チャネルを設定します。SSH 通信チャネルでは、Detector が Guard モジュールに対して次のタスクを実行できません。
• Guard モジュールをポーリングして、ゾーンに対する攻撃が終了したことを確認する。Detector で検出およびラーニング プロセスをイネーブルにした場合、Detector は、ゾーンに対する攻撃を検出すると、ラーニング プロセス(しきい値調整)を停止します。Detector は、Guard モジュールをポーリングできず、攻撃がいつ終了したかを確認できないため、攻撃が終了しても自動的にラーニング プロセスを再開できません。
• Guard モジュールとの通信を監視し、リモート処理(Guard モジュールによるゾーン保護のアクティブ化など)が失敗した場合に通知する。
Detector がこれらのタスクを実行できるようにするには、SSL 通信チャネルを設定する必要があります(「SSL 通信チャネル パラメータの設定」を参照)。
安全な SSH 通信チャネルを確保するために、Detector は秘密 SSH 鍵と公開 SSH 鍵のペアを生成し、公開 SSH 鍵をリモート Guard リストにある Guard モジュールに配布します。
SSH 通信チャネルをイネーブルにした後、Detector と Guard モジュールの間で通信チャネルを確立する必要があります。これは、Detector から行います。
SSH 通信チャネルの片側で Guard モジュールを新しいものと交換した場合は、Detector が新しい Guard モジュールでの認証に成功するように、Detector で SSH 秘密(ホスト)鍵および SSH 公開鍵を再生成する必要があります。
Guard モジュールと Detector の間の SSH 通信チャネルをイネーブルにするには、 permit ssh コマンドを入力して、Detector の IP アドレスから Guard モジュール上の SSH サービスにアクセスすることを許可します。
Guard モジュールと Detector の間の SSL 通信チャネルをイネーブルにした後、Guard と Detector の間で通信チャネルを確立できます。通信チャネルの確立については、『 Cisco Traffic Anomaly Detector Module Configuration Guide 』または『 Cisco Traffic Anomaly Detector Configuration Guide 』を参照してください。
Detector が SSH 通信チャネル経由で通信する Guard モジュールを新しいものと交換した場合は、次の手順を実行して、SSH 通信チャネル鍵を再生成する必要があります。
ステップ 1 Detector 上で no host-keys ip-address-general 設定モード コマンドを入力して、SSH ホスト鍵を Detector から削除します。
ip-address-general 引数には、リモート デバイスの IP アドレスを指定します。
Guard モジュールにリストされているホスト鍵を表示するには、 show host-keys コマンドを使用します。
ステップ 2 次のいずれかの処理を実行して、リモート Guard モジュールで SSH 鍵を設定します。
• 新しい SSH 通信チャネルを Detector から確立します。
• Detector の公開鍵をリモート Guard モジュールに手動で追加します。Detector の公開 SSH 鍵をコピーし、Guard モジュールが保持している SSH 鍵のリストにペーストすることができます。
Detector の公開 SSH 鍵を表示するには、Detector 上で show public-key コマンドを使用します。
Detector の公開 SSH 鍵を、Guard モジュールが保持している SSH 鍵のリストに追加するには、Guard モジュール上で key add コマンドを使用します。詳細については、「SSH 鍵の追加」を参照してください。
Guard モジュールは、安全なリモート ログインのために SSH をサポートします。SSH 鍵のリストを追加すると、ログインとパスワードを入力しなくても、リモート デバイスから Guard モジュールに安全な通信ができます。
次の各項では、Guard モジュールの SSH 鍵リストの管理方法について説明します。
• SSH 鍵の追加
• SSH 鍵の削除
Guard モジュールの SSH 鍵リストにリモート接続の SSH 公開鍵を追加することにより、ログイン名とパスワードを入力せずに SSH 接続をイネーブルにすることができます。
key add [ user-name ] {ssh-dsa | ssh-rsa} key-string comment
表4-11 に、 key add コマンドの引数とキーワードを示します。
リストから SSH 鍵を削除できます。SSH 鍵を削除すると、次に Guard モジュールと SSH セッションを確立するときには認証を受ける必要があります。
Guard モジュールから SSH 鍵を削除するには、設定モードで次のコマンドを使用します。
key remove [ user-name ] key-string
表4-12 に、 key remove コマンドの引数を示します。
|
|
---|---|
プロンプトに SSH 公開鍵をペーストします。識別フィールド(ssh-rsa または ssh-dsa)は除き、鍵だけをペーストしてください。 |
次の例は、 key remove コマンドにカット アンド ペーストを行えるように、ユーザ鍵を表示する方法を示しています。
SSH2 の最上層にある Secure File Transfer Protocol(SFTP; セキュア ファイル転送プロトコル)、および SSH に依存する Secure Copy Protocol(SCP)は、ファイルのコピー方式を提供します。このコピー方式は、安全で信頼できます。SFTP および SCP では、公開鍵による認証と強力なデータ暗号化を使用しています。したがって、ログイン、データ、およびセッションの情報が送信中に傍受されたり変更されたりすることを防止できます。
SFTP 接続および SCP 接続用の鍵を設定するには、次の手順を実行します。
ステップ 1 設定モードで show public-key コマンドを入力して、Guard モジュール上で Guard モジュールの公開鍵を表示します。
鍵が存在する場合は、ステップ 2 を省略してステップ 3 に進みます。
鍵が存在しない場合は、ステップ 2 に進みます。
ステップ 2 設定モードで key generate コマンドを入力して、Guard モジュール上で秘密および公開鍵ペアを生成します。
SSH の鍵ペアがすでに存在している場合は、次のメッセージが表示されます。
Guard モジュールが、公開および秘密鍵ペアを作成します。Guard モジュールの公開鍵を表示するには、設定モードで show public-key コマンドを使用します。
ステップ 3 公開鍵を Guard モジュールからコピーし、ネットワーク サーバ上の鍵ファイル内にペーストします。
たとえば、Linux オペレーティング システムにインストールされている ネットワーク サーバに username というユーザ アカウントで接続している場合は、Guard モジュールの公開鍵を /home/username/.ssh/authorized_keys2 ファイルに追加します。
鍵は 1 行に収まるようにコピーしてください。鍵が 2 行としてコピーされた場合は、1 行目の末尾にある改行文字を削除します。
(注) 公開鍵をコピーしてネットワーク サーバ上の鍵ファイルにペーストしないと、自動エクスポート機能(export reports コマンドなど)が使用できず、手動でネットワーク サーバに接続するたびに、パスワードを入力する必要があります。
Guard モジュールのホスト名を変更できます。この変更はすぐに反映され、新しいホスト名は自動的に CLI プロンプト ストリングに組み込まれます。
Guard モジュールのホスト名を変更するには、設定モードで次のコマンドを使用します。
次の例は、Guard モジュールのホスト名を変更する方法を示しています。
Guard モジュールが SNMP トラップを送信し、Guard モジュールで発生する重大なイベントを管理者に通知するように設定することができます。また、Guard モジュールの SNMP トラップ ジェネレータのパラメータを設定し、Guard モジュールが報告する SNMP トラップ情報の範囲を定義することもできます。
トラップのログは、Guard モジュールのイベント ログに記録され、トラップ条件が発生すると、SNMP エージェントがトラップを送信するかどうかに関係なく、イベント モニタに表示されます。
Guard モジュールが SNMP トラップを送信するように設定するには、次の手順を実行します。
ステップ 1 設定モードで次のコマンドを入力して、SNMP トラップ ジェネレータ サービスをイネーブルにします。
ステップ 2 次のコマンドを入力して、SNMP トラップ ジェネレータのパラメータ(トラップの宛先 IP アドレスとトラップ情報の範囲)を設定します。
表4-13 に、 snmp trap-dest コマンドの引数を示します。
SNMP トラップ ジェネレータ パラメータを削除するには、 no snmp trap-dest コマンドを使用します。すべての SNMP トラップ宛先パラメータを削除するには、アスタリスク( * )を入力します。
次の例は、errors 以上の重大度レベルのトラップが、SNMP コミュニティ ストリング tempo とともに宛先 IP アドレス 192.168.100.52 に送信される例を示しています。
表4-14 に、Guard モジュールが生成する SNMP トラップを示します。
|
|
|
---|---|---|
すべての Guard モジュールゾーン上で 150,000 個以上の動的フィルタが同時にアクティブになっているため、Guard モジュールは新しい動的フィルタを追加できない。 |
||
Guard モジュールは、パケット アクティベーション方式によるゾーン保護のアクティブ化に失敗し、重大度が ALERT の後続トラップを送信する。 |
||
Guard モジュールはパケット アクティベーション方式によるゾーン保護のアクティブ化に失敗し、重大度が EMERGENCY のトラップがすでに生成されている。 |
||
インストールされたソフトウェア ライセンスは、30、6、5、4、3、または 2 日 以内(<dd-mmm-yyyy>)に期限切れになる。 |
||
ギガビット インターフェイス リンクの使用率(bps 1 単位)が 85% を超えている。 |
||
Guard モジュールに、すべてのゾーン上で同時にアクティブになっている動的フィルタが 135,000 個以上ある。アクティブな動的フィルタの数が 150,000 に到達すると、Guard モジュールは新しい動的フィルタを追加できなくなります。 |
||
Guard モジュールは再起動した。トラップには、MIB2 ウォーム スタート トラップまたはコールド スタート トラップと、Guard モジュールが再起動した原因に関する情報が含まれています。 |
||
Guard モジュールはシャットダウンした。トラップには、MIB2 ウォーム スタート トラップまたはコールド スタート トラップと、Guard モジュールがシャットダウンした原因に関する情報が含まれています。 |
||
Guard モジュールは、アクティブな動的フィルタが 1000 個以上あるため、削除する動的フィルタのトラップを送信しない。 |
||
Guard モジュールの SNMP サーバにアクセスすることにより、管理情報ベース 2(MIB2)および Cisco Riverhead 専用 MIB で定義された情報を取得することができます。コミュニティ ストリングはパスワードのように機能し、Guard モジュールの SNMP エージェントからの読み取りアクセスを許可します。Guard モジュールの SNMP コミュニティ ストリングを設定して、異なる組織のクライアントがそれぞれ異なるコミュニティ ストリングを使用して SNMP エージェントにアクセスできるようにすることができます。
SNMP コミュニティ ストリングを追加するには、設定モードで次のコマンドを使用します。
snmp community community-string
community-string 引数には、目的の Guard モジュールのコミュニティ ストリングを指定します。1 ~ 15 文字の英数字の文字列を入力します。この文字列にスペースを含めることはできません。Guard モジュールのデフォルトのコミュニティ ストリングは riverhead です。コミュニティ名はいくつでも指定できます。コミュニティ ストリングを削除するには、 no community string コマンドを使用します。すべての SNMP コミュニティ ストリングを削除するには、アスタリスク( *) を入力します。
次の例は、SNMP コミュニティ ストリングを設定する方法を示しています。
ログイン バナーとは、SSH セッション、コンソール ポート接続、または Guard モジュールへの WBM セッションを開いたときに、ユーザ認証の前の画面に表示されるテキストのことです。
認可されていないアクセスに対してユーザに警告したり、適切と見なされるシステムの使用法を説明したり、不適切な使用法や不正な活動を検出するためにシステムが監視されていることをユーザに警告したりするように、ログイン バナーを設定できます。
Guard モジュールは、次の場所にログイン バナーを表示します。
• CLI:パスワード ログイン プロンプトの前、またはポップアップ ウィンドウとして(使用している SSH クライアントによって異なる)。
• WBM:Guard モジュールのログイン ウィンドウの右側。
login-banner コマンドを使用すると、単一または複数のメッセージ バナーを作成できます。複数のログイン バナーを入力した場合、新しいログイン バナーは、既存のログイン バナーの最後に新しい行として追加されます。
ログイン バナーを設定するには、設定モードで次のコマンドを使用します。
banner-str 引数には、バナーのテキストを指定します。文字列の長さは最大 999 文字です。式にスペースを使用する場合は、式を引用符(" ")で囲みます。
ログイン バナーを表示するには、 show login-banner コマンドを使用します。
次の例は、ログイン バナーを設定して表示する方法を示しています。
Cisco Anomaly Guard Module
グローバル モードまたは設定モードで次のいずれかのコマンドを入力して、ネットワーク サーバからテキスト ファイルをインポートし、既存のログイン バナーを差し替えることができます。
• copy ftp login-banner server full-file-name [ login [ password ]]
• copy { sftp | scp } login-banner server full-file-name login
インポートするファイル内の各行の最大長は、999 文字です。
SFTP および SCP は、安全な通信を行うために SSH を使用します。したがって、 sftp オプションまたは scp オプションを指定して copy コマンドを入力したときに、Guard モジュールで使用される鍵が設定されていないと、Guard モジュールからパスワードの入力を求められます。Guard モジュールが安全な通信のために使用する鍵を設定する方法の詳細については、「SFTP 接続および SCP 接続用の鍵の設定」を参照してください。
表4-15 に、 copy login-banner コマンドの引数とキーワードを示します。
次の例は、FTP サーバからログイン バナーをインポートする方法を示しています。
ユーザ認証の前にメッセージを表示する必要がなくなった場合、ログイン バナーを削除できます。
ログイン バナーを削除するには、設定モードで no login-banner コマンドを使用します。
エンドユーザ インターフェイスをカスタマイズするために、企業のロゴやカスタマイズされたロゴを Web-based Manager(WBM)Web ページに追加することができます。
• Guard モジュールのログイン ページで、Cisco Systems ロゴの下。
• すべての WBM ページ(Guard モジュールのログイン ページは除く)で、Cisco Systems ロゴの右側。
新しいロゴは GIF 形式である必要があります。新しいロゴのサイズは、幅 = 87 ピクセル、高さ = 41 ピクセルにすることをお勧めします。
WBM で使用するネットワーク サーバから新しいロゴをインポートするには、グローバル モードまたは設定モードで次のコマンドを入力します。
• copy ftp wbm-logo server full-file-name [ login [ password ]]
• copy { sftp | scp } wbm-logo server full-file-name login
SFTP および SCP は安全な通信を行うために SSH を使用します。したがって、 sftp オプションまたは scp オプションを指定して copy コマンドを入力したときに、Guard モジュールで使用される鍵が設定されていないと、Guard モジュールからパスワードの入力を求められます。Guard モジュールが安全な通信のために使用する鍵を設定する方法の詳細については、「SFTP 接続および SCP 接続用の鍵の設定」を参照してください。
表4-16 に、 copy wbm-logo コマンドの引数とキーワードを示します。
次の例は、FTP サーバから WBM ロゴ ファイルをインポートする方法を示しています。
WBM ロゴを削除するには、設定モードで no wbm-logo コマンドを使用します。
セッション タイムアウトとは、アクティビティが何もない状態でセッションがアクティブでいられる時間のことです。設定された時間内に何もアクティビティがなかった場合、タイムアウトが発生し、再びログインする必要があります。セッション タイムアウトは、デフォルトではディセーブルになっています。
セッション タイムアウトは CLI にのみ適用され、WBM には適用されません。
設定モードで次のコマンドを入力して、Guard モジュールがアイドル セッションを自動的に切断するまでの分数を設定できます。
timeout-val 引数には、Guard モジュールが自動的にアイドル セッションを切断するまでの分数を指定します。有効な値は、1 ~ 1,440 分(1 日)です。
次の例は、Guard モジュールが 10 分後にアイドル セッションを切断するように設定する方法を示しています。
Guard モジュールが自動的にアイドル セッションを切断しないようにするには、 no session-timeout コマンドを使用します。