Catalyst 6500 シリーズ スイッチ/Cisco 7600 シリーズ ルータ Firewall Services Module コンフィギュレーション ガイド
AAAの設定
AAAの設定
発行日;2012/02/03 | ドキュメントご利用ガイド | ダウンロード ; この章pdf | フィードバック

目次

AAAの設定

AAAの概要

AAAのパフォーマンス

認証の概要

許可の概要

アカウンティングの概要

AAAサーバおよびローカル データベースのサポート

ローカル データベースの設定

AAAサーバの識別

CLIアクセスの認証の設定

イネーブル モード アクセス認証の設定

enableコマンドの認証の設定

loginコマンド使用時のユーザの認証

コマンド許可の設定

コマンド許可の概要

ローカル コマンド許可の設定

ローカル コマンド許可の前提条件

コマンド イネーブル レベルのデフォルト設定

コマンド イネーブル レベルの指定および許可のイネーブル化

コマンド イネーブル レベルの表示

TACACS+コマンド許可の設定

TACACS+コマンド許可の前提条件

TACACS+サーバ上でのコマンドの設定

TACACS+コマンド許可のイネーブル化

現在のログイン ユーザの表示

ロックアウトからの回復

ネットワーク アクセスの認証の設定

認証の概要

ネットワーク アクセス認証のイネーブル化

Webクライアントのセキュア認証のイネーブル化

ネットワーク アクセスの許可の設定

TACACS+許可の設定

RADIUS許可の設定

RADIUSサーバからユーザ単位のACLをダウンロードする設定

RADIUSサーバからユーザ単位のACL名をダウンロードする設定

ネットワーク アクセスのアカウンティングの設定

AAAの設定

Authentication、Authorization、Accounting(AAA;認証、許可、アカウンティング)は、Firewall Services Module(FWSM)に、ユーザの識別、ユーザが実行できる作業、およびユーザが実行した作業を通知する機能です。この章で説明する内容は、次のとおりです。

「AAAの概要」

「ローカル データベースの設定」

「AAAサーバの識別」

「CLIアクセスの認証の設定」

「イネーブル モード アクセス認証の設定」

「コマンド許可の設定」

「現在のログイン ユーザの表示」

「ロックアウトからの回復」

「ネットワーク アクセスの認証の設定」

「ネットワーク アクセスの許可の設定」

「ネットワーク アクセスのアカウンティングの設定」


) システム全体で許可されるAAAルールの最大数は、「ルールの制限」を参照してください。


AAAの概要

AAAは、ACL(アクセス制御リスト)だけを使用する場合に比べて、ユーザ アクセスに関する保護および制御をさらに強化します。たとえば、すべての外部ユーザに対して、DMZ(非武装地帯)ネットワーク上のサーバへのTelnetアクセスを許可するACLを作成したとします。サーバへのアクセスを一部のユーザだけに限定したくても、対象ユーザのIPアドレスが不明な場合には、AAAをイネーブルにして、認証または許可されたユーザだけにFWSMを通過させることができます(Telnetサーバは独自の認証を行いますが、FWSMは不正ユーザによるサーバへのアクセス試行を防止します)。

認証は単独で使用することも、許可およびアカウンティングと併用することもできます。許可を適用するには、最初にユーザを認証する必要があります。アカウンティングは単独で使用することも、認証および許可と併用することもできます。

ここでは、次の内容について説明します。

「AAAのパフォーマンス」

「認証の概要」

「許可の概要」

「アカウンティングの概要」

「AAAサーバおよびローカル データベースのサポート」

AAAのパフォーマンス

FWSMでは、「カットスルー プロキシ」を採用することによって、従来のプロキシ サーバに比べて速度パフォーマンスが著しく改善されています。従来のプロキシ サーバは、Open Systems Interconnection(OSI;開放型システム間相互接続)モデルのアプリケーション レイヤですべてのパケットを分析するので、パフォーマンスが損なわれます。FWSMのカットスルー プロキシは、最初にアプリケーション レイヤでユーザにチャレンジを実行したあと、標準のRemote Authentication Dial-In User Service(RADIUS)、Terminal Access Controller Access Control System Plus(TACACS+)、またはローカル データベースを使用して認証を行います。FWSMでポリシーが確認されてからセッション フローに移行するので、FWSMではすべてのトラフィックが2つのノード間で直接かつ迅速に伝送され、セッション ステート情報も保持されます。

認証の概要

認証では、有効なユーザ名とパスワードを要求することによって、アクセスを制御できます。FWSMでは、次の項目の認証を設定できます。

次のセッションを含む、FWSMへのすべての管理接続:

Telnet

SSH

PDM(HTTPSを使用)

VPN管理アクセス(VPNでのAAAの使用方法の詳細については、 VPNクライアント アクセスの設定を参照)

enable コマンド

FWSM経由のネットワーク アクセス

特定のIPアドレスのユーザに必要な認証は、認証セッションがタイムアウトになるまでは、すべてのルールとタイプに対して1回だけです(タイムアウトの値については、『 Catalyst 6500 Series Switch and Cisco 7600 Series Router Firewall Services Module Command Reference 』の timeout uauth コマンドを参照してください)。たとえば、FWSMにTelnetとFTPの認証を設定した場合、ユーザは最初にTelnetの認証に成功すれば、そのセッションの継続中はFTPの認証を受ける必要はありません。認証セッションの詳細については、「ネットワーク アクセスの認証の設定」を参照してください。

許可の概要

許可では、有効なユーザ名とパスワードによって認証したあと、 各ユーザ のアクセスを制御できます。FWSMでは、次の項目の許可を設定できます。

管理コマンド

FWSM経由のネットワーク アクセス

許可の設定によって、個々のユーザが使用できるサービスとコマンドを制御できます。認証だけを使用する場合、認証したすべてのユーザに対して共通のサービス アクセスが提供されます。

許可する内容を制御する必要がある場合には、広範囲の許可ルールを定義して、詳細な許可を設定できます。たとえば、内部ユーザに外部ネットワーク上の任意サーバへのアクセスを認証し、さらに許可を使用して、特定のユーザがアクセスできる外部サーバを制限できます。

FWSMは、ユーザ単位で最初の16の許可要求をキャッシュします。したがって、ユーザが現在の許可セッション中に同じサービスにアクセスする場合には、FWSMから認証サーバに要求が再送信されることはありません。

アカウンティングの概要

アカウンティングでは、FWSMを通過するトラフィックを追跡できます。トラフィックの認証をイネーブルにした場合は、ユーザ単位でトラフィックをアカウントできます。トラフィックを認証しない場合は、IPアドレス単位でトラフィックをアカウントできます。アカウンティング情報には、セッションの開始時および終了時、AAAクライアント メッセージとユーザ名、セッション中にFWSMを通過したバイト数、使用されたサービス、および各セッションの長さが含まれます。

AAAサーバおよびローカル データベースのサポート

FWSMは、AAAサーバのほか、FWSMに保管されるローカル データベ-スをサポートしています。各タイプのサーバとローカル データベースは、それぞれ異なる機能を提供します( 表 12-1 を参照)。

 

表 12-1 AAAサーバおよびローカル データベースのサポート

サーバ/データ
ベースのタイプ
機能
説明

RADIUS

CLIアクセスのユーザ認証

ユーザがTelnet、SSH、またはHTTPを使用してFWSMにアクセスを試みると、FWSMはRADIUSサーバを使用してユーザ名とパスワードを照合します。

enable コマンドのユーザ認証

ユーザが enable コマンドへのアクセスを試みると、FWSMはRADIUSサーバを使用してユーザ名とパスワードを照合します。

ネットワーク アクセスのユーザ認証

ユーザがFWSM経由でネットワークへのアクセスを試みて、トラフィックが認証ステートメントと一致した場合、FWSMはRADIUSサーバを使用してユーザ名とパスワードを照合します。

ネットワーク アクセスのユーザ認証 ― ダウンロードしたユーザ単位のACL(ダイナミックACL)を使用

このユーザ認証は、認証の設定時に自動的に設定されますが、RADIUSサーバがこの認証をサポートするように設定しておく必要があります。FWSM上でユーザが認証されると、RADIUSサーバからFWSMにダイナミックACLが送信されます。ユーザの特定サービスへのアクセスは、このACLに基づいて許可または拒否されます。認証セッションがタイムアウトになると、このACLはFWSMから削除されます。

ネットワーク アクセスのユーザ認証 ― ダウンロードしたユーザ単位のACL名を使用

このユーザ認証は、認証の設定時に暗黙的に設定されますが、RADIUSサーバがこの認証をサポートするように設定しておく必要があります。FWSM上でユーザが認証されると、RADIUSサーバから、FWSM上ですでに定義されているACLの名前が送信されます。ユーザの特定サービスへのアクセスは、このACLに基づいて許可または拒否されます。複数のユーザに同じACLを指定できます。

VPNクライアント認証

VPNクライアントによるVPN管理アクセスを設定した場合、RADIUSサーバを使用してクライアントを認証できます(詳細については、 VPNクライアント アクセスの設定を参照)。

ユーザ単位またはIPアドレス単位のネットワーク アクセスのアカウンティング

FWSMを通過する任意のトラフィックについて、FWSMからRADIUSサーバにアカウンティング情報を送信できます。

TACACS+

CLIアクセスのユーザ認証

ユーザがTelnet、SSH、またはHTTPを使用してFWSMにアクセスを試みると、FWSMはTACACS+サーバを使用してユーザ名とパスワードを照合します。

enable コマンドのユーザ認証

ユーザが enable コマンドへのアクセスを試みると、FWSMはTACACS+サーバを使用してユーザ名とパスワードを照合します。

ネットワーク アクセスのユーザ認証

ユーザがFWSM経由でネットワークへのアクセスを試みて、トラフィックが認証ステートメントと一致した場合、FWSMはTACACS+サーバを使用してユーザ名とパスワードを照合します。

ネットワーク アクセスのユーザ許可

ユーザが認証後にFWSM上の許可ステートメントと一致した場合、FWSMはTACACS+サーバを使用してユーザのアクセス権限を照合します。

管理コマンドのユーザ許可

TACACS+サーバ上で、CLIアクセスの認証後にユーザまたはグループが使用できるコマンドを設定します。ユーザがCLIから入力したコマンドはすべて、TACACS+サーバによって検証されます。

VPNクライアント認証

VPNクライアントによるVPN管理アクセスを設定した場合、TACACS+サーバを使用してクライアントを認証できます(詳細については、 VPNクライアント アクセスの設定を参照)。

ユーザ単位またはIPアドレス単位のネットワーク アクセスのアカウンティング

FWSMを通過する任意のトラフィックについて、FWSMからTACACS+サーバにアカウンティング情報を送信できます。

ローカル データベース1

CLIアクセスのユーザ認証

ユーザがTelnet、SSH、またはHTTPを使用してFWSMにアクセスを試みると、FWSMはローカル ユーザ データベースを使用してユーザ名とパスワードを照合します。

enable コマンドまたは login コマンドのユーザ認証

ユーザが enable コマンドまたは login コマンドへのアクセスを試みると、FWSMはローカル ユーザ データベースを使用してユーザ名とパスワードを照合します。 login ユーザ認証はデフォルトでオンになっているので、設定する必要はありません。

管理コマンドのユーザ許可

enable コマンドで認証された(または login コマンドでログインした)ユーザは、FWSMにより、ローカル データベースに定義されているイネーブル レベルに設定されます。各コマンドは、FWSM上で0~15のイネーブル レベルに設定できます。

VPNクライアント認証

VPNクライアントによるVPN管理アクセスを設定した場合、ローカル データベースを使用してクライアントを認証できます(詳細については、 VPNクライアント アクセスの設定を参照)。

1.ローカル データベースは、AAAサーバが使用できない場合、これらの各機能の代替方法として使用できます。

ローカル データベースの設定

ここでは、ローカル データベース内のユーザを管理する手順について説明します。ローカル データベースは、CLIアクセスの認証、イネーブル モードの認証、コマンドの許可、または管理アクセス用のVPNクライアント認証に使用できます。ネットワーク アクセスの認証または許可にローカル データベースを使用することはできません。マルチコンテキスト モードでは、システム実行スペースでユーザ名を設定し、 login コマンドを使用した個別ログインを提供できますが、システム実行スペースにはいずれの aaa コマンドも設定することはできません。


注意 ローカル データベースに、CLIへのアクセスを許可し、イネーブル モードの使用を許可したくないユーザを追加する場合には、コマンド許可をイネーブルにする必要があります(ローカル コマンド許可の設定を参照)。コマンド許可を使用しない場合、イネーブル レベルが2以上(2はデフォルト値)のユーザは、個人のパスワードを使用してCLIのイネーブル モード(およびすべてのコマンド)にアクセスできます。別の方法としては、RADIUSまたはTACACS+認証を使用してユーザがloginコマンドを使用できないように設定するか、またはすべてのローカル ユーザをレベル1に設定してから、システム イネーブル パスワードを使用してイネーブル モードにアクセスできるユーザを制御します。


 

ローカル データベースにユーザ アカウントを定義するには、次のコマンドを入力します。

FWSM/contexta(config)# username username {nopassword | password password} [privilege level]
 

次のパラメータを定義します。

username ― 4~15文字の長さの文字列を指定します。

password ― 3~16文字の長さの文字列を指定します。

privilege level ― 新しいユーザ アカウントに割り当てるイネーブル レベル(0~15)を指定します。デフォルトは2です。イネーブル レベルはコマンド許可と併用します。

nopassword ― パスワードを使用しないユーザ アカウントを作成します。


 

次に、adminユーザのアカウントにイネーブル レベル15を割り当てる例を示します。

FWSM/contexta(config)# username admin password passw0rd privilege 15
 

次に、パスワードを許可しないユーザ アカウントを作成する例を示します。

FWSM/contexta(config)# username john.doe nopassword
 

AAAサーバの識別

認証、許可、またはアカウンティングに外部のAAAサーバ(RADIUSまたはTACACS+)を使用したい場合には、最初にFWSM上のサーバ グループに1つ以上のサーバを追加する必要があります。AAAルールを追加するときに、このサーバ グループ名を指定します。各サーバ グループに設定できるのは、1つのタイプ(RADIUSまたはTACACS+)のサーバだけです。マルチコンテキスト モードでは、最大4つのグループに、4台までのサーバを設定できます。シングル モードでは、最大14のサーバ グループに16台のサーバを設定できます。

FWSMは、グループ内の最初のサーバと通信します。最初のサーバが使用できない場合、FWSMはグループ内の次のサーバ(設定されている場合)と通信します。グループ内のすべてのサーバを使用できない場合、フォールバック方法としてローカル データベースが設定されていれば、FWSMはローカル データベースと通信します(管理認証および許可のみ)。フォールバック方法が設定されていない場合、FWSMはAAAサーバとの通信を継続的に試みます。

グループにサーバを追加する手順は、次のとおりです。


ステップ 1 次のコマンドを入力して、サーバ グループ名とプロトコルを指定します。

FWSM/contexta(config)# aaa-server server_group protocol {radius | tacacs+}
 

ステップ 2 次のコマンドを入力して、次のサーバに移行する前に、グループ内の1つのAAAサーバに送信する要求の最大数を指定します。

FWSM/contexta(config)# aaa-server server_group max-failed-attempts number
 

number の範囲は、1~5回です。デフォルトは3回です。

ローカル データベースを使用するフォールバック方法(管理アクセスのみに使用。フォールバック機構の設定方法についてはCLIアクセスの認証の設定イネーブル モード アクセス認証の設定、およびTACACS+コマンド許可の設定を参照)を設定した場合には、グループ内のすべてのサーバが応答に失敗すると、そのグループは応答不可とみなされ、フォールバック方法が試行されます。サーバ グループが応答不可としてマークされる時間は10分間(デフォルト)です。その間、追加のAAA要求はサーバ グループには送信されず、ただちにフォールバック方法が採用されます。応答不可の時間をデフォルト以外に変更する場合は、次の aaa-server deadtime コマンドを使用します。

フォールバック方法が設定されていない場合、FWSMはグループ内のサーバへの通信を継続的に試みます。

ステップ 3 フォールバック方法を設定した場合、すべての通信の試みに失敗したら、次のコマンドを入力して、サーバ グループを応答不能としてマークしておく時間を指定します。

FWSM/contexta(config)# aaa-server server_group deadtime minutes
 

ステップ 4 次のコマンドを入力して、グループにサーバを追加します。

FWSM/contexta(config)# aaa-server server_group (interface_name) host server_ip [key] [timeout seconds]
 

key は、 サーバ上のキーと一致する最大127文字の英数字キーワードを、大文字と小文字を区別して指定します。キーには、スペースは使用できませんが、その他の特殊文字は使用できます。このキーは、FWSMとサーバ間のデータ暗号化に使用されます。


 

次に、プライマリ サーバとバックアップ サーバを1つずつ指定した1つのTACACS+グループ、および単一サーバを指定した1つのRADIUSグループを追加する例を示します。

FWSM/contexta(config)# aaa-server AuthInbound protocol tacacs+
FWSM/contexta(config)# aaa-server AuthInbound max-failed-attempts 2
FWSM/contexta(config)# aaa-server AuthInbound deadtime 20
FWSM/contexta(config)# aaa-server AuthInbound (inside) host 10.1.1.1 TheUauthKey
FWSM/contexta(config)# aaa-server AuthInbound (inside) host 10.1.1.2 TheUauthKey2
FWSM/contexta(config)# aaa-server AuthOutbound protocol radius
FWSM/contexta(config)# aaa-server AuthOutbound (inside) host 10.1.1.3
 

CLIアクセスの認証の設定

CLI認証をイネーブルにすると、FWSMにより、ログイン用のユーザ名とパスワードの入力が要求されます。これらの情報を入力すると、(イネーブル モードではない)ユーザ モードにアクセスできます。

イネーブル モードを開始するには、 enable コマンドまたは login コマンド(ローカル データベースだけを使用する場合)を入力します。

イネーブル認証を設定した場合(イネーブル モード アクセス認証の設定を参照)、FWSMにより個人のユーザ名とパスワードの入力が要求されます。イネーブル認証を設定していない場合には、 enable コマンドの入力時に( enable password コマンドで設定した)システム イネーブル パスワードを入力します。ただし、イネーブル認証を使用しない場合には、 enable コマンドの入力後、特定ユーザとしてログインできません。個人ユーザ名を保持するには、イネーブル認証を使用してください。

ローカル データベースを使用する認証では、 login コマンドを使用できます。この場合、ユーザ名が保持されますが、認証を有効にするための設定は不要です。


) FWSMでTelnet、SSH、またはHTTPユーザを認証する前に、telnetコマンド、sshコマンド、およびhttpコマンドを使用してFWSMへのアクセスを設定しておく必要があります。これらのコマンドによって、FWSMと通信するためのIPアドレスを指定します。「リモート管理の許可」を参照してください。唯一の例外は、スイッチからFWSMにセッションを開始した場合、このTelnetセッションが常に許可されることです。ただし、システム設定にaaaコマンドが含まれていないので、このシステム セッションを認証することはできません。



 

CLIにアクセスするユーザを認証するには、次のコマンドを入力します。

FWSM/contexta(config)# aaa authentication {telnet | ssh | http} console {LOCAL | server_group [LOCAL]}
 

http キーワードを指定すると、HTTPSを使用してFWSMにアクセスするPDMクライアントが認証されます。

認証にTACACS+またはRADIUSサーバ グループを使用する場合には、AAAサーバが使用できない場合、FWSMがフォールバック方法としてローカル データベースを使用するように設定できます。 LOCAL LOCAL はすべて大文字)のあとに、サーバ グループ名を指定してください。FWSMのプロンプトでは使用中の方法を判別できないので、ローカル データベースにはAAAサーバと同じユーザ名およびパスワードを使用することを推奨します。

LOCAL だけを入力して、ローカル データベースをメインの認証方法(フォールバックなし)として設定することもできます。


 

イネーブル モード アクセス認証の設定

enable コマンドの入力時に、FWSMがAAAサーバまたはローカル データベースを使用してユーザを認証するように設定できます。または、 login コマンドの入力時にローカル データベースを使用してユーザを自動的に認証します。この場合、イネーブル モードへのアクセスは、ローカル データベース内のユーザ レベルに応じて許可されます。これらの方法の詳細については、次の項目を参照してください。

「enableコマンドの認証の設定」

「loginコマンド使用時のユーザの認証」

enableコマンドの認証の設定

enable コマンドの入力時に、FWSMがユーザを認証するように設定できます。 enable コマンドの認証を行わない場合、 enable コマンドを入力すると、FWSMにより( enable password コマンドで設定した)システム イネーブル パスワードの入力を要求されます。この場合、特定ユーザとしてのログインではなくなります。イネーブル認証を設定すると、ユーザ名が保持されます。この機能は、コマンド許可を実行する場合に役立ちます。各ユーザが入力できるコマンドを制御するには、ユーザ名が重要になるからです。


 

enable コマンドの入力時にユーザを認証するには、次のコマンドを入力します。

FWSM/contexta(config)# aaa authentication enable console {LOCAL | server_group [LOCAL]}
 

ユーザは、ユーザ名とパスワードの入力を要求されます。

認証にTACACS+またはRADIUSサーバ グループを使用する場合には、AAAサーバが使用できない場合、FWSMがフォールバック方法としてローカル データベースを使用するように設定できます。 LOCAL LOCAL はすべて大文字)のあとに、サーバ グループ名を指定してください。FWSMのプロンプトでは使用中の方法を判別できないので、ローカル データベースにはAAAサーバと同じユーザ名およびパスワードを使用することを推奨します。

LOCAL だけを入力して、ローカル データベースをメインの認証方法(フォールバックなし)として設定することもできます。


 

loginコマンド使用時のユーザの認証

ユーザ モードから login コマンドを使用すると、ローカル データベース内の任意のユーザ名でログインできます。イネーブル認証と異なり、この方法は、マルチコンテキスト モードのシステム実行スペースで使用できます。

この方法では、ユーザは独自のユーザ名とパスワードを使用してログインできるので、すべてのユーザにシステム イネーブル パスワードを提供する必要はありません。ログイン時にユーザにイネーブル モード(およびすべてのコマンド)へのアクセスを許可するには、ユーザのイネーブル レベルを2(デフォルト値)~15に設定します。ローカル コマンド許可を設定すると、ユーザが入力できるコマンドは、そのユーザのイネーブル レベル以下のコマンドだけに限定されます。詳細については、「ローカル コマンド許可の設定」を参照してください。


注意 ローカル データベースに、CLIへのアクセスを許可し、イネーブル モードの使用を許可したくないユーザを追加する場合には、コマンド許可を設定する必要があります。コマンド許可を使用しない場合、イネーブル レベルが2以上(2はデフォルト値)のユーザは、個人のパスワードを使用してCLIのイネーブル モード(およびすべてのコマンド)にアクセスできます。別の方法として、RADIUSまたはTACACS+認証を使用できます。または、すべてのローカル ユーザをレベル1に設定して、システム イネーブル パスワードを使用してイネーブル モードにアクセスできるユーザを制御することもできます。


 

ローカル データベースのユーザとしてログインするには、次のコマンドを入力します。

FWSM> login
 

FWSMにより、個人のユーザ名とパスワードの入力が要求されます。パスワードを入力すると、FWSMにより、ユーザはローカル データベースに指定されているイネーブル レベルになります。


 

コマンド許可の設定

デフォルトでは、ログイン時にアクセスできるのは最小限のコマンドだけを使用できるユーザ モードです。 enable コマンド(またはローカル データベースを使用する場合は login コマンド)を入力すると、イネーブル モードにアクセスでき、コンフィギュレーション コマンドを含む高度なコマンドを使用できます。コマンドへのアクセスを制御したい場合には、FWSMにコマンド許可を設定し、各ユーザに許可するコマンドを限定できます。

ここでは、次の内容について説明します。

「コマンド許可の概要」

「ローカル コマンド許可の設定」

「TACACS+コマンド許可の設定」

コマンド許可の概要

2つのコマンド許可方法のいずれかを使用できます。

ローカル データベース ― FWSMにコマンドのイネーブル レベルを設定します。 enable コマンドで認証された(または login コマンドでログインした)ローカル ユーザは、FWSMにより、ローカル データベースに定義されているイネーブル レベルに設定されます。ユーザは、そのユーザのイネーブル レベル以下のコマンドにアクセスできます。


) ローカル コマンド許可は、ローカル データベースにユーザを設定しない場合、およびCLI認証またはイネーブル認証を設定しない場合にも使用できます。この場合、enableコマンドを入力してシステム イネーブル パスワードを入力すると、FWSMによりレベル15が設定されます。ここで、すべてのレベルのイネーブル パスワードを作成します。enable n(2~15)と入力すると、FWSMによりユーザはレベルnに設定されます。これらのレベルは、ローカル コマンド許可を有効にした場合に限り、使用されます(次の「ローカル コマンド許可の設定」を参照)。(enableコマンドの詳細については、『Catalyst 6500 Series Switch and Cisco 7600 Series Router Firewall Services Module Command Reference』を参照してください。)


TACACS+サーバ ― TACACS+サーバ上で、CLIアクセスの認証後にユーザまたはグループが使用できるコマンドを設定します。ユーザがCLIから入力したコマンドはすべて、TACACS+サーバによって検証されます。

ローカル コマンド許可の設定

ローカル コマンド許可を使用すると、各ユーザにイネーブル レベルが設定されます。ユーザは、各自のイネーブル レベル以下である任意のコマンドを入力できます。FWSMでは、各コマンドに16のイネーブル レベル(0~15)のいずれかを指定できます。デフォルトでは、各コマンドはイネーブル レベル0またはイネーブル レベル15のどちらかに割り当てられます。

ここでは、次の内容について説明します。

「ローカル コマンド許可の前提条件」

「コマンド イネーブル レベルのデフォルト設定」

「コマンド イネーブル レベルの指定および許可のイネーブル化」

「コマンド イネーブル レベルの表示」

ローカル コマンド許可の前提条件

コマンド許可の設定の一部として、次の作業を完了してください。

enable 認証を設定します(イネーブル モード アクセス認証の設定を参照)。

login コマンド(認証した enable コマンドと同等)を使用する場合には、設定は不要です。ただし、イネーブル認証に比べて安全性が低いので、この方法は推奨しません。

CLI認証(CLIアクセスの認証の設定を参照)の設定もできますが、必須ではありません。

ローカル データベース内の各ユーザに、0~15のイネーブル レベルを設定します(ローカル データベースの設定を参照)。

コマンド イネーブル レベルのデフォルト設定

デフォルトでは、次のコマンドにイネーブル レベル0が割り当てられます。他のコマンドはすべて、イネーブル レベル15になります。

show checksum

show curpriv

enable (イネーブル モード)

help

show history

login

logout

pager

show pager

clear pager

quit

show version

コンフィギュレーション モード コマンドのいずれかを15より低いレベルに変更する場合には、必ず、 configure コマンドを同じレベルに変更してください。変更しない場合、ユーザはコンフィギュレーション モードを開始できません。

すべてのイネーブル レベルを表示する手順は、「コマンド イネーブル レベルの表示」を参照してください。

コマンド イネーブル レベルの指定および許可のイネーブル化

コマンドに新しいイネーブル レベルを指定し、許可をイネーブルにする手順は、次のとおりです。


ステップ 1 次のコマンドを入力して、コマンドにイネーブル レベルを指定します。

FWSM/contexta(config)# privilege [show | clear | configure] level level [mode {enable | configure}] command command
 

レベルを変更したい各コマンドについて、このコマンドを繰り返します。

このコマンドのオプションの詳細は、次のとおりです。

show | clear | configure ― コマンドのshow、clear、またはconfigure形式のレベルだけを指定できる任意のキーワードです。コマンドのconfigure形式は通常、コマンドの原型( show または clear のプレフィクスが付いていない状態)または no 形式のいずれかで、設定の変更を伴います。これらのキーワードをいずれも使用しない場合、コマンドのすべての形式が対象になります。

level level ― 0~15のレベルを指定します。

mode { enable | configure } ― コマンドをユーザ/イネーブル モードとコンフィギュレーション モードの両方で入力でき、モードによってコマンドの動作が異なる場合には、モードごとにイネーブル レベルを個別に設定できます。

enable ― ユーザ モードとイネーブル モードの両方が対象です。

configure configure terminal コマンドを使用してアクセスするコンフィギュレーション モードが対象です。

command command ― 設定するコマンドを指定します。 メイン コマンドのイネーブル レベルだけを設定できます。たとえば、すべての aaa コマンドが対象となるレベルは設定できますが、 aaa authentication コマンドおよび aaa authorization コマンドのレベルを個別に設定することはできません。

また、メイン コマンドとは別にサブコマンドのイネーブル レベルを設定することもできません。たとえば、 context コマンドのレベルは設定できますが、 context コマンドの設定を継承する allocate-interface コマンドのレベルは設定できません。

ステップ 2 次のコマンドを入力して、ローカル コマンド許可をイネーブルにします。

FWSM/contexta(config)# aaa authorization command LOCAL
 

コマンドのイネーブル レベルを設定しても、このコマンドを使用してコマンド許可をイネーブルにしなければ、コマンド許可は実行されません。


 

次に、 filter コマンドの形式を示します。

filter configure オプションの対象)

show filter

clear filter

各形式に個別のイネーブル レベルを設定するか、オプションを指定しないで全形式に同じイネーブル レベルを設定します。次に、各形式を個別に設定する例を示します。

FWSM/contexta(config)# privilege show level 5 command filter
FWSM/contexta(config)# privilege clear level 10 command filter
FWSM/contexta(config)# privilege configure level 10 command filter
 

次に、すべてのfilterコマンドに同じレベルを設定する例を示します。

FWSM/contexta(config)# privilege level 5 command filter
 

show privilege コマンドを入力すると、各形式の設定が個別に表示されます。

次に、 mode キーワードを使用する例を示します。 enable コマンドはユーザ モードで入力する必要がありますが、 enable password コマンドはコンフィギュレーション モードで入力するので、最上位のイネーブル レベルが必要になります。

FWSM/contexta(config)# privilege configure level 0 mode enable command enable
FWSM/contexta(config)# privilege configure level 15 mode configure command enable
FWSM/contexta(config)# privilege show level 15 mode configure command enable
 

次に、 mode キーワードを使用して、 configure コマンドにレベルを設定する例を示します。

FWSM/contexta(config)# privilege show level 5 mode configure command configure
FWSM/contexta(config)# privilege clear level 15 mode configure command configure
FWSM/contexta(config)# privilege configure level 15 mode configure command configure
FWSM/contexta(config)# privilege configure level 15 mode enable command configure

最後の行は、 configure terminalコマンドのレベル設定です。


コマンド イネーブル レベルの表示

コマンドのイネーブル レベルを表示するには、次のコマンドを使用します。

すべてのコマンドのレベルを表示するには、次のコマンドを入力します。

FWSM/contexta(config)# show privilege all
 

特定レベルのコマンドを表示するには、次のコマンドを入力します。

FWSM/contexta(config)# show privilege level level
 

level は、0~15の整数です。

特定コマンドのレベルを表示するには、次のコマンドを入力します。

FWSM/contexta(config)# show privilege command command
 

show privilege all コマンドを入力すると、各CLIコマンドに設定されている現在のイネーブル レベルが表示されます。次に、出力例の最初の部分を示します。

FWSM(config)# show privilege all
privilege show level 15 command aaa
privilege clear level 15 command aaa
privilege configure level 15 command aaa
privilege show level 15 command aaa-server
privilege clear level 15 command aaa-server
privilege configure level 15 command aaa-server
privilege show level 15 command access-group
privilege clear level 15 command access-group
privilege configure level 15 command access-group
privilege show level 15 command access-list
privilege clear level 15 command access-list
privilege configure level 15 command access-list
privilege show level 15 command activation-key
privilege configure level 15 command activation-key
....
 

次に、イネーブル レベル10が設定されているコマンドを表示する例を示します。

FWSM/contexta(config)# show privilege level 10
privilege show level 10 command aaa
 

次に、 access-list コマンドのレベル設定を表示する例を示します。

FWSM/contexta(config)# show privilege command access-list
privilege show level 15 command access-list
privilege clear level 15 command access-list
privilege configure level 15 command access-list

TACACS+コマンド許可の設定

TACACS+コマンド許可をイネーブルにすると、ユーザがCLIにコマンドを入力した時点でFWSMからTACACS+サーバにコマンドとユーザ名が送信され、そのコマンドが許可されているかどうかが判別されます。

TACACS+サーバによるコマンド許可を設定する場合には、設定が正しいことを確認するまでコンフィギュレーションを保存しないでください。設定ミスによってロックアウトされた場合、通常はFWSMを再起動することによってアクセスを回復できます。再起動しても、ロックアウトされる場合には、「ロックアウトからの回復」を参照してください。

TACACS+システムが確実に安定し、信頼性があることを確認してください。必要レベルの信頼性を確保するには通常、完全冗長設定のTACACS+サーバと、FWSMへの完全冗長接続が必要になります。たとえば、TACACS+サーバ プールに、インターフェイス1に接続したサーバと、インターフェイス2に接続した別のサーバを設定します。TACACS+サーバが使用できない場合に備えて、フォールバック方法としてローカル コマンド許可を設定することもできます。この場合には、ローカル ユーザおよびコマンド イネーブル レベルを設定する必要があります(ローカル コマンド許可の設定を参照)。

ここでは、次の内容について説明します。

「TACACS+コマンド許可の前提条件」

「TACACS+サーバ上でのコマンドの設定」

「TACACS+コマンド許可のイネーブル化」

TACACS+コマンド許可の前提条件

コマンド許可の設定の一部として、次の作業を完了してください。

CLI認証を設定します(CLIアクセスの認証の設定を参照)。

enable 認証を設定します(イネーブル モード アクセス認証の設定を参照)。

TACACS+サーバ上でのコマンドの設定

グループまたは個人ユーザの共有プロファイル コンポーネントとして、CiscoSecure Access Control Server(ACS)TACACS+サーバ上でコマンドを設定できます。サードパーティ製のTACACS+サーバの場合には、コマンド許可サポートの詳細についてサーバのマニュアルを参照してください。

CiscoSecure ACS TACACS+サーバ V.3.1上でコマンドを設定する場合には、次の注意事項を参照してください。これらの事項のほとんどは、サードパーティ製のサーバにも適用されます。

FWSMは、許可するコマンドを[shell]コマンドとして送信するので、TACACS+サーバ上でコマンドを設定する場合にはshellコマンドとして設定してください。


) CiscoSecure ACSサーバには、[pix-shell]と呼ばれるコマンド タイプが含まれていることがあります。FWSMでのコマンド許可には、このタイプを使用しないでください。


コマンドの最初の文字が、メイン コマンドであると判断されます。その他の文字はすべて引数としてみなされるので、 permit または deny のプレフィクスが必要です。

たとえば、 show aaa aaa authentication 、および aaa authorization command の各コマンドを許可するには、コマンド ボックスに aaa を追加し、引数ボックスに permit authentication および permit authorization command を入力します。 show aaa コマンドは、個別にリストする必要があります(図 12-1および図 12-2を参照)。

図 12-1 特定コマンドの許可

 

図 12-2 コマンドのshowバージョンの許可

 

[Permit Unmatched Args]チェックボックスを選択すると、明示的に拒否していないすべてのコマンド引数を許可できます。

たとえば、 show コマンドだけを設定すると、すべての show コマンドが許可されます。コマンドのすべての変形(短縮形およびCLIの使用方法を示す ? など)を考慮する必要がないので、この方法を使用することを推奨します(図 12-3を参照)。

図 12-3 すべての関連コマンドの許可

 

enable または help のように単一文字のコマンドの場合には、コマンドの引数がなくても、[Permit Unmatched Args]を選択する 必要があります図 12-4を参照)。

図 12-4 単一ワードのコマンドの許可

 

一部の引数を許可しない場合には、 deny のプレフィクスを付けて引数を入力します。

たとえば、 enable コマンドを許可し、 enable password コマンドを許可しない場合には、コマンド ボックスに enable を入力し、引数ボックスに deny password を入力します。 enable だけが許可されるように、必ず、[Permit Unmatched Args]チェックボックを選択してください(図 12-5を参照)。

図 12-5 引数の否認

 

コマンドラインにコマンドの短縮形を入力すると、FWSMはプレフィクスとメイン コマンドをフル テキストに拡張しますが、追加の引数は入力されたとおりにTACACS+サーバに送信されます。

たとえば、 sh log と入力すると、FWSMからTACACS+サーバにコマンドの完全形である show logging が送信されます。ただし、 sh log mess と入力した場合には、FWSMからTACACS+サーバに show logging mess が送信され、完全形の show logging message は送信されません。短縮形を識別できるように、同じ引数について複数のスペルを設定できます(図 12-6を参照)。

図 12-6 短縮形の指定

 

次の基本コマンドは、すべてのユーザに対して許可することを推奨します。

show checksum

show curpriv

enable

help

show history

login

logout

pager

show pager

clear pager

quit

show version

TACACS+コマンド許可のイネーブル化

TACACS+コマンド許可をイネーブルにするには、設定者がTACACS+サーバ上に定義されているユーザとしてFWSMにログインし、FWSMの設定を行うために必要なコマンド許可を得ている必要があります。たとえば、すべてのコマンドが許可されているadminユーザとしてログインすべきです。そうでない場合、意図せずにロックアウトされることがあります。


 

TACACS+サーバを使用してコマンド許可を実行するには、次のコマンドを入力します。

FWSM/contexta(config)# aaa authorization command tacacs+_server_group [LOCAL]
 

TACACS+サーバが使用できない場合、FWSMがフォールバック方法としてローカル データベースを使用するように設定できます。フォールバックをイネーブルにするには、 LOCAL LOCAL はすべて大文字)のあとに、サーバ グループ名を指定します。FWSMのプロンプトでは使用中の方法を判別できないので、ローカル データベースにはAAAサーバと同じユーザ名およびパスワードを使用することを推奨します。ユーザがローカル データベースに設定され(ローカル データベースの設定を参照)、コマンド イネーブル レベルが設定されていることを確認してください(ローカル コマンド許可の設定を参照)。


 

現在のログイン ユーザの表示


 

現在のログイン ユーザを表示するには、次のコマンドを入力します。

FWSM/contexta# show curpriv
 


 

次に、 show curpriv コマンドの出力例を示します。各フィールドの説明は、以下を参照してください。

FWSM/contexta# show curpriv
Username : admin
Current privilege level : 15
Current Mode/s : P_PRIV
 

表 12-2 に、 show curpriv コマンドの出力の説明を示します。

 

表 12-2 show curprivの出力の説明

フィールド
説明

Username

ユーザ名です。デフォルト ユーザとしてログインしている場合、名前はenable_1(ユーザ レベル)またはenable_15(イネーブル レベル)になります。

Current privilege level

0~15のレベルです。ローカル コマンド許可を設定し、コマンドに中間のイネーブル レベルを割り当てた場合をのぞき、使用できるレベルはレベル0およびレベル15だけです。

Current Mode/s

アクセス モードが表示されます。

P_UNPR ― ユーザ モード(レベル0および1)

P_PRIV ― イネーブル モード(レベル2~15)

P_CONF ― コンフィギュレーション モード

ロックアウトからの回復

一部の状況では、コマンド許可またはCLI認証をイネーブルにすると、FWSMのCLIからロックアウトされることがあります。通常は、FWSMを再起動することによって回復できます。ただし、コンフィギュレーションがすでに保存されている場合には、再びロックアウトされる可能性があります。 表 12-3 に、一般的なロックアウトの条件および回復方法を示します。

 

表 12-3 CLI認証およびコマンド許可のロックアウト

機能
ロックアウトの
条件
説明
対処方法:シングル モード
対処方法:マルチ モード

ローカルCLI認証

ローカル データベースにユーザが設定されていない。

ローカル データ
ベースにユーザが設定されていない場合、ログインできず、ユーザを追加できません。

メンテナンス パーティションにログインし、パスワードおよび aaa コマンドを再設定します。「アプリケーション パーティションのパスワードおよびAAA設定のクリア」を参照してください。

スイッチからFWSMにセッションを開始します。システム実行スペースからコンテキストに移動し、ユーザを追加します。

TACACS+
コマンド許可

TACACS+ CLI認証

RADIUS CLI認証

サーバがダウンしたか、または到達不能で、かつフォールバック
方法が設定されていない。

サーバが到達不能な場合、ログインまたはコマンド入力ができません。

1. メンテナンス パーティションにログインし、パスワードおよびAAAコマンドを再設定します。「アプリケーション パーティションのパスワードおよびAAA設定のクリア」を参照してください。

2. サーバがダウンしたときにロックアウトされないように、フォールバック方法としてローカル データベースを設定します。

1. FWSM上のネットワーク設定が不正であるためにサーバに到達できない場合には、スイッチからFWSMにセッションを開始します。システム実行スペースからコンテキストに移動し、ネットワークを再設定します。

2. サーバがダウンしたときにロックアウトされないように、フォールバック方法としてローカル
データベースを設定します。

TACACS+
コマンド許可

十分なレベルを持たないユーザとして、または存在しないユーザとしてログインした場合。

コマンド許可をイネーブルにすると、
ユーザはそれ以上、コマンドを入力できません。

TACACS+サーバのユーザ アカウントを修正します。

TACACS+サーバにアクセスできず、FWSMをただちに設定する必要がある場合には、メンテナンス パーティションにログインして、パスワードおよび aaa コマンドを再設定します。「アプリケーション パーティションのパスワードおよびAAA設定のクリア」を参照してください。

スイッチからFWSMにセッションを開始します。システム実行スペースからコンテキストに移動し、設定の変更を完了します。TACACS+の設定を修正するまで、コマンド許可をディセーブルにしておくこともできます。

ローカル コマンド許可

十分なレベルを持たないユーザとしてログインした場合。

コマンド許可をイネーブルにすると、
ユーザはそれ以上、コマンドを入力できません。

メンテナンス パーティションにログインし、パスワードおよび aaa コマンドを再設定します。「アプリケーション パーティションのパスワードおよびAAA設定のクリア」を参照してください。

スイッチからFWSMにセッションを開始します。システム実行スペースからコンテキストに移動し、ユーザ レベルを変更します。

ネットワーク アクセスの認証の設定

ここでは、次の内容について説明します。

「認証の概要」

「ネットワーク アクセス認証のイネーブル化」

「Webクライアントのセキュア認証のイネーブル化」

認証の概要

FWSMでは、RADIUSサーバまたはTACACS+サーバを使用したネットワーク アクセス認証を設定できます。

任意のプロトコルまたはサービスについてネットワーク アクセス認証を設定できますが、HTTP、Telnet、またはFTPに限り、認証を直接設定できます。認証が必要な他のトラフィックが許可される前に、ユーザはまず、これらのサービスのいずれかで認証される必要があります。FWSMを経由するHTTP、Telnet、またはFTPを許可せずに、他のタイプのトラフィックを認証したい場合には、仮想Telnetを設定できます。この場合、ユーザがFWSM上に設定された指定のIPアドレスにTelnet接続すると、FWSMにTelnetプロンプトが表示されます。 virtual telnet コマンドの詳細については、『 Catalyst 6500 Series Switch and Cisco 7600 Series Router Firewall Services Module Command Reference 』を参照してください。

特定のIPアドレスのユーザに必要な認証は、認証セッションがタイムアウトになるまでは、すべてのルールとタイプに対して1回だけです(タイムアウトの値については、『 Catalyst 6500 Series Switch and Cisco 7600 Series Router Firewall Services Module Command Reference 』の timeout uauth コマンドを参照してください)。たとえば、FWSMにTelnetとFTPの認証を設定した場合、ユーザは最初にTelnetの認証に成功すれば、そのセッションの継続中はFTPの認証を受ける必要はありません。

Telnet、HTTP、およびFTPの場合、FWSMによって認証プロンプトが生成されます。宛先サーバに独自の認証が設定されている場合には、ユーザは別途ユーザ名とパスワードを入力することになります。

FTPの場合には、FWSMのユーザ名のあとにアットマーク(@)を入力し、続けてFTPユーザ名を入力できます(name1@name2)。パスワードの場合も、FWSMのパスワードのあとにアットマーク(@)を入力し、さらにFTPパスワードを入力します(password1@password2)。次に、例を示します。

name> john_c@jchrichton
password> letmein@he110
 

この機能は、ファイアウォールをカスケード接続して設定し、複数のログインが必要となる場合に便利です。複数の名前とパスワードを、複数のアットマーク(@)を使用して区切ることができます。

ネットワーク アクセス認証のイネーブル化


 

認証を設定するには、次のコマンドを入力します。

FWSM/contexta(config)# aaa authentication match acl_name interface_name server_group
 

拡張ACLを使用して、送信元アドレスおよび宛先アドレスを識別します。ACLを作成するには、 access-list コマンドを使用します( 拡張ACLの追加を参照)。 permit Access Control Entry(ACE;アクセス制御エントリ)は一致するトラフィックを認証し、 deny エントリは一致するトラフィックの認証を拒否します。ACLにはHTTP、Telnet、またはFTPのいずれかの宛先ポートを必ず指定してください。ユーザは、FWSM経由の他のサービスの許可を得る前に、これらのサービスのいずれかで認証される必要があるからです。


) (コマンド内でトラフィックを識別する)aaa authentication includeコマンドを使用することもできます。ただし、同じコンフィギュレーションで両方の方法を使用することはできません。詳細については、『Catalyst 6500 Series Switch and Cisco 7600 Series Router Firewall Services Module Command Reference』を参照してください。



 

次に、すべての内部HTTPトラフィックおよびSMTPトラフィックを認証する例を示します。

FWSM/contexta(config)# access-list MAIL_AUTH extended permit tcp any any eq smtp
FWSM/contexta(config)# access-list MAIL_AUTH extended permit tcp any any eq www
FWSM/contexta(config)# aaa-server AuthOutbound protocol tacacs+
FWSM/contexta(config)# aaa-server AuthOutbound (inside) host 10.1.1.1 TheUauthKey
FWSM/contexta(config)# aaa authentication match MAIL_AUTH inside AuthOutbound
 

次に、外部インターフェイスから特定サーバ(209.165.201.5)へのTelnetトラフィックを認証する例を示します。

FWSM/contexta(config)# access-list TELNET_AUTH extended permit tcp any host 209.165.201.5 eq telnet
FWSM/contexta(config)# aaa-server AuthInbound protocol tacacs+
FWSM/contexta(config)# aaa-server AuthInbound (inside) host 10.1.1.1 TheUauthKey
FWSM/contexta(config)# aaa authentication match TELNET_AUTH outside AuthInbound

Webクライアントのセキュア認証のイネーブル化

FWSM Release 2.3では、HTTP over SSL(HTTPS)を使用して、WebクライアントとFWSM間でユーザ名とパスワードを安全に交換できる方法が追加されました。HTTPSによりユーザ名とパスワードが暗号化され、安全に伝送されます。

旧リリースのFWSMでは、AAAサーバを使用してWebブラウザを認証する場合、HTTPクライアントから送信されるユーザ名とパスワードはクリアテキストでした。

この機能をイネーブルにするには、aaaコマンドに次のキーワードを追加します。

aaa authentication secure-http-client
 

secure-http-clientキーワードによって、この機能がイネーブルになり、HTTPクライアントとFWSM間でユーザ名とパスワードが安全に交換されます。

この機能をイネーブルにするには、次のいずれかの形式でAAA認証を設定する必要があります。

aaa authentication http interface ...
aaa authentication tcp/0 interface ...
 

次のコマンドを使用すると、安全な(HTTPS)Webサイトにアクセスするクライアントの認証がサポートされます。

aaa authentication https interface ...
aaa authentication tcp/0 interface ...
 

) HTTPSセッションを認証する場合は、aaa authentication secure-http-clientをイネーブルにする必要はありません。


この機能をイネーブルにした場合、認証を必要とするWebページにユーザがアクセスすると、FWSMにより、図 12-7に示す認証ダイアログボックスが表示されます。

図 12-7 Secure Authenticationのページ

 


) この画面に表示されているCisco Systemsのテキスト フィールドは、auth-promptコマンドを使用して変更できます。auth-promptコマンドを使用してテキストを指定しない場合、このフィールドは空白になります。このコマンドの詳細な構文は、『Catalyst 6500 Series Switch and Cisco 7600 Series Router Firewall Services Module Command Reference』を参照してください。


有効なユーザ名とパスワードを入力すると、[Authentication Successful](認証成功)のページが表示され、自動的に終了します。ユーザ名とパスワードが無効の場合には、[Authentication Failed](認証失敗)のページが表示されます。

最大64の同時HTTPS認証がサポートされます。最大64のHTTPS認証プロセスが実行されている場合、認証を必要とする新しい接続は失敗します。認証プロセスは、FWSMがブラウザからユーザ名とパスワードを受信した時点で開始され、AAAサーバから認証結果を受信した時点で終了します。各認証プロセスが完了するまでに要する時間は、認証の送信元からの応答時間によって異なります。LOCALデータベースを使用する場合には高速ですが、RADIUSまたはTACACS+サーバを使用する場合には、サーバの応答時間に影響されます。


) Release 2.3より前のFWSMでは、AAA認証を含むコンフィギュレーションにtcp/0..が含まれている場合、FWSM Release 2.3以上へのコード アップグレードによってイネーブルになるHTTPS認証プロキシ機能が継承されます。


uauth timeout 0コマンドを使用すると、HTTPS認証後、ブラウザがWebページにアクセスするために複数のTCP接続を開始した場合、HTTPS認証は実行されません。この場合、最初の接続は許可されますが、uauthタイムアウトが0に設定されているため、以降の接続によって認証プロセスが起動します。その結果、正しいユーザ名とパスワードを入力しても、認証ページが継続的に表示されることになります。この問題を避けるために、uauthタイムアウトは1秒に設定してください。ただし、ウィンドウが1秒間オープンしているため、認証されていないユーザが、同じ送信元IPアドレスによってアクセスを取得する可能性があります。

HTTP要求のセキュア認証プロセス実行中に、WebブラウザがHTTPS Webページ 要求を発行すると、HTTPSのセキュア認証がイネーブルに設定されていなくても、HTTPS要求によって2つめのセキュア認証プロセスが起動します。いずれかのWebページの認証プロセスが正常に完了すると、そのページをリロードすることによって、残りの要求も完了します。

HTTPS認証はSSLポート443で実行されるので、ポート443でHTTPクライアントからHTTPサーバへのトラフィックを拒否するaccess-listコマンドを使用しないでください。また、ポート80に
Webトラフィック用のスタティックPATを設定する場合には、SSLポート443のスタティック エントリを設定する必要があります。

ネットワーク アクセスの許可の設定

特定の接続についてユーザが認証されると、FWSMはトラフィックの許可ルールまたはダイナミックACLを検証します。許可サーバまたはダイナミックACLにより、トラフィックの許可または拒否が判別されます。

FWSMは、TACACS+許可サーバをサポートしています。FWSMのコンフィギュレーションで許可したいトラフィックを指定すると、TACACS+サーバはユーザ プロファイルに基づいてユーザの許可を判別します。

または、認証時にRADIUSサーバからダウンロードしたダイナミックACLを使用することもできます。FWSM上のコンフィギュレーションに認証設定だけを含め、サーバ上でダウンロード可能なACLをイネーブルに設定します。

ここでは、次の内容について説明します。

「TACACS+許可の設定」

「RADIUS許可の設定」

TACACS+許可の設定

FWSMでは、TACACS+を使用したネットワーク アクセス許可を設定できます。許可ルール内で、またはACL名との一致により、許可する必要があるトラフィックを識別します。許可ルールに指定できる送信元と宛先のサブネットおよびサービスは1つだけですが、ACLには複数のエントリを指定できます。

許可したいすべてのトラフィックについて、ユーザはまず、FWSMでそのトラフィックの認証を受ける必要があります。一部のトラフィックには、許可ではなく認証を選択できます。認証ルールが、許可ルールまたは認証ルールのサブセットと同等であることを確認してください。認証の設定は、「ネットワーク アクセスの認証の設定」を参照してください。

ユーザの認証後、FWSMはトラフィックが許可ルールに一致しているかどうかを検証します。トラフィックが許可ステートメントに一致すると、FWSMからTACACS+サーバにユーザ名が送信されます。TACACS+サーバは、ユーザのプロファイルに基づいて、そのトラフィックの許可または拒否の応答をFWSM に戻します。ユーザのネットワーク アクセス制約の設定の詳細については、TACACS+サーバのマニュアルを参照してください。


 

許可を設定するには、次のコマンドを入力します。

FWSM/contexta(config)# aaa authorization match acl_name interface_name server_group
 

拡張ACLを使用して、送信元アドレスおよび宛先アドレスを識別します。ACLを作成するには、 access-list コマンドを使用します( 拡張ACLの追加を参照)。 permit ACEは一致するトラフィックを許可し、 deny エントリは一致するトラフィックの許可を拒否します。


) (コマンド内でトラフィックを識別する)aaa authorization includeコマンドを使用することもできます。ただし、同じコンフィギュレーションで両方の方法を使用することはできません。詳細については、『Catalyst 6500 Series Switch and Cisco 7600 Series Router Firewall Services Module Command Reference』を参照してください。



 

次に、内部Telnetトラフィックを認証し、許可する例を示します。209.165.201.5以外のサーバへのTelnetトラフィックは認証されるだけですが、205.165.201.5へのトラフィックには許可が必要です。

FWSM/contexta(config)# access-list TELNET_AUTH extended permit tcp any any eq telnet
FWSM/contexta(config)# access-list SERVER_AUTH extended permit tcp any host 209.165.201.5 eq telnet
FWSM/contexta(config)# aaa-server AuthOutbound protocol tacacs+
FWSM/contexta(config)# aaa-server AuthOutbound (inside) host 10.1.1.1 TheUauthKey
FWSM/contexta(config)# aaa authentication match TELNET_AUTH inside AuthOutbound
FWSM/contexta(config)# aaa authorization match SERVER_AUTH inside AuthOutbound
 

RADIUS許可の設定

RADIUSサーバを設定し、認証時にFWSMにACLまたはACL名をダウンロードできます。認証設定の詳細については、「ネットワーク アクセスの認証の設定」を参照してください。ユーザには、そのユーザのACLで許可されている項目だけが許可されます。ここでは、次の内容について説明します。

「RADIUSサーバからユーザ単位のACLをダウンロードする設定」

「RADIUSサーバからユーザ単位のACL名をダウンロードする設定」

RADIUSサーバからユーザ単位のACLをダウンロードする設定

ここでは、CiscoSecure ACS RADIUSサーバまたはサードパーティ製のRADIUSサーバの設定手順について説明します。内容は次のとおりです。

「CiscoSecure ACS RADIUSサーバでのダウンロード可能なACLの設定」

「サードパーティ製のRADIUSサーバでのダウンロード可能なACLの設定」

CiscoSecure ACS RADIUSサーバでのダウンロード可能なACLの設定

CiscoSecure ACS RADIUSサーバに共有プロファイル コンポーネントとしてACLを設定し、グループまたは個人ユーザにACLを割り当てることができます。

ACLの定義には、拡張 access-list コマンド( 拡張ACLの追加を参照)と同様の1つ以上のFWSMコマンドを設定します。ただし、次のプレフィクスは不要です。

access-list acl_name extended
 

次に、FWSMにダウンロードする前のACL定義の例を示します。

+--------------------------------------------+
| Shared profile Components |
| |
| Downloadable PIX ACLs |
| |
| Name: acs_ten_acl |
| Description: 10 access-list commands |
| |
| |
| ACL Definitions |
| |
| permit tcp any host 10.0.0.254 |
| permit udp any host 10.0.0.254 |
| permit icmp any host 10.0.0.254 |
| permit tcp any host 10.0.0.253 |
| permit udp any host 10.0.0.253 |
| permit icmp any host 10.0.0.253 |
| permit tcp any host 10.0.0.252 |
| permit udp any host 10.0.0.252 |
| permit icmp any host 10.0.0.252 |
| permit ip any any |
+--------------------------------------------+
 

FWSMにダウンロードしたACLは、次の名前になります。

#ACSACL#-ip-acl_name-number
 

acl_name 引数はRADIUSサーバに定義されている名前、 number は固有のバージョンIDです。

FWSMにダウンロードしたACLには、次の行が含まれます。

access-list #ACSACL#-ip-fwsm-acs_ten_acl-3b5385f7 permit tcp any host 10.0.0.254
access-list #ACSACL#-ip-fwsm-acs_ten_acl-3b5385f7 permit udp any host 10.0.0.254
access-list #ACSACL#-ip-fwsm-acs_ten_acl-3b5385f7 permit icmp any host 10.0.0.254
access-list #ACSACL#-ip-fwsm-acs_ten_acl-3b5385f7 permit tcp any host 10.0.0.253
access-list #ACSACL#-ip-fwsm-acs_ten_acl-3b5385f7 permit udp any host 10.0.0.253
access-list #ACSACL#-ip-fwsm-acs_ten_acl-3b5385f7 permit icmp any host 10.0.0.253
access-list #ACSACL#-ip-fwsm-acs_ten_acl-3b5385f7 permit tcp any host 10.0.0.252
access-list #ACSACL#-ip-fwsm-acs_ten_acl-3b5385f7 permit udp any host 10.0.0.252
access-list #ACSACL#-ip-fwsm-acs_ten_acl-3b5385f7 permit icmp any host 10.0.0.252
access-list #ACSACL#-ip-fwsm-acs_ten_acl-3b5385f7 permit ip any any
 

サードパーティ製のRADIUSサーバでのダウンロード可能なACLの設定

Cisco Vendor Specific Attribute(VSA)番号1(cisco-AV-pair)を使用して、ACLを設定します。

拡張 access-list コマンド( 拡張ACLの追加を参照)と同様の1つ以上のACEを設定します。ただし、次のコマンド プレフィクスが異なります。

access-list acl_name extended
 

これは、次のテキストに置換されます。

ip:inacl#nnn=
 

nnn 引数は、FWSMに設定するコマンド ステートメントの順序を表す0~999,999,999の範囲の数値です。このパラメータを省略すると、シーケンス値は0になり、RADIUSコンフィギュレーションの順序が使用されます。

次に、FWSMにダウンロードする前のACL定義の例を示します。

ip:inacl#1=permit tcp 10.1.0.0 255.0.0.0 10.0.0.0 255.0.0.0
ip:inacl#99=deny tcp any any
ip:inacl#2=permit udp 10.1.0.0 255.0.0.0 10.0.0.0 255.0.0.0
ip:inacl#100=deny udp any any
ip:inacl#3=permit icmp 10.1.0.0 255.0.0.0 10.0.0.0 255.0.0.0
 

ダウンロードしたACLの名前は、次の形式になります。

AAA-user-username
 

username 引数 は、認証されるユーザの名前です。

FWSMにダウンロードしたACLには、次の行が含まれます。順序が、RADIUSサーバ上の番号に基づいていることに注意してください。

access-list AAA-user-john permit tcp 10.1.0.0 255.0.0.0 10.0.0.0 255.0.0.0
access-list AAA-user-john permit udp 10.1.0.0 255.0.0.0 10.0.0.0 255.0.0.0
access-list AAA-user-john permit icmp 10.1.0.0 255.0.0.0 10.0.0.0 255.0.0.0
access-list AAA-user-john deny tcp any any
access-list AAA-user-john deny udp any any
 

ダウンロードしたACLでは、[access-list]と名前の間に2つのスペースが挿入されます。これらのスペースにより、ダウンロードしたACLとローカルACLを区別できます。

RADIUSサーバからユーザ単位のACL名をダウンロードする設定

ユーザ認証時に、FWSMですでに作成されているACLの名前をダウンロードするには、次のようにRADIUSアトリビュート11(filter-id)を設定します。

filter-id=acl_name
 

FWSMでのACLの作成手順については、「拡張ACLの追加」を参照してください。

ネットワーク アクセスのアカウンティングの設定

FWSMでは、FWSMを通過する任意のTCP/UDPトラフィックについて、RADIUSサーバまたはTACACS+サーバにアカウンティング情報を送信できます。トラフィックが認証されている場合は、AAAサーバでユーザ名単位のアカウンティング情報を保持できます。トラフィックが認証されていない場合は、AAAサーバでIPアドレス単位のアカウンティング情報を保持できます。アカウンティング情報には、セッションの開始時および終了時、AAAクライアント メッセージとユーザ名、セッション中にFWSMを通過したバイト数、使用されたサービス、および各セッションの長さが含まれます。


 

アカウンティングを設定するには、次のコマンドを入力します。

FWSM/contexta(config)# aaa accounting match acl_name interface_name server_group
 

拡張ACLを使用して、送信元アドレスおよび宛先アドレスを識別します。ACLを作成するには、 access-list コマンドを使用します( 拡張ACLの追加を参照)。 permit ACEは一致するトラフィックのアカウンティングを実行し、 deny エントリは一致するトラフィックをアカウンティングから排除します。


) (コマンド内でトラフィックを識別する)aaa accounting includeコマンドを使用することもできます。ただし、同じコンフィギュレーションで両方の方法を使用することはできません。詳細については、『Catalyst 6500 Series Switch and Cisco 7600 Series Router Firewall Services Module Command Reference』を参照してください。



 

次に、内部TelnetトラフィックのAAAを設定する例を示します。209.165.201.5以外のサーバへのTelnetトラフィックは認証されるだけですが、205.165.201.5へのトラフィックには許可およびアカウンティングが必要です。

FWSM/contexta(config)# access-list TELNET_AUTH extended permit tcp any any eq telnet
FWSM/contexta(config)# access-list SERVER_AUTH extended permit tcp any host 209.165.201.5 eq telnet
FWSM/contexta(config)# aaa-server AuthOutbound protocol tacacs+
FWSM/contexta(config)# aaa-server AuthOutbound (inside) host 10.1.1.1 TheUauthKey
FWSM/contexta(config)# aaa authentication match TELNET_AUTH inside AuthOutbound
FWSM/contexta(config)# aaa authorization match SERVER_AUTH inside AuthOutbound
FWSM/contexta(config)# aaa accounting match SERVER_AUTH inside AuthOutbound