この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
目次
このモジュールでは、Cisco IOS XR ソフトウェア システムでのユーザ アクセスの制御に使用されるタスクベース認可の管理モデルの実装について説明します。 タスクベース認可の実装では、主にユーザ グループおよびタスク グループを設定する必要があります。
ユーザ グループおよびタスク グループは、認証、認可およびアカウンティング(AAA)サービスに使用される Cisco IOS XR ソフトウェア コマンド セットを介して設定されます。 認証コマンドは、ユーザまたはプリンシパルの ID の検証に使用されます。 認可コマンドは、認証済みユーザ(またはプリンシパル)に特定のタスクを実行するための権限が付与されていることを確認するために使用します。 アカウンティング コマンドは、セッションのログイン、および特定のユーザまたはシステムにより生成されるアクションを記録することで監査証跡を作成するときに使用されます。
AAA は、Cisco IOS XR ソフトウェア ベース パッケージの一部で、デフォルトで使用可能です。
(注) |
このモジュールで使用される AAA コマンドの詳細については、 『Cisco ASR 9000 Series Aggregation Services Router System Security Command Reference』の「Authentication, Authorization, and Accounting Commands on Cisco ASR 9000 シリーズ ルータ」モジュールを参照してください。 この章で使用される他のコマンドの説明については、コマンド リファレンスのマスター索引を参照するか、またはオンラインで検索してください。 |
リリース |
変更内容 |
---|---|
リリース 3.7.2 |
この機能が導入されました。 |
リリース 4.1.0 |
VRF 対応 TACACS+ のサポートが追加されました。 |
次に、AAA サービスの設定に関する前提条件を示します。
ここでは、AAA サービスを設定する場合の制限を示します。
互換性は Cisco のフリーウェア TACACS+ サーバおよび FreeRADIUS だけで検証されます。
ルータの管理者は、同じ AAA サーバのソフトウェアおよびデータベース(たとえば、
CiscoSecure ACS)をルータと、現在 Cisco IOS XR ソフトウェアを実行していない他のシスコ製機器に対して使用できます。 タスク ID をサポートしない外部 TACACS+ サーバとルータとの間の相互運用性をサポートするには、「TACACS+ および RADIUS 認証ユーザのタスク ID」の項を参照してください。
この項では、Cisco IOS XR ソフトウェア ユーザが AAA を介してユーザ グループとタスク グループを設定したり、リモート認証ダイヤルイン ユーザ サービス(RADIUS)サーバまたは TACACS+ サーバを設定したりする前に理解する必要があるすべての概念情報を示します。 概念情報では、AAA について、およびなぜ重要なのかについても説明します。
Cisco IOS XR ソフトウェア ユーザ属性は、Cisco IOS XR ソフトウェア 管理モデルの基礎を形成します。 各ルータ ユーザには、次の属性が関連付けられます。
ルータ ユーザは、次のカテゴリに分類されます。
ルート システム ユーザは、ルータ シャーシ全体の「所有」が許可されたエンティティです。 ルート システム ユーザは、すべてのルータ コンポーネントに対して最も高い特権を持って操作し、システム内のすべてのセキュア ドメイン ルータをモニタできます。 ルータの設定時に、少なくとも 1 つのルート システム ユーザ アカウントを作成する必要があります。 ルート システム ユーザは複数作成できます。
ルート システム ユーザは次を含む設定またはモニタ タスクを実行できます。
ルート SDR ユーザは、特定の SDR の設定およびモニタリングを制御します。 ルート SDR ユーザは、ユーザを作成し、SDR 内での権限を設定できます。 複数のルート SDR ユーザが独立して作業できます。 1 つの SDR に、複数の SDR ユーザを作成できます。
ルート SDR ユーザは、特定の SDR に対して次の管理タスクを実行できます。
ルート SDR ユーザは、ルート システム ユーザへのアクセスを拒否できません (ルート システム ユーザの項を参照)。
セキュア ドメイン ルータ ユーザには、ルート システム ユーザまたはルート SDR ユーザにより定義されている SDR への制限付きアクセス権があります。 セキュア ドメイン ルータ ユーザは、日常のシステムおよびネットワーク管理業務を行います。 セキュア ドメイン ルータ ユーザが実行できるタスクは、セキュア ドメイン ルータ ユーザが属するユーザ グループに関連付けられているタスク ID により決まります (ユーザ グループの項を参照)。
Cisco IOS XR ソフトウェアでは、システム管理者は、ユーザのグループ、およびユーザのグループで共通するジョブ特性を設定できます。 グループは、明示的にユーザに割り当てる必要があります。 ユーザは、デフォルトでは、グループに割り当てられていません。 ユーザは、複数のグループに割り当てることができます。
ユーザ グループは、アクセス権限など、属性のセットを共有するユーザの集まりです。 各ユーザは、1 つ以上のユーザ グループに関連付けることができます。 ユーザ グループは、次の属性を持ちます。
Cisco IOS XR ソフトウェアには、属性を定義済みの一連のユーザ グループが用意されています。 事前定義されているグループは次のとおりです。
ユーザ グループ root-system には、唯一のメンバとしてルート システム ユーザが含まれます (ルート システム ユーザの項を参照)。root-system ユーザ グループには認可が事前に定義されています。つまり、root-system ユーザ管理リソースのすべて、および他の SDR の一部を担当します。
管理者は、特定のニーズを満たすために自分のユーザ グループを設定できます。
ユーザ グループは、別のユーザ グループから属性を継承できます。 (同様に、タスク グループは、別のタスク グループから属性を継承できます)。 たとえば、ユーザ グループ A がユーザ グループ B から属性を継承すると、ユーザ グループ A のタスク属性の新しいセットは、A と B の集合になります。 ユーザ グループ間の継承関係は、グループが明示的に再継承されなくても、グループ A がグループ B から属性を継承する場合は、グループ B での変更はグループ A に反映されます。
タスク グループは、タスク ID の集合によって定義されます。 タスク グループには、各アクション クラスに対応したタスク ID リストが含まれます。
各ユーザ グループは、そのグループのユーザに適用できる一連のタスク グループが関連付けられます。 ユーザ タスクの権限は、そのユーザが属するユーザ グループに関連付けられたタスク グループから取得されます。
次に、管理者が通常の初期設定で使用できる事前定義タスク グループを示します。
ユーザは、特定のニーズを満たすために独自のタスク グループを設定できます。
タスク グループは、他のタスク グループからの継承をサポートします (同様に、ユーザ グループは、別のユーザ グループから属性を継承できます。 ユーザ グループの項を参照してください)。たとえば、タスク グループ A がタスク グループ B から継承すると、タスク グループ A の属性の新しいセットは、A と B の集合になります。
ルータは、管理(admin)プレーンとセキュア ドメイン ルータ(SDR)プレーンの 2 つのプレーンで機能します。 admin(共有)プレーンは、すべての SDR で共有されるリソースで構成され、SDR プレーンは、特定の SDR に固有なリソースで構成されます。
root-system ユーザには、ルータの最高レベルの権限があります。 このユーザは、セキュア ドメイン ルータをプロビジョニングし、ルート SDR ユーザを作成します。 作成後、ルート ユーザは SDR のルート システム ユーザから SDR の権限のほとんどを取得します。 ルート SDR ユーザは、セキュア ドメイン ルータ ユーザを作成できます。 ルート システム ユーザおよびルート SDR ユーザには、ユーザには変更できない固定の権限(タスク ID)があります。
各 SDR には、ローカル ユーザ、グループ、TACACS+ および RADIUS 設定など、独自の AAA 設定があります。 1 つの SDR で作成されたユーザは、これらのユーザが他の SDR で設定されない限り、他の SDR にアクセスできません。
システムへの管理アクセスは、次の操作を十分理解していない場合、または注意して計画していない場合、失われる可能性があります。 すべての root-system ユーザのロックアウトは、パスワードの回復のためにシステム リロードが必要になる重大な問題です。
(注) |
他の方式リストを指定しない none オプションの使用は、Cisco IOS XR ソフトウェアではサポートされていません。 |
ロックアウトを回避するには、次のいずれか、または両方を推奨します。
AAA データベースは、ユーザ、グループ、およびシステムへのアクセスを制御するタスクの情報を保存します。 AAA データベースはローカルまたはリモートにできます。 特定の状況で使用されるデータベースは、AAA 設定により異なります。
ユーザ、ユーザ グループ、タスク グループなどの AAA データは、セキュア ドメイン ルータ内でローカルに保存できます。 このデータは、メモリ内データベースに保存され、コンフィギュレーション ファイルに保存されます。 保存されたパスワードは暗号化されます。
(注) |
データベースは、保存されている特定のセキュア ドメイン ルータ(SDR)に対してローカルで、定義されているユーザまたはグループは、同じシステムの他の SDR に表示されません。 |
残りすべてのユーザをローカル データベースから削除できます。 すべてのユーザを削除すると、ユーザが次にログインするときに、設定ダイアログが表示され、新しいユーザ名およびパスワードを入力するよう求められます。
(注) |
設定ダイアログは、ユーザがコンソールにログインするときだけ表示されます。 |
AAA データは、CiscoSecure ACS などの外部セキュリティ サーバに保存することができます。 サーバに保存されているデータは、クライアントがサーバの IP アドレスと共有秘密がわかっていれば、任意のクライアント(ネットワーク アクセス サーバ [NAS] など)が使用できます。
CiscoSecure ACS のような製品は、共有または外部 AAA データベースを管理するために使用できます。 ルータは、標準的な IP ベースのセキュリティ プロトコル(TACACS+ または RADIUS など)を使用してリモート AAA サーバと通信します。
セキュリティ サーバは、ルータと共有するシークレット キーおよびクライアントの IP アドレスで設定する必要があります。
外部サーバで作成されるユーザ グループは、ルータのローカル AAA データベース設定のユーザ グループとは関係がありません。 外部 TACACS+ サーバまたは RADIUS サーバ ユーザ グループの管理は別であるため、ルータはユーザ グループ構造を認識しません。 リモート ユーザまたはグループ プロファイルには、ユーザが属するグループ(ルータで定義)、および個々のタスク ID を指定する属性を含めることができます。 詳細については、TACACS+ および RADIUS 認証ユーザのタスク IDの項を参照してください。
外部サーバのユーザ グループの設定は、個々のサーバ製品の設計により異なります。 該当するサーバ製品のマニュアルを参照してください。
タスク グループは、アクションのタイプ(read、write など)に対応した許容タスク ID のリストによって定義します。 タスク ID は、ルータ システムで基本的に定義されます。 外部ソフトウェアのタスク グループを設定するには、タスク ID 定義が事前にサポートされている必要があります。
タスク ID は、外部 TACACS+ サーバまたは RADIUS サーバで設定できます。
ここでは、AAA 設定についての情報を提供します。
AAA データは、さまざまなデータ ソースに保存できます。 AAA 設定は、方式リストを使用して、AAA データのソースの優先順位を定義します。 AAA は、複数の方式リストを定義でき、アプリケーション(ログインなど)は、これらのいずれかを選択できます。 たとえば、コンソールおよび補助ポートと vty ポートでは、それぞれ異なる方式リストを使用できます。 方式リストが指定されていない場合、アプリケーションは、デフォルトの方式リストを使用します。 デフォルトの方式リストが存在しない場合、AAA は、ローカル データベースとしてソースを使用します。
AAA は、データベース オプションの優先順位リストを使用するよう設定できます。 システムがデータベースを使用できない場合、リストの次のデータベースに自動的にロールオーバーします。 認証、認可またはアカウンティング要件がデータベースで拒否されると、ロールオーバーは発生せず、要求が拒否されます。
次の方法が選択可能です。
サーバの 1 つのグローバル リストを保持する代わりに、異なる AAA プロトコル(RADIUS や TACACS+ など)用のサーバ グループを作成し、AAA アプリケーション(PPP および EXEC など)に関連付けることができます。
認証は、プリンシパル(ユーザまたはアプリケーション)がシステムへのアクセスを取得する最も重要なセキュリティ プロセスです。 プリンシパルは、管理ドメインで一意であるユーザ名(またはユーザ ID)により定義されます。 ユーザにサービスを提供するアプリケーション(EXEC または管理エージェントなど)は、ユーザからユーザ名およびクレデンシャルを取得します。 AAA は、アプリケーションにより渡されたユーザ名およびクレデンシャルに基づいて認証を実行します。 認証ユーザのロールは、ユーザが属する 1 つ以上のグループにより決まります ユーザは、1 つ以上のユーザ グループのメンバにすることができます)。
root-system ユーザは、システムのセキュア ドメイン ルータの任意のノードにログインできます。 ユーザは、root-system グループに属する場合、root-system ユーザです。 root-system ユーザは、ローカルまたはリモート AAA データベースで定義できます。
所有者以外のセキュア ドメイン ルータにログインする場合、ルート システム ユーザは、「@admin」サフィクスをユーザ名に追加する必要があります。 「@admin」サフィクスを使用すると、認証要求が所有者のセキュア ドメイン ルータに送信され、確認されます。 所有者のセキュア ドメイン ルータは、認証方法の選択にリスト名 remote を使用します。 remote 方式リストは、aaa authentication login remote method1 method2... コマンドを使用して設定されます (AAA 方式リストの設定の項を参照)。
所有者のセキュア ドメイン ルータ ユーザは、所有者のセキュア ドメイン ルータ ユーザに関連付けられている特定のセキュア ドメイン ルータに属するノードだけにログインできます。 ユーザが root-sdr グループのメンバである場合、ユーザは、所有者のセキュア ドメイン ルータ ユーザとして認証されます。
セキュア ドメイン ルータ ユーザの認証は、所有者のセキュア ドメイン ルータ ユーザの認証と似ています。 あるユーザが、指定された所有者のセキュア ドメイン ルータ ユーザ グループまたはルート システム ユーザ グループのメンバーであることが判明しない場合、そのユーザはセキュア ドメイン ルータ ユーザとして認証されます。
AAA は、次のプロセスに従い認証を実行します。
クライアントは、ユーザの許可されているタスク ID を認証中に取得できます。 この情報は、ユーザが属するユーザ グループで指定されているすべてのタスク グループ定義の集合を形成することで取得されます。 このような情報を使用するクライアントは、通常、タスク ID セットが静的であるユーザのセッション(API セッションなど)を作成します。 EXEC および外部 API クライアントは、両方ともこの機能を使用して、操作を最適化できます。 EXEC は、該当しないコマンドを非表示にでき、EMS アプリケーションは、たとえば、該当しないグラフィカル ユーザ インターフェイス(GUI)メニューをディセーブルにできます。
ユーザ グループ メンバーシップなどのユーザの属性やタスク権限が変更されると、これらの変更された属性は、ユーザの現在アクティブなセッションでは反映されません。これらは、ユーザの次のセッションで有効になります。
Korn シェル(ksh)は、ルート プロセッサ(RP)、スタンバイ RP、分散 RP カードの補助ポート、さらにラインカード(LC)とサービス プロセッサ(SP)のコンソールおよび補助ポートのプライマリ シェルです。 次に、ksh 認証の特徴をいくつか示します。
ksh への認証は動作が軽く、依存するプロセスが少ないものの、次のように、ksh 認証がバイパスされる必要がある場合があります。
ksh 認証をバイパスするには、ユーザは ROMMON 変数 AUX_AUTHEN_LEVEL を 0 に設定し、イメージをリロードする必要があります。 認証をバイパスする必要があるカードだけでリブートが必要です。
ROMMON 変数 AUX_AUTHEN_LEVEL には次の値のいずれかを使用できます。
たとえば、カードの認証をバイパスするには、次のように入力します。
rommon1> AUX_AUTHEN_LEVEL=0 rommon2> sync rommon2> boot tftp:/ ...
ユーザおよびそのユーザのグループ メンバーシップを設定する場合、暗号化またはクリア テキストの 2 つのパスワードを指定できます。
ルータは、二方向および一方向(シークレット)の両方の暗号化ユーザ パスワードをサポートします。 オリジナルの暗号化されていないパスワード文字列が暗号化シークレットからは推測できないため、シークレット パスワードはユーザ ログイン アカウントに適しています。 アプリケーションによっては(PPP など)、パケットでのパスワードの送信など、独自の機能のための保存パスワードを復号化する必要があるので、二方向のみのパスワードが必要です。 ログイン ユーザでは、両方のタイプのパスワードを設定できますが、一方のパスワードがすでに設定されている状態でもう一方のパスワードを設定すると、警告メッセージが表示されます。
シークレットとパスワードの両方をユーザに設定すると、ログインなど、復号化できるパスワードを必要としないすべての操作で、シークレットが優先されます。 PPP などのアプリケーションでは、シークレットが存在する場合でも、二方向の暗号化パスワードが使用されます。
AAA は、CLI または API を介した操作の任意の制御、設定またはモニタに「タスク許可」を使用します。 特権レベルの Cisco IOS ソフトウェア概念は、Cisco IOS XR ソフトウェアでは作業ベースの認可システムに置き換えられました。
ユーザによるCisco IOS XR ソフトウェアの制御、設定およびモニタを可能にする操作タスクは、タスク ID 別に表されます。 タスク ID は、コマンドで操作をする許可を定義します。 ユーザには、ルータに許可されているアクセスの範囲を定義するタスク ID のセットが関連付けられます。
タスク ID は、次のようにユーザに割り当てられます。 各ユーザは、1 つの以上のユーザ グループに関連付けられます。 各ユーザ グループは 1 つ以上のタスク グループに関連付けられます。次に、各タスク グループは、一連のタスク ID によって定義されます。 つまり、ユーザと特定のユーザ グループを関連付けることで、そのユーザとタスク ID の特定のセットが関連付けられます。 タスク ID に関連付けられたユーザは、そのタスク ID に関連する処理を実行できます。
ほとんどのルータ制御、設定またはモニタリング操作(CLI または XML API)は、タスク ID の特定のセットが関連付けられます。 通常、特定の CLI コマンドまたは API イノベーションは、1 つ以上のタスク ID が関連付けられます。 config および commit コマンドでは、特定のタスク ID 許可は必要ありません。 設定およびコミット操作では、特定のタスク ID 許可は必要ありません(エイリアスでもタスク ID 許可は必要ありません)。 root-lr 許可が割り当てられるまで、config replace を実行できません。 コンフィギュレーション モードを開始しない場合、TACACS+ コマンド認可を使用して、config コマンドを拒否できます。 これらの関連付けは、ルータ内でハードコード化されていて、変更できません。 タスク ID は、特定のタスクを実行する許可を付与します。タスク ID では、タスクを実行する許可は拒否されません。 タスク ID 操作は、次の表にリストされているクラスの 1 つ、すべて、または任意の組み合わせにすることができます。
操作 |
説明 |
---|---|
Read |
読み取り専用操作を許可します。 |
Write |
変更操作を許可、および読み取り操作を暗黙的に許可します。 |
Execute |
ping や Telnet など、アクセス操作を許可します。 |
Debug |
デバッグ操作を許可します。 |
システムは、各 CLI コマンドおよび API イノベーションがユーザのタスク ID 許可リストと一致しているか検証します。 CLI コマンドの使用時に問題が発生した場合、システム管理者に連絡してください。
スラッシュで区切られた複数のタスク ID 操作(read/write など)は、両方の操作が指定のタスク ID に適用されることを示します。
カンマで区切られた複数のタスク ID 操作(read, read/write など)は、両方の操作が個々のタスク ID に適用されることを示します。 たとえば、copy ipv4 access-list コマンドは、読み取りおよび書き込み操作を acl タスク ID に適用し、実行操作を filesystem タスク ID に適用できます。
タスク ID および操作の列が指定されていない場合、コマンドは、タスク ID および操作とユーザとの関連付けなしで使用されます。 また、ROM モニタ コマンドを使用するために、ユーザにタスク ID を関連付ける必要はありません。
コマンドが特定のコンフィギュレーション サブモードで使用される場合、そのコマンドを使用するための追加タスク ID をユーザに関連付ける必要があります。 たとえば、show redundancy コマンドを実行するには、ユーザに、system(read)タスク ID および操作を関連付ける必要があります(次の例を参照)。
RP/0/RSP0/CPU0:router# show redundancy
また、管理 EXEC モードでは、ユーザに、admin および system(read)タスク ID および操作を関連付ける必要があります(次の例を参照)。
RP/0/RSP0/CPU0:router# admin RP/0/RSP0/CPU0:router(admin)# show redundancy
Cisco IOS XR ソフトウェア AAA では、TACACS+ および RADIUS 方式で認証されるユーザに次の方法でタスク許可を割り当てることができます。
外部 TACACS+ サーバおよび RADIUS サーバを使用して認証されるユーザに対して、Cisco IOS XR ソフトウェア AAA は、タスク ID をリモートで定義する方式をサポートします。
TACACS+ サーバのコンフィギュレーション ファイルのタスク文字列は、カンマ(,)で区切られたトークンで構成されます。 各トークンは、タスク ID 名およびその許可、またはこの特定のユーザを含むユーザ グループのいずれかで構成されます(次の例を参照)。
task = “ permissions : taskid name , # usergroup name , ...”
(注) |
Cisco IOS XR ソフトウェアでは、タスク ID を外部 RADIUS または TACACS+ サーバの属性として指定できます。 サーバが非 Cisco IOS XR ソフトウェア システムと共有される場合、これらの属性には、サーバ マニュアルで示されているように、オプション マークが付けられます。 たとえば、CiscoSecure ACS および Cisco のフリーウェア TACACS+ サーバでは、オプション属性の属性値の前に等号記号(=)ではなく、アスタリスク(*)が必要です。 属性をオプションとして設定する場合、TACACS+ サーバのマニュアルを参照してください。 |
たとえば、user1 BGP という名前のユーザに、read、write および execute 許可を付与し、user1 を operator という名前のユーザ グループに含める場合、外部サーバの TACACS+ コンフィギュレーション ファイルのユーザ名エントリは次のようになります。
user = user1{ member = some-tac-server-group opap = cleartext "lab" service = exec { task = "rwx:bgp,#operator" } }
r、w、x、d はそれぞれ read、write、execute、debug に対応します。ポンド記号(#)はユーザ グループが続くことを示します。
(注) |
Cisco IOS ソフトウェアに基づいたシステムとの相互運用性をイネーブルにするには、「task」の前にオプション キーワードを追加する必要があります。 |
CiscoSecure ACS が使用される場合、次の手順を実行して、タスク ID とユーザ グループを指定します。
1. ユーザ名とパスワードを入力します。
2. [Group Setup] ボタンをクリックして、[Group Setup] ウィンドウを表示します。
3. [Group] ドロップダウン リストから、更新するグループを選択します。
4. [Edit Settings] ボタンをクリックします。
5. スクロール矢印を使用して、[Shell (exec)] チェックボックスを探します。
6. [Shell (exec)] チェックボックスを選択して、カスタム属性設定をイネーブルにします。
7. [Custom attributes] チェックボックスを選択します。
8. フィールドに空白や引用符を含めずに次のタスク文字列を入力します。
9. [Submit + Restart] ボタンをクリックしてサーバを再起動します。
タスク ID の概念をサポートしない TACACS+ デーモンとの互換性のため、AAA は外部 TACACS+ サーバ設定ファイル内でユーザに定義されている特権レベルとローカル ユーザ グループとの間のマッピングをサポートします。 TACACS+ 認証後、外部 TACACS+ サーバから返される権限レベルからマッピングされたユーザ グループのタスク マップがユーザに割り当てられます。 たとえば、特権レベル 5 が外部 TACACS サーバから返された場合、AAA はローカル ユーザ グループ priv5 のタスク マップを取得することを試みます。 このマッピング プロセスは、1 ~ 13 の他の特権レベルでも同様です。 特権レベル 15 の場合、ルート システム ユーザ グループが使用されます。特権レベル 14 はユーザ グループ オーナー SDR にマッピングされます。
たとえば、Cisco のフリーウェア TACACS+ サーバでは、コンフィギュレーション ファイルは、次の例に示すようにコンフィギュレーション ファイルで priv_lvl を指定する必要があります。
user = sampleuser1{ member = bar service = exec-ext { priv_lvl = 5 } }
この例の 5 という数値は、ユーザ sampleuser に割り当てる必要がある任意の特権レベルに置き換えることができます。
RADIUS サーバでは、タスク ID は、Cisco-AVPair を使用して定義されます(次の例を参照)。
user = sampleuser2{ member = bar Cisco-AVPair = "shell:tasks=#root-system,#cisco-support"{ Cisco-AVPair = "shell:priv-lvl=10" } }
Extensible Markup Language(XML)インターフェイスは、XML ドキュメント形式で要求と応答を使用して、AAA を設定およびモニタします。 AAA コンポーネントは、設定およびモニタリングに使用されるデータの内容と構造に対応する XML スキーマを発行します。 XML ツールおよびアプリケーションは、このスキーマを使用して、XML エージェントと通信して設定を実行します。
次のスキーマは、AAA を使用して発行されます。
RADIUS は、不正なアクセスからネットワークのセキュリティを保護する分散クライアント/サーバ システムです。 シスコの実装では、RADIUS クライアントは Cisco ルータ上で稼働します。認証要求とアカウンティング要求は、すべてのユーザ認証情報とネットワーク サービス アクセス情報が格納されている中央の RADIUS サーバに送信されます。
RADIUS は完全にオープンなプロトコルであり、ソース コード形式で配布されているため、現在使用できる任意のセキュリティ システムと連携するように変更できます。
シスコは、AAA セキュリティ パラダイムの下で RADIUS をサポートしています。 RADIUS は、TACACS+、Kerberos、ローカル ユーザ名の検索など、他の AAA セキュリティ プロトコルと併用できます。
(注) |
RADIUS はすべての Cisco プラットフォームでサポートされますが、RADIUS でサポートされる一部の機能は、指定されたプラットフォームだけで実行されます。 |
RADIUS は、リモート ユーザのネットワーク アクセスを維持すると同時に高度なレベルのセキュリティを必要とするさまざまなネットワーク環境に実装されています。
RADIUS は、アクセスのセキュリティが必要な次のネットワーク環境で使用できます。
RADIUS は次のネットワーク セキュリティ状況には適していません。
ユーザがログインを試行し、RADIUS を使用してアクセス サーバから認証を受ける場合、次の手順が発生します。
AAA サービスを設定するには、以下の項で説明する作業を実行します。
タスクベースの認可では、その基本要素としてタスク ID の概念が使用されます。 タスク ID は、ユーザの操作実行許可を定義します。 各ユーザは、タスク ID で識別される許可されたルータ操作タスクのセットが関連付けられます。 ユーザは、ユーザ グループに関連付けられることで許可が付与されます。ユーザ グループには、タスク グループが関連付けられます。 各タスクグループには、使用できるタスク ID の Cisco CRS-1 セットから選択された 1 つ以上のタスク ID が関連付けられます。 認可スキームを設定する場合、最初にタスク グループを設定します。次に、タスク グループ、個々のユーザの順に設定します。
タスク グループには、アクション タイプごとに一連のタスク ID が設定されます。
no プレフィックスを使用した task コマンドを指定して、特定のタスク ID をタスク グループから削除できます。
タスク グループ自体は削除できます。 ドキュメント名のあるタスク グループを削除すると、エラーが発生します。
タスク グループを作成して、タスク ID を関連付ける前に、タスク ID のルータ リストおよび各タスク ID の目的について理解しておく必要があります。 show aaa task supported コマンドを使用して、タスク ID の完全なリストを表示します。
(注) |
AAA タスク ID の write 許可を持っているユーザだけタスク グループを設定できます。 |
1. configure
2. taskgroup taskgroup-name
3. description string
4. task {read | write | execute | debug} taskid-name
5. ステップ 2 で指定したタスク グループに関連付ける各タスク ID で、ステップ 4 を繰り返します。
タスク グループのすべてのセットの設定が完了したら、ユーザ グループのフル セットを設定します(「ユーザ グループの設定」の項を参照)。
ユーザ グループは、タスク グループなど一連のユーザに対するコマンド パラメータによって設定されます。 usergroup コマンドを入力すると、ユーザ グループ コンフィギュレーション サブモードにアクセスします。 usergroup コマンドの no 形式を使用すると、特定のユーザ グループを削除できます。 システムで参照されているユーザ グループを削除すると、警告が表示されます。
(注) |
WRITE:AAA タスク ID が関連付けられているユーザだけ、ユーザ グループを設定できます。 ユーザ グループは、root-system や owner-sdr などの事前定義されたグループのプロパティを継承できません。 |
1. configure
2. usergroup usergroup-name
3. description string
4. taskgroup taskgroup-name
5. ステップ 2 で指定したユーザ グループを関連付ける各タスク グループで、ステップ 4 を繰り返します。
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | configure 例:
RP/0/RSP0/CPU0:router# configure |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | usergroup usergroup-name 例: RP/0/RSP0/CPU0:router(config)# usergroup beta |
特定のユーザ グループの名前を作成し、ユーザ グループ コンフィギュレーション サブモードを開始します。 |
ステップ 3 | description string 例: RP/0/RSP0/CPU0:router(config-ug)# description this is a sample user group
description |
(任意)ステップ 2 で指定したユーザ グループの説明を作成します。 |
ステップ 4 | taskgroup taskgroup-name 例: RP/0/RSP0/CPU0:router(config-ug)# taskgroup beta |
ステップ 2 で指定したユーザ グループを、この手順で指定したタスク グループに関連付けます。 |
ステップ 5 | ステップ 2 で指定したユーザ グループを関連付ける各タスク グループで、ステップ 4 を繰り返します。 | — |
ステップ 6 | 次のいずれかのコマンドを使用します。
例:
RP/0/RSP0/CPU0:router(config)# end または
RP/0/RSP0/CPU0:router(config)# commit |
設定変更を保存します。 |
ユーザ グループのフル セットの設定が完了したら、個々のユーザを設定します(ユーザの設定の項を参照)。
ユーザを設定するには、次のタスクを実行します。
各ユーザは、管理ドメイン内で一意のユーザ名によって識別されます。 各ユーザは、少なくとも 1 つのユーザ グループのメンバーであることが必要です。 ユーザ グループを削除すると、そのグループに関連付けられたユーザが孤立する場合があります。 AAA サーバでは孤立したユーザも認証されますが、ほとんどのコマンドは許可されません。
1. configure
2. username user-name
3. 次のいずれかを実行します。
4. group group-name
5. ステップ 2 で指定したユーザに関連付けられた各ユーザ グループで、ステップ 4 を繰り返します。
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | configure 例:
RP/0/RSP0/CPU0:router# configure |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | username user-name 例: RP/0//CPU0:router(config)# username user1 |
RSP0 新しいユーザの名前を作成(または現在のユーザを識別)して、ユーザ名コンフィギュレーション サブモードを開始します。 |
ステップ 3 | 次のいずれかを実行します。
例: RP/0/RSP0/CPU0:router(config-un)# password 0 pwd1 または RP/0/RSP0/CPU0:router(config-un)# secret 0 sec1 |
ステップ 2 で指定したユーザのパスワードを指定します。
|
ステップ 4 | group group-name 例: RP/0/RSP0/CPU0:router(config-un)# group sysadmin |
ステップ 2 で指定したユーザ名を usergroup コマンドで定義済みのユーザ グループに割り当てます。 |
ステップ 5 | ステップ 2 で指定したユーザに関連付けられた各ユーザ グループで、ステップ 4 を繰り返します。 | — |
ステップ 6 | 次のいずれかのコマンドを使用します。
例:
RP/0/RSP0/CPU0:router(config)# end または
RP/0/RSP0/CPU0:router(config)# commit |
設定変更を保存します。 |
ユーザのフル セットの設定が完了したら、RADIUS サーバ通信または TACACS+ サーバを使用するようにルータを設定します(RADIUS サーバ通信のルータの設定またはTACACS+ サーバの設定の項を参照)。
ルータと RADIUS サーバの通信を設定します。
通常、RADIUS ホストは、シスコ(CiscoSecure ACS)、Livingston、Merit、Microsoft、または他のソフトウェア プロバイダーの RADIUS サーバ ソフトウェアを実行するマルチユーザ システムです。 RADIUS サーバとの通信のためにルータを設定するには、次のような要素があります。
RADIUS セキュリティ サーバは、ホスト名または IP アドレス、ホスト名と特定のユーザ データグラム プロトコル(UDP)ポート番号、または IP アドレスおよび特定の UDP ポート番号により識別されます。 固有の識別情報は、IP アドレスと UDP ポート番号の組み合わせで構成されます。これにより、RADIUS ホストとして定義されているさまざまなポートが、固有の AAA サービスを提供できるようになります。 つまり、この固有識別情報を使用して、ある IP アドレスに位置する 1 台のサーバ上に複数の UDP ポートが存在する場合、それぞれの UDP ポートに対して RADIUS 要求を送信できます。 同じ RADIUS サーバ上の異なる 2 つのホスト エントリに同じサービス(たとえばアカウンティング)を設定した場合、2 番めに設定したホスト エントリは、最初に設定したホスト エントリの自動スイッチオーバー バックアップとして動作します。 この場合、最初のホスト エントリがアカウンティング サービスを提供できなかった場合、ネットワーク アクセス サーバは同じ装置上でアカウンティング サービス用に設定されている 2 番めのホスト エントリを試行します (試行される RADIUS ホスト エントリの順番は、設定されている順序に従います)。
RADIUS サーバと Cisco ルータは、共有秘密テキスト ストリングを使用してパスワードを暗号化し、応答を交換します。RADIUS を設定して AAA セキュリティ コマンドを使用するには、RADIUS サーバ デーモンを実行するホストと、ルータと共有する秘密テキスト(キー)ストリングを指定する必要があります。
タイムアウト値、再送信値、および暗号キー値には、すべての RADIUS サーバを対象にしたグローバル設定、サーバ別設定、またはグローバル設定とサーバ別設定の組み合わせを使用できます。 すべての RADIUS サーバとルータとの通信にこのようなグローバル設定を適用するには、radius-server timeout、radius-server retransmit、および radius-server key という 3 つの固有なグローバル コンフィギュレーション コマンドを使用します。 特定の RADIUS サーバにこれらの値を適用するには、radius-server host コマンドをグローバル コンフィギュレーション モードで使用します。
(注) |
同じシスコ製ネットワーク アクセス サーバで、タイムアウト、再送信、およびキー値のコマンドを同時に設定(グローバル設定およびサーバ別設定)できます。 ルータにグローバル機能とサーバ別機能の両方を設定する場合、サーバ別のタイマー、再送信、およびキー値のコマンドの方が、グローバルのタイマー、再送信、およびキー値のコマンドよりも優先されます。 |
1. configure
2. radius-server host {hostname | ip-address} [auth-port port-number] [acct-port port-number] [timeout seconds] [retransmit retries] [key string]
3. radius-server retransmit retries
4. radius-server timeout seconds
5. radius-server key {0 clear-text-key | 7 encrypted-key | clear-text-key}
6. radius source-interface type instance [vrf vrf-id]
7. 設定する各外部サーバで、ステップ 2~ステップ 6 を繰り返します。
9. show radius
コマンドまたはアクション | 目的 | |||
---|---|---|---|---|
ステップ 1 | configure 例:
RP/0/RSP0/CPU0:router# configure |
グローバル コンフィギュレーション モードを開始します。 |
||
ステップ 2 | radius-server host {hostname | ip-address} [auth-port port-number] [acct-port port-number] [timeout seconds] [retransmit retries] [key string] 例: RP/0/RSP0/CPU0:router(config)# radius-server host host1 |
リモート RADIUS サーバ ホストのホスト名または IP アドレスを指定します。
|
||
ステップ 3 | radius-server retransmit retries 例: RP/0/RSP0/CPU0:router(config)# radius-server retransmit 5 |
Cisco IOS XR ソフトウェア で RADIUS サーバ ホストのリストを検索する回数を指定します。 |
||
ステップ 4 | radius-server timeout seconds 例: RP/0/RSP0/CPU0:router(config)# radius-server timeout 10 |
タイムアウトになるまでルータがサーバ ホストの応答を待機する秒数を設定します。 |
||
ステップ 5 | radius-server key {0 clear-text-key | 7 encrypted-key | clear-text-key} 例: RP/0/RSP0/CPU0:router(config)# radius-server key 0 samplekey |
ルータおよび RADIUS デーモン間のすべての RADIUS コミュニケーションの認証キーおよび暗号キーを指定します。 |
||
ステップ 6 | radius source-interface type instance [vrf vrf-id] 例: RP/0/RSP0/CPU0:router(config)# radius source-interface GigabitEthernet 0/3/0/1 |
(任意)RADIUS で、すべての発信 RADIUS パケットに指定のインターフェイスまたはサブインターフェイスの IP アドレスが使用されるようにします。
vrf キーワードは、VRF 単位で仕様をイネーブルにします。 |
||
ステップ 7 | 設定する各外部サーバで、ステップ 2~ステップ 6 を繰り返します。 | — | ||
ステップ 8 | 次のいずれかのコマンドを使用します。
例:
RP/0/RSP0/CPU0:router(config)# end または
RP/0/RSP0/CPU0:router(config)# commit |
設定変更を保存します。 |
||
ステップ 9 | show radius 例: RP/0/RSP0/CPU0:router# show radius |
(任意)システムに設定されている RADIUS サーバの情報を表示します。 |
RADIUS サーバとの通信のためにルータを設定した後は、RADIUS サーバ グループを設定します。 (RADIUS サーバ グループの設定の項を参照)。
この作業では、RADIUS Dead-Server Detection 機能を設定します。
RADIUS Dead-Server Detection 機能を使用すると、RADIUS サーバをデッド状態と指定するために使用する条件を設定および決定できます。 条件が明示的に設定されていない場合は、条件は未処理のトランザクションの数に基づいて動的に計算されます。 RADIUS Dead-Server Detection を設定すると、応答を停止している RADIUS サーバが即時検出されます。 この未応答 RADIUS サーバの即時検出、動きが鈍いサーバの誤検出の回避、デッド状態とライブ状態を繰り返す現象の回避が有効になると、デッドタイムが短くなり、パケット処理が高速になります。
ルータが RADIUS サーバから有効なパケットを最後に受け取ってから RADIUS サーバがデッド状態と指定されるまでに経過する必要がある最低時間を秒単位で設定することができます。 ルータが起動してからパケットの受信がなく、タイムアウトになると、時間基準は満たされたものとして処理されます。
さらに、RADIUS サーバがデッド状態と指定されるまでにルータで発生する必要がある連続タイムアウト回数を設定することもできます。 サーバが認証とアカウンティングの両方を実行する場合、両方の種類のパケットがこの回数に含まれます。 正しく作成されていないパケットは、タイムアウトになっているものとしてカウントされます。 カウントされるのは再転送だけで、最初の転送はカウントされません。 たとえば、各タイムアウトで 1 回の再送信が送信されます。
(注) |
時間の条件と試行回数の条件の両方を満たしていないと、サーバはデッド状態と指定されません。 |
radius-server deadtime コマンドは、サーバがデッド状態、デッド状態のままと指定される時間を分単位で指定します。この時間が経過すると、応答が受信されない場合でも、稼働中として指定されます。 デッド条件が設定されていても、radius-server deadtime コマンドが設定されない限り、サーバはモニタされません。
1. configure
2. radius-server deadtime minutes
3. radius-server dead-criteria time seconds
4. radius-server dead-criteria tries tries
6. show radius dead-criteria host ip-addr [auth-port auth-port] [acct-port acct-port]
Per VRF AAA 機能を使用すると、AAA サービスを VPN VPN ルーティングおよび転送(VRF)インスタンスに基づかせることができます。 プロバイダー エッジ(PE)または仮想ホーム ゲートウェイ(VHG)は、カスタマーの RADIUS サーバと通信します。このサーバは、カスタマーの VPN と関連付けられているため、RADIUS プロキシを介する必要はありません。 RADIUS プロキシを使用する必要がないため、ISP は、VPN による提供サービスをより効率的に拡張でき、カスタマーにさらに柔軟性を提供できます。
インターネット技術特別調査委員会(IETF)ドラフト標準には、ネットワーク アクセス サーバと RADIUS サーバの間でベンダー固有属性(属性 26)を使用してベンダー固有の情報を伝達する方法が規定されています。 属性 26 はベンダー固有属性をカプセル化します。このため、ベンダーは一般的な用途に適さない独自の拡張属性をサポートできます。
Cisco IOS XR ソフトウェアの RADIUS 実装は、この仕様で推奨される形式を使用して、1 つのベンダー固有オプションをサポートしています。 シスコのベンダー ID は 9 で、サポートするオプションはベンダー タイプ 1、名前は「cisco-av-pair」です。値は次の形式のストリングです。
protocol : attribute sep value *
「protocol」は、特定の認可タイプに使用するシスコのプロトコル属性の値です。 「attribute」および「value」は、シスコの RADIUS 仕様で定義されている適切な属性値(AV)ペアです。「sep」は、必須の属性の場合は「=」、任意指定の属性の場合は「*」です。
次の表で、Per VRF AAA で現在サポートされている VSA について説明します。
VSA 名 |
値の種類 |
説明 |
||
---|---|---|---|---|
|
||||
rad-serv |
string |
サーバおよびサーバのグループの IP アドレス、キー、タイムアウトおよび再転送回数を示します。 次に、VSA 構文を示します。 rad-serv=a.b.c.d [key SomeKey] [auth-port X] [acct-port Y] [retransmit V] [timeout W]. IP アドレス以外、すべてのパラメータはオプションで、任意の順序で発行されます。 オプションのパラメータが指定されていない場合、デフォルト値が使用されます。 キーには、スペースを含めることはできません。「retransmit V」の「V」は、1 ~ 100 の値で、「timeout W」の「W」は 1 ~ 1000 の値です。 |
||
rad-serv-vrf |
string |
RADIUS パケットの転送に使用される VRF の名前を指定します。 VRF 名は、vrf コマンドを介して指定された名前と一致します。 |
VRF ごとの RADIUS サーバ グループを設定します。 VRF ごとの TACACS+ サーバ グループの設定については、TACACS+ サーバ グループの設定を参照してください。
1. configure
2. aaa group server radius group-name
3. server-private {hostname | ip-address} [auth-port port-number] [acct-port port-number] [timeout seconds] [retransmit retries] [key string]
4. vrf vrf-name
TACACS+ サーバを設定します。
ポートが指定されていない場合、標準ポート番号 49 がデフォルトで使用されます。 timeout および key パラメータは、すべての TACACS+ サーバに対してグローバルで指定できます。 timeout パラメータは、AAA サーバが TACACS+ サーバから応答を受信するまでの時間を指定します。 key パラメータは、AAA サーバと TACACS+ サーバ間で共有される認証および暗号キーを指定します。
1. configure
2. tacacs-server host host-name port port-number
3. tacacs-server host host-name timeout seconds
4. tacacs-server host host-name key [0 | 7] auth-key
5. tacacs-server host host-name single-connection
6. tacacs source-interface type instance vrf vrf-name
7. 設定する各外部サーバで、ステップ 2~ステップ 5 を繰り返します。
9. show tacacs
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | configure 例:
RP/0/RSP0/CPU0:router# configure |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | tacacs-server host host-name port port-number 例: RP/0/RSP0/CPU0:router(config)# tacacs-server host 209.165.200.226 port 51 RP/0/RSP0/CPU0:router(config-tacacs-host)# |
TACACS+ ホスト サーバを指定し、オプションでサーバ ポート番号を指定します。 |
ステップ 3 | tacacs-server host host-name timeout seconds 例: RP/0/RSP0/CPU0:router(config-tacacs-host)# tacacs-server host 209.165.200.226 timeout 30 RP/0/RSP0/CPU0:router(config)# |
TACACS+ ホスト サーバを指定し、オプションで、AAA サーバが TACACS+ サーバからの応答を待機する時間の長さを設定するタイムアウト値を指定します。 |
ステップ 4 | tacacs-server host host-name key [0 | 7] auth-key 例: RP/0/RSP0/CPU0:router(config)# tacacs-server host 209.165.200.226 key 0 a_secret |
TACACS+ ホスト サーバを指定し、オプションで、AAA サーバと TACACS+ サーバ間で共有される認証および暗号キーを指定します。 |
ステップ 5 | tacacs-server host host-name single-connection 例: RP/0/RSP0/CPU0:router(config)# tacacs-server host 209.165.200.226 single-connection |
単一 TCP 接続を介してすべての TACACS+ 要求をこのサーバに多重化するようにルータを設定します。 デフォルトでは、セッションごとに別個の接続が使用されます。 |
ステップ 6 | tacacs source-interface type instance vrf vrf-name 例: RP/0/RSP0/CPU0:router(config)# tacacs source-interface GigabitEthernet 0/4/0/0 vrf abc |
(任意)すべての発信 TACACS+ パケットに対して、選択したインターフェイスの発信元 IP アドレスを指定します。
|
ステップ 7 | 設定する各外部サーバで、ステップ 2~ステップ 5 を繰り返します。 | — |
ステップ 8 | 次のいずれかのコマンドを使用します。
例:
RP/0/RSP0/CPU0:router(config)# end または
RP/0/RSP0/CPU0:router(config)# commit |
設定変更を保存します。 |
ステップ 9 | show tacacs 例: RP/0/RSP0/CPU0:router# show tacacs |
(任意)システムに設定されている TACACS+ サーバの情報を表示します。 |
TACACS+ サーバを設定したら、TACACS+ サーバ グループを設定します (TACACS+ サーバ グループの設定の項を参照)。
この作業では、RADIUS サーバ グループを設定します。
ユーザが 1 つ以上の server コマンドを入力できます。 server コマンドはポート番号とともに外部 RADIUS サーバのホスト名または IP アドレスを指定します。 設定されている場合、このサーバ グループは、AAA 方式リスト(認証、認可またはアカウンティングの設定に使用されます)から参照できます (方式リストの項を参照)。
正常に設定を行うため、外部サーバが設定時にアクセスできる必要があります。
1. configure
2. aaa group server radius group-name
3. server {hostname | ip-address} [auth-port port-number] [acct-port port-number]
4. ステップ 3 で指定したサーバ グループに追加する各外部サーバに対し、ステップ 4 を繰り返します。
5. server-private {hostname | ip-address} [auth-port port-number] [acct-port port-number] [timeout seconds] [retransmit retries] [key string]
6. deadtime minutes
8. show radius server-groups [group-name [detail]]
コマンドまたはアクション | 目的 | |||
---|---|---|---|---|
ステップ 1 | configure 例:
RP/0/RSP0/CPU0:router# configure |
グローバル コンフィギュレーション モードを開始します。 |
||
ステップ 2 | aaa group server radius group-name 例: RP/0/RSP0/CPU0:router(config)# aaa group server radius radgroup1 |
各種サーバ ホストを別個のリストにグループ化し、サーバ グループ コンフィギュレーション モードを開始します。 |
||
ステップ 3 | server {hostname | ip-address} [auth-port port-number] [acct-port port-number] 例: RP/0/RSP0/CPU0:router(config-sg-radius)# server 192.168.20.0 |
外部 RADIUS サーバのホスト名または IP アドレスを指定します。 |
||
ステップ 4 | ステップ 3 で指定したサーバ グループに追加する各外部サーバに対し、ステップ 4 を繰り返します。 | — | ||
ステップ 5 | server-private {hostname | ip-address} [auth-port port-number] [acct-port port-number] [timeout seconds] [retransmit retries] [key string] 例: RP/0/RSP0/CPU0:router(config-sg-radius)# server-private 10.10.130.2 auth-port 1600
acct-port 1666 key code |
グループ サーバに対するプライベート RADIUS サーバの IP アドレスを設定します。
|
||
ステップ 6 | deadtime minutes 例: RP/0/RSP0/CPU0:router(config-sg-radius)# deadtime 1 |
RADIUS サーバ グループ レベルでデッドタイム値を設定します。 RADIUS サーバ グループ radgroup1 が認証要求への応答に失敗したときの deadtime コマンドに対して、1 分のデッドタイムを指定する例を示します。
|
||
ステップ 7 | 次のいずれかのコマンドを使用します。
例:
RP/0/RSP0/CPU0:router(config)# end または
RP/0/RSP0/CPU0:router(config)# commit |
設定変更を保存します。 |
||
ステップ 8 | show radius server-groups [group-name [detail]] 例: RP/0/RSP0/CPU0:router# show radius server-groups |
(任意)システムで設定されている各 RADIUS サーバ グループの情報を表示します。 |
RADIUS サーバ グループを設定したら、認証、認可およびアカウンティングを設定して方式リストを定義します (AAA 方式リストの設定の項を参照)。
TACACS+ サーバ グループを設定します。
1 つ以上の server コマンドを入力できます。 server コマンドは、外部 TACACS+ サーバのホスト名または IP アドレスを指定します。 設定後は、このサーバ グループは、AAA 方式リスト(認証、認可またはアカウンティングの設定に使用されます)から参照できます (方式リストの項を参照)。
正常に設定を行うため、外部サーバが設定時にアクセスできる必要があります。 グローバルおよび VRF 設定の両方に同じ IP アドレスを設定するときは、server-private パラメータが必要です。
1. configure
2. aaa group server tacacs+ group-name
3. server {hostname | ip-address}
4. ステップ 2 で指定したサーバ グループに追加する各外部サーバに対し、ステップ 3 を繰り返します。
5. server-private {hostname | ip-address} [port port-number] [timeout seconds] [key string]
6. vrf vrf-name
8. show tacacs server-groups
コマンドまたはアクション | 目的 | |||
---|---|---|---|---|
ステップ 1 | configure 例:
RP/0/RSP0/CPU0:router# configure |
グローバル コンフィギュレーション モードを開始します。 |
||
ステップ 2 | aaa group server tacacs+ group-name 例: RP/0/RSP0/CPU0:router(config)# aaa group server tacacs+ tacgroup1 |
各種サーバ ホストを別個のリストにグループ化し、サーバ グループ コンフィギュレーション モードを開始します。 |
||
ステップ 3 | server {hostname | ip-address} 例: RP/0/RSP0/CPU0:router(config-sg-tacacs+)# server 192.168.100.0 |
外部 TACACS+ サーバのホスト名または IP アドレスを指定します。 |
||
ステップ 4 | ステップ 2 で指定したサーバ グループに追加する各外部サーバに対し、ステップ 3 を繰り返します。 | — | ||
ステップ 5 | server-private {hostname | ip-address} [port port-number] [timeout seconds] [key string] 例: RP/0/RSP0/CPU0:router(config-sg-tacacs+)# server-private 10.1.1.1 key a_secret |
グループ サーバに対するプライベート TACACS+ サーバの IP アドレスを設定します。
|
||
ステップ 6 | vrf vrf-name 例: RP/0/RSP0/CPU0:router(config-sg-tacacs+)# vrf abc |
AAA TACACS+ サーバ グループのバーチャル プライベート ネットワーク(VPN)ルーティングおよび転送(VRF)参照情報を設定します。 |
||
ステップ 7 | 次のいずれかのコマンドを使用します。
例:
RP/0/RSP0/CPU0:router(config)# end または
RP/0/RSP0/CPU0:router(config)# commit |
設定変更を保存します。 |
||
ステップ 8 | show tacacs server-groups 例: RP/0/RSP0/CPU0:router# show tacacs server-groups |
(任意)システムで設定されている各 TACACS+ サーバ グループの情報を表示します。 |
TACACS+ サーバ グループを設定したら、認証、認可およびアカウンティングを設定して方式リストを定義します (AAA 方式リストの設定の項を参照)。
AAA データは、さまざまなデータ ソースに保存できます。 AAA 設定は、方式リストを使用して、AAA データのソースの優先順位を定義します。 AAA は、複数の方式リストを定義でき、アプリケーション(ログインなど)は、これらのいずれかを選択できます。 たとえば、コンソールおよび AUX ポートと VTY ポートで異なる方式リストを使用できます。 方式リストが指定されていない場合、アプリケーションは、デフォルトの方式リストを使用します。
ここでは、次の手順について説明します。
認証の方式リストを設定します。
認証は、ユーザ(またはプリンシパル)が検証されるプロセスです。 認証設定は、方式リストを使用して、さまざまなデータ ソースに保存されている、AAA データ ソースの優先順位を定義します。 認証を設定して、複数の方式リストを定義できます。アプリケーションは(ログインなど)、これらのいずれかを選択できます。 たとえば、コンソールおよび AUX ポートと VTY ポートで異なる方式リストを使用できます。 方式リストが指定されていない場合、アプリケーションは、デフォルトの方式リストを使用します。
(注) |
方式リストが有効になるようにするには、アプリケーションは明示的に定義済みの方式リストを示す必要があります。 |
認証は、login authentication ライン コンフィギュレーション サブモード コマンドを使用して、TTY 回線に適用できます。
aaa authentication コマンドを使用して、一連の認証方式、つまり方式リストを作成します。 方式リストは、シーケンスで照会される認証方式(RADIUS、TACACS+ など)を説明する単なる名前付きリストです。 方式は次のいずれかです。
方式が、サーバ グループではなく、RADIUS または TACACS+ サーバの場合、RADIUS または TACACS+ サーバは、設定されている RADIUS および TACACS+ サーバのグローバル プールから、設定順に選択されます。 このグローバル プールから選択されるサーバは、サーバ グループに追加できるサーバです。
後続の認証方式は、初期方式がエラーを返すか、要求が拒否された場合だけ使用されます。
(注) |
デフォルトの方式リストは、デフォルト以外の名前付き方式リストが明示的に設定されている場合(この場合は名前付き方式リストが適用される)を除き、認証のすべてのインターフェイスに適用されます。 group radius、group tacacs+、group group-name 形式を aaa authentication コマンドに指定すると、以前に定義した RADIUS サーバまたは TACACS+ サーバのセットを示します。 ホスト サーバを設定するには、radius-server host コマンドまたは tacacs-server host コマンドを使用します。 サーバの名前付きグループを作成するには、aaa group server radius コマンドまたは aaa group server tacacs+ コマンドを使用します。 |
1. configure
2. aaa authentication {login | ppp} {default | list-name | remote} method-list
4. 設定されるすべての認証方式リストに対して、ステップ 1 ~ 3 を繰り返します。
コマンドまたはアクション | 目的 | |||
---|---|---|---|---|
ステップ 1 | configure 例:
RP/0/RSP0/CPU0:router# configure |
グローバル コンフィギュレーション モードを開始します。 |
||
ステップ 2 | aaa authentication {login | ppp} {default | list-name | remote} method-list 例:
RP/0/RSP0/CPU0:router(config)# aaa authentication login default group tacacs+
|
一連の認証方式、つまり方式リストを作成します。
|
||
ステップ 3 | 次のいずれかのコマンドを使用します。
例:
RP/0/RSP0/CPU0:router(config)# end または
RP/0/RSP0/CPU0:router(config)# commit |
設定変更を保存します。 |
||
ステップ 4 | 設定されるすべての認証方式リストに対して、ステップ 1 ~ 3 を繰り返します。 | — |
認証方式リストを設定したら、認可方式リストを設定します。 (認可方式リストの設定の項を参照)。
認可方式リストを設定します。
(注) |
radius キーワードを aaa authorization コマンドで設定できます。 |
許可方式リストによって、許可の実行方法とこれらの方式の実行順序が定義されます。 方式リストは、シーケンスで照会される認可方式(TACACS+ など)を説明する単なる名前付きリストです。 方式リストを使用すると、認可に使用するセキュリティ プロトコルを 1 つ以上指定できるため、最初の方式が失敗した場合のバックアップ システムを確保できます。 Cisco IOS XR ソフトウェアでは、特定のネットワーク サービスに対してユーザを許可するために、リスト内の最初の方式が使用されます。この方式が応答に失敗すると、Cisco IOS XR ソフトウェアでは方式リスト内の次の方式が選択されます。 このプロセスは、リスト内の許可方式との通信に成功するまで、または定義されている方式を使い果たすまで続行されます。
(注) |
Cisco IOS XR ソフトウェアでは、前の方式から応答がないまたは任意のエラー応答があった(障害ではない)場合にだけ、次に指定された方式を使って許可が試みられます。 このサイクルの任意の時点で認可が失敗した場合(つまり、セキュリティ サーバまたはローカル ユーザ名データベースからユーザ サービスの拒否応答が返される場合)、認可プロセスは停止し、その他の認可方式は試行されません。 |
方式リストは、要求されている許可のタイプによって異なります。 Cisco IOS XR ソフトウェアは、次の 4 つのタイプの AAA 許可をサポートします。
(注) |
「コマンド」の許可は、認証時に設定されたタスク プロファイルに基づく「タスクベース」の許可とは異なります。 |
(注) |
exec キーワードは、障害マネージャ サービスの許可に使用されなくなりました。 障害マネージャ サービスの許可には、eventmanager キーワード(障害マネージャ)を使用します。 exec キーワードは、EXEC の許可に使用します。 |
名前付き方式リストを作成すると、指定した許可タイプに対して特定の許可方式リストが定義されます。 方式リストを定義した場合、定義した方式のいずれかを実行するには、まず特定の回線またはインターフェイスに方式リストを適用する必要があります。 新しいメソッド リストを作成するときに、TACACS+ などの方式名を使用しないでください。
ライン テンプレートにコマンド認可方式リストを適用した結果の「コマンド」の許可とは別個であり、ルータで自動的に実行される「タスクベース」の許可に加えて実行される方式です。 コマンドの許可のデフォルト動作は none です。 デフォルトの方式リストが設定されていても、その方式リストは、使用するためのライン テンプレートに追加する必要があります。
aaa authorization commands コマンドにより、許可プロセスの一環として、一連の属性値(AV)のペアを含む要求パケットが TACACS+ デーモンに送信されます。 デーモンは、次のいずれかのアクションを実行できます。
aaa authorization コマンドを使用して、認可パラメータを設定し、各回線またはインターフェイスで使用できる特定の認可方式を定義する名前付きの方式リストを作成します。
Cisco IOS XR ソフトウェアは、次の許可方式をサポートします。
1. configure
2. aaa authorization {commands | eventmanager | exec | network} {default | list-name} {none | local | group {tacacs+ | radius | group-name}}
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | configure 例:
RP/0/RSP0/CPU0:router# configure |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | aaa authorization {commands | eventmanager | exec | network} {default | list-name} {none | local | group {tacacs+ | radius | group-name}} 例:
RP/0/RSP0/CPU0:router(config)# aaa authorization commands listname1 group tacacs+
|
一連の認可方式、つまり方式リストを作成します。
|
ステップ 3 | 次のいずれかのコマンドを使用します。
例:
RP/0/RSP0/CPU0:router(config)# end または
RP/0/RSP0/CPU0:router(config)# commit |
設定変更を保存します。 |
認可方式リストを設定したら、アカウンティング方式リストを設定します (アカウンティング方式リストの設定の項を参照)。
アカウンティング方式リストを設定します。
(注) |
radius キーワードを aaa accounting コマンドで設定できます。 |
現在、Cisco IOS XR ソフトウェアは、アカウンティングで TACACS+ および RADIUS 方式の両方をサポートしています。 ルータは、アカウンティング レコードの形式で TACACS+ または RADIUS セキュリティ サーバにユーザ アクティビティを報告します。 各アカウンティング レコードは、アカウンティング AV ペアが含まれ、セキュリティ サーバ上で保管されます。
アカウンティング方式リストには、アカウンティングの実行方法が定義されます。このリストを使用して、特定のタイプのアカウンティング サービスに固有の回線またはインターフェイスに使用する特定のセキュリティ プロトコルを指定できます。 方式リストの名前を付ける場合、TACACS+ などの方式の名前を使用しないでください。
最小のアカウンティングの場合、stop-only キーワードを指定して、要求されたユーザ プロセスの終了時に「stop accounting」通知を送信します。 最小より大きいアカウンティングの場合、start-stop キーワードを使用できます。これにより、外部 AAA サーバが、要求されたプロセスの開始時に「start accounting」通知を送信し、プロセスの終了時に「stop accounting」通知を送信します。 また、aaa accounting update コマンドを使用して、累積情報による更新レコードを定期的に送信できます。 アカウンティング レコードは、TACACS+ または RADIUS サーバだけに格納されます。
AAA アカウンティングをアクティブにすると、ルータは、これらの属性をアカウンティング レコードとして報告します。そのアカウンティング レコードは、セキュリティ サーバ上のアカウンティング ログに格納されます。
aaa accounting コマンドを使用して、各回線またはインターフェイスに使用できる特定のアカウンティング方式を定義するデフォルトまたは名前付き方式リストを作成します。
Cisco IOS XR ソフトウェアは次のアカウンティング方式をサポートします。
1. configure
2. 次のいずれかを実行します。
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | configure 例:
RP/0/RSP0/CPU0:router# configure |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | 次のいずれかを実行します。
例:
RP/0/RSP0/CPU0:router(config)# aaa accounting commands default stop-only group tacacs+
|
一連のアカウンティング方式、つまり方式リストを作成します。
|
ステップ 3 | 次のいずれかのコマンドを使用します。
例:
RP/0/RSP0/CPU0:router(config)# end または
RP/0/RSP0/CPU0:router(config)# commit |
設定変更を保存します。 |
方式リストを設定したら、これらの方式リストを適用します (アプリケーションの方式リストの適用の項を参照)。
アカウンティング サーバに送信される定期的中間アカウンティング レコードをイネーブルにします。 aaa accounting update コマンドをアクティブにすると、Cisco IOS XR ソフトウェアは、システム上のすべてのユーザに中間アカウンティング レコードを発行します。
(注) |
中間アカウンティング レコードは、インターネット キー交換(IKE)アカウンティングなど、ネットワーク セッションだけで生成されます。これは、network キーワードを指定した aaa accounting コマンドで制御されます。 システム、コマンドまたは EXEC アカウンティング セッションでは、中間レコードは生成されません。 |
コマンドまたはアクション | 目的 | |||
---|---|---|---|---|
ステップ 1 | configure 例:
RP/0/RSP0/CPU0:router# configure |
グローバル コンフィギュレーション モードを開始します。 |
||
ステップ 2 | aaa accounting update {newinfo | periodic minutes} 例:
RP/0/RSP0/CPU0:router(config)# aaa accounting update periodic 30
|
アカウンティング サーバに送信される定期的中間アカウンティング レコードをイネーブルにします。
|
||
ステップ 3 | 次のいずれかのコマンドを使用します。
例:
RP/0/RSP0/CPU0:router(config)# end または
RP/0/RSP0/CPU0:router(config)# commit |
設定変更を保存します。 |
認可およびアカウンティング サービスの方式リストを設定したら、これらのサービスを使用するアプリケーション(コンソール、vty、補助など)に、設定した方式リストを適用できます。 方式リストの適用は、AAA 認証およびアカウンティングをイネーブルにすることで実行します。
ここでは、次の手順について説明します。
AAA 認可を特定の回線または回線のグループに対してイネーブルにします。
aaa authorization コマンドを使用して、特定のタイプの認可に対して名前付き認可方式リストを定義(またはデフォルトの方式リストを使用)したあと、認可を実行する該当の回線に、定義済みのリストを適用する必要があります。 authorization コマンドを使用して、指定の方式リスト(または、方式リストを指定していない場合はデフォルトの方式リスト)を選択した回線または回線グループに適用します。
1. configure
2. line {aux | console | default | template template-name}
3. authorization {commands | exec} {default | list-name}
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | configure 例:
RP/0/RSP0/CPU0:router# configure |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | line {aux | console | default | template template-name} 例:
RP/0/RSP0/CPU0:router(config)# line console
|
回線テンプレート コンフィギュレーション モードを開始します。 |
ステップ 3 | authorization {commands | exec} {default | list-name} 例:
RP/0/RSP0/CPU0:router(config-line)# authorization commands listname5
|
AAA 認可を特定の回線または回線のグループに対してイネーブルにします。
|
ステップ 4 | 次のいずれかのコマンドを使用します。
例:
RP/0/RSP0/CPU0:router(config)# end または
RP/0/RSP0/CPU0:router(config)# commit |
設定変更を保存します。 |
AAA 認可をイネーブルにして認可方式リストを適用したら、AAA アカウンティングをイネーブルにしてアカウンティング方式リストを適用します (アカウンティング サービスのイネーブル化の項を参照)。
アカウンティング サービスを特定の回線または回線のグループに対してイネーブルにします。
1. configure
2. line {aux | console | default | template template-name}
3. accounting {commands | exec} {default | list-name}
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | configure 例:
RP/0/RSP0/CPU0:router# configure |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | line {aux | console | default | template template-name} 例:
RP/0/RSP0/CPU0:router(config)# line console
|
回線テンプレート コンフィギュレーション モードを開始します。 |
ステップ 3 | accounting {commands | exec} {default | list-name} 例:
RP/0/RSP0/CPU0:router(config-line)# accounting commands listname7
|
AAA アカウンティングを特定の回線または回線のグループに対してイネーブルにします。
|
ステップ 4 | 次のいずれかのコマンドを使用します。
例:
RP/0/RSP0/CPU0:router(config)# end または
RP/0/RSP0/CPU0:router(config)# commit |
設定変更を保存します。 |
AAA アカウンティング サービスをイネーブルにしてアカウンティング方式リストを適用したら、ログイン パラメータを設定します (ログイン パラメータの設定の項を参照)。
サーバがログインの応答を待機する間隔を設定します。
1. configure
2. line template template-name
3. timeout login response seconds
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | configure 例:
RP/0/RSP0/CPU0:router# configure |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | line template template-name 例:
RP/0/RSP0/CPU0:router(config)# line template alpha
|
設定する回線を指定して、回線テンプレート コンフィギュレーション モードを開始します。 |
ステップ 3 | timeout login response seconds 例:
RP/0/RSP0/CPU0:router(config-line)# timeout login response 20
|
サーバがログインの応答を待つ時間を設定します。 |
ステップ 4 | 次のいずれかのコマンドを使用します。
例:
RP/0/RSP0/CPU0:router(config)# end または
RP/0/RSP0/CPU0:router(config)# commit |
設定変更を保存します。 |
ここでは、次の設定例について説明します。
次に、AAA サービスを設定する例を示します。
認証方式リスト vty-authen が設定されます。 この例では、設定されたすべての TACACS+ サーバのリストを認証に使用する方式リストを指定します。 その方式が失敗した場合、ローカル ユーザ名データベース方式が認証に使用されます。
configure aaa authentication login vty-authen group tacacs+ local
PPP のデフォルトの方式リストは、ローカル方式を使用するように設定されます。
aaa authentication ppp default local
ユーザ名 user1 はログインのために作成され、安全なログイン パスワードが割り当てられ、user1 はルート システムのユーザになります。 ユーザ名 user2 に類似の設定を設定します。
username user1 secret lab group root-system exit username user2 secret lab exit
tga という名前のタスク グループが作成され、タスクが tga に追加され、uga という名前のユーザ グループが作成され、タスク グループ tga から権限を継承するように uga が設定されます。 説明がタスク グループ uga に追加されます。
taskgroup tga task read bgp task write ospf exit usergroup uga taskgroup tga description usergroup uga exit
ユーザ名 user2 が、ユーザ グループ uga から継承されます。
username user2 group uga exit
3 台の TACACS サーバが設定されます。
tacacs-server host 10.1.1.1 port 1 key abc tacacs-server host 10.2.2.2 port 2 key def tacacs-server host 10.3.3.3 port 3 key ghi
priv5 という名前のユーザ グループが作成されます。このグループは、TACACS+ 方式を使用して認証されたユーザに使用され、外部 TACACS+ デーモンのコンフィギュレーション ファイルのエントリには特権レベル 5 が設定されます。
usergroup priv5 taskgroup operator exit
認可方式リスト vty-author が設定されます。 次に、設定されているすべての TACACS+ サーバのリストを使用してコマンド認可が実行されるように指定する例を示します。
aaa authorization commands vty-author group tacacs+
アカウンティング方式リスト vty-acct が設定されます。 次に、設定されているすべての TACACS+ サーバのリストを使用して start-stop コマンド アカウンティングが実行されるように指定する例を示します。
aaa accounting commands vty-acct start-stop group tacacs+
TACACS+ 認証では、たとえば、特権レベル 8 が返され、ローカル ユーザ グループ priv8 が存在せず、同じ名前のローカル ユーザも存在しない場合、taskgroup-name 引数で tga を指定した aaa default-taskgroup コマンドを使用すると、このようなユーザにタスク グループ tga のタスクマップが提供されます。
aaa default-taskgroup tga
回線テンプレート vty に対し、回線の認証に使用する回線パスワードが割り当てられ、回線の認証(使用する場合)のために割り当てられるグループであるユーザ グループ uga が作成され、vty-authen、vty-author、vty-acct がそれぞれ作成されます。これらは認証、許可、アカウンティングに使用する方式リストです。
line template vty password lab users group uga login authentication vty-authen authorization commands vty-author accounting commands vty-acct exit
abc という名前の TACACS+ サーバ グループが作成され、すでに設定済みの TACACS+ サーバがグループに追加されます。
aaa group server tacacs+ abc
server 10.3.3.3
exit
ここでは、AAA サービスの設定に関連する参考資料について説明します。
関連項目 |
マニュアル タイトル |
---|---|
AAA サービス コマンド:コマンド構文の詳細、コマンド モード、コマンド履歴、デフォルト設定、使用上のガイドライン、および例 |
の「Authentication, Authorization, and Accounting Commands on Cisco ASR 9000 シリーズ ルータ」 |
標準 |
タイトル |
---|---|
この機能でサポートされる新規の標準または変更された標準はありません。また、既存の標準のサポートは変更されていません。 |
— |
MIB |
MIB のリンク |
---|---|
— | Cisco IOS XR ソフトウェアを使用している MIB を特定してダウンロードするには、次の URL にある Cisco MIB Locator を使用し、[Cisco Access Products] メニューからプラットフォームを選択します。http://cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml |
RFC |
タイトル |
---|---|
この機能によりサポートされた新規 RFC または改訂 RFC はありません。またこの機能による既存 RFC のサポートに変更はありません。 |
— |
説明 |
リンク |
---|---|
シスコのテクニカル サポート Web サイトでは、製品、テクノロジー、ソリューション、技術的なヒント、およびツールへのリンクなどの、数千ページに及ぶ技術情報が検索可能です。 Cisco.com に登録済みのユーザは、このページから詳細情報にアクセスできます。 |