Cisco ASA 5580 適応型セキュリティ アプライアン ス コマンド ライン コンフィギュレーション ガイド
ネットワーク アクセスへの AAA の適用
ネットワーク アクセスへの AAA の適用
発行日;2012/01/12 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 17MB) | フィードバック

目次

ネットワーク アクセスへの AAA の適用

AAA パフォーマンス

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

認証の概要

一度だけの認証

認証チャレンジを受けるために必要なアプリケーション

セキュリティ アプライアンスの認証プロンプト

スタティック PAT および HTTP

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

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

セキュリティ アプライアンスでの直接認証

HTTP および HTTPS による直接認証のイネーブル化

Telnet による直接認証のイネーブル化

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

TACACS+ 認可の設定

RADIUS 認可の設定

ダウンロード可能な ACL を送信するための RADIUS サーバの設定

ユーザごとの ACL 名をダウンロードするための RADIUS サーバの設定

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

MAC アドレスによるトラフィックの認証と認可の免除

ネットワーク アクセスへの AAA の適用

この章では、ネットワーク アクセスに対して AAA(トリプル エー)をイネーブルにする方法について説明します。

管理アクセスの AAA については、「システム管理者用 AAA の設定」を参照してください。

この章は、次の項で構成されています。

「AAA パフォーマンス」

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

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

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

「MAC アドレスによるトラフィックの認証と認可の免除」

AAA パフォーマンス

adaptive security applianceは「カットスルー プロキシ」を使用します。これにより、従来のプロキシ サーバと比較して、パフォーマンスが大幅に向上します。従来のプロキシ サーバは、OSI モデルのアプリケーション レイヤですべてのパケットを分析するため、プロキシ サーバのパフォーマンスに負担がかかります。adaptive security applianceカットスルー プロキシは、アプリケーション レイヤで最初にユーザ確認を行い、標準 AAA サーバまたはローカル データベースで認証します。adaptive security applianceはユーザを認証した後、セッション フローをシフトするため、セッション ステート情報を維持したまま、すべてのトラフィックが送信元と宛先の間で直接かつ迅速に流れます。

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

この項は、次の内容で構成されています。

「認証の概要」

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

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

「セキュリティ アプライアンスでの直接認証」

認証の概要

adaptive security applianceでは、AAA サーバを使用するネットワーク アクセス認証を設定できます。この項は、次の内容で構成されています。

「一度だけの認証」

「認証チャレンジを受けるために必要なアプリケーション」

「セキュリティ アプライアンスの認証プロンプト」

「スタティック PAT および HTTP」

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

一度だけの認証

所定の IP アドレスのユーザは、認証セッションが期限切れになるまで、すべての規則およびタイプに対して一度だけ認証を受ける必要があります (タイムアウトの値については、『 Cisco ASA 5580 Adaptive Security Appliance Command Reference 』で timeout uauth コマンドを参照してください)。たとえば、Telnet および FTP を認証するようにadaptive security applianceが設定されていて、ユーザが正常に Telnet 認証を受けた場合、認証セッションが継続している限り、ユーザは FTP 認証を受ける必要はありません。

認証チャレンジを受けるために必要なアプリケーション

プロトコルまたはサービスへのネットワーク アクセス認証を要求するようにadaptive security applianceを設定することは、すべてのプロトコルまたはサービスについて可能ですが、ユーザが直接認証を受けることができるのは、HTTP、HTTPS、Telnet、または FTP だけです。ユーザがこれらのサービスのいずれかの認証を受けないと、adaptive security applianceは認証が必要な他のトラフィックを許可しません。

adaptive security applianceがAAA にサポートする認証ポートは次のとおり固定です。

FTP の場合、ポート 21

Telnet の場合、ポート 23

HTTP の場合、ポート 80

HTTPS の場合、ポート 443

セキュリティ アプライアンスの認証プロンプト

Telnet および FTP に対して、adaptive security applianceは認証プロンプトを生成します。

HTTP については、adaptive security applianceはデフォルトで基本 HTTP 認証を使用し、認証プロンプトを提供します。オプションで、ユーザ名およびパスワードを入力できる内部 Web ページにユーザをリダイレクトするように、adaptive security applianceを設定できます( aaa authentication listener コマンドを使用して設定)。

HTTPS に対して、adaptive security applianceはカスタム ログイン画面を生成します。オプションで、ユーザ名およびパスワードを入力できる内部 Web ページにユーザをリダイレクトするように、adaptive security applianceを設定できます( aaa authentication listener コマンドを使用して設定)。

リダイレクションで基本の方法が改善されます。リダイレクションによって、認証時のユーザ エクスペリエンスが向上し、Easy VPN モードとファイアウォール モードの両方で HTTP および HTTPS について同じユーザ エクスペリエンスが実現するためです。また、adaptive security applianceでの直接認証もサポートされます。

基本 HTTP 認証を引き続き使用する場合として、次の場合があります。adaptive security applianceで受信ポートを開かない場合、ルータで NAT を使用しているためにadaptive security applianceで提供される Web ページの変換規則を作成しない場合、基本 HTTP 認証の方がネットワークで有効に機能する場合などです。たとえば、URL が電子メールに埋め込まれた場合など、ブラウザ以外のアプリケーションで基本認証との互換性が高まる可能性があります。

正常に認証されると、adaptive security applianceにより元の宛先にリダイレクトされます。宛先サーバにも独自の認証がある場合、ユーザは別のユーザ名とパスワードを入力します。基本 HTTP 認証を使用していて、宛先サーバに別のユーザ名とパスワードを入力しなければならない場合は、 virtual http コマンドを設定する必要があります。


) HTTP 認証を使用する場合、デフォルトでユーザ名とパスワードがクライアントからadaptive security applianceにクリア テキストで送信されます。また、ユーザ名とパスワードは宛先の Web サーバにも送信されます。クレデンシャルの保護の詳細については、「Web クライアントのセキュアな認証のイネーブル化」を参照してください。


FTP の場合、adaptive security appliance ユーザ名、アット マーク(@)、FTP ユーザ名(name1@name2)を入力するオプションがあります。パスワードには、adaptive security appliance パスワード、アット マーク(@)、FTP パスワード(password1@password2)を入力します。たとえば、次のテキストを入力します。

name> jamiec@patm
password> letmein@he110
 

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

スタティック PAT および HTTP

HTTP 認証では、スタティック PAT が設定されている場合、adaptive security applianceは実際のポートをチェックします。adaptive security applianceは、マッピング ポートにかかわらず、実際のポート 80 を宛先とするトラフィックを検出した場合、HTTP 接続を代行受信し、認証を実行します。

たとえば、外部 TCP ポート 889 はポート 80(www)に変換され、すべての関連アクセスリストはトラフィックを許可するものとします。

static (inside,outside) tcp 10.48.66.155 889 192.168.123.10 www netmask 255.255.255.255
 

この場合、ユーザはポート 889 で 10.48.66.155 にアクセスを試み、adaptive security applianceはそのトラフィックを代行受信し、HTTP 認証を実行します。adaptive security applianceが HTTP 接続の完了を許可する前に、ユーザの Web ブラウザには HTTP 認証ページが表示されます。

次の例のように、ローカル ポートがポート 80 ではないとします。

static (inside,outside) tcp 10.48.66.155 889 192.168.123.10 111 netmask 255.255.255.255
 

この場合、認証ページはユーザに表示されません。その代わりに、adaptive security applianceは、要求したサービスを使用するには認証を受ける必要があることを示すエラーメッセージを Web ブラウザに送信します。

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

ネットワーク アクセス認証をイネーブルにするには、次の手順を実行します。


ステップ 1 aaa-server コマンドを使用して、AAA サーバを指定します。すでに AAA サーバを指定してある場合は、次の手順に進みます。

AAA サーバの指定方法の詳細については、「AAA サーバ グループおよびサーバの識別」を参照してください。

ステップ 2 access-list コマンドを使用して、認証するトラフィックの送信元アドレスと宛先アドレスを指定するアクセスリストを作成します。手順については、「拡張アクセスリストの追加」を参照してください。

許可 ACE は、一致したトラフィックを認証するようにマークします。一方、 拒否 エントリは、一致したトラフィックを認証から除外します。HTTP、HTTPS、Telnet、または FTP のいずれかの宛先ポートをアクセスリストに必ず含めます。これは、ユーザがこれらのサービスのいずれかの認証を受けないと、他のサービスがadaptive security applianceの通過を許可されないためです。

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

hostname(config)# aaa authentication match acl_name interface_name server_group
 

acl_nameステップ 2 で作成したアクセスリストの名前で、 interface_name nameif コマンドで指定したインターフェイスの名前で、 server_groupステップ 1 で作成した AAA サーバ グループです。


) もう 1 つの方法として、aaa authentication include コマンド(コマンド内でトラフィックを指定するコマンド)を使用することもできます。ただし、同一コンフィギュレーション内で両方の方法を使用することはできません。詳細については、『Cisco ASA 5580 Adaptive Security Appliance Command Reference』を参照してください。


ステップ 4 (オプション)HTTP または HTTPS 接続に対する認証のリダイレクション方式をイネーブルにするには、次のコマンドを入力します。

hostname(config)# aaa authentication listener http[s] interface_name [port portnum] redirect
 

interface_name 引数は、受信ポートをイネーブルにするインターフェイスです。

port portnum 引数で、adaptive security applianceが受信するポート番号を指定します。デフォルトは 80(HTTP)と 443(HTTPS)です。任意のポート番号を使用し、同じ機能を保持できますが、直接認証のユーザがポート番号を認識していることを確認してください。リダイレクトするトラフィックは正しいポート番号に自動的に送信されますが、直接認証ではポート番号を手動で指定する必要があります。

このコマンドを、HTTP と HTTPS について別々に入力します。

ステップ 5 (オプション)ネットワーク アクセス認証にローカル データベースを使用していて、adaptive security applianceが所定のユーザ アカウントに対して許可する連続失敗ログイン試行の回数を制限する場合は、次のコマンドを使用します(特権レベルが 15 のユーザは例外です。この機能はレベル 15 のユーザには影響を与えません)。

hostname(config)# aaa local authentication attempts max-fail number
 

number は 1 ~ 16 の間で指定します。

次の例を参考にしてください。

hostname(config)# aaa local authentication attempts max-fail 7
 

ヒント 特定のユーザまたはすべてのユーザのロックアウト ステータスを解除するには、clear aaa local user lockout コマンドを使用します。



 

たとえば、次のコマンドは、すべての内部 HTTP トラフィックおよび SMTP トラフィックを認証します。

hostname(config)# aaa-server AuthOutbound protocol tacacs+
hostname(config-aaa-server-group)# exit
hostname(config)# aaa-server AuthOutbound (inside) host 10.1.1.1
hostname(config-aaa-server-host)# key TACPlusUauthKey
hostname(config-aaa-server-host)# exit
hostname(config)# access-list MAIL_AUTH extended permit tcp any any eq smtp
hostname(config)# access-list MAIL_AUTH extended permit tcp any any eq www
hostname(config)# aaa authentication match MAIL_AUTH inside AuthOutbound
hostname(config)# aaa authentication listener http inside redirect
 

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

hostname(config)# aaa-server AuthInbound protocol tacacs+
hostname(config-aaa-server-group)# exit
hostname(config)# aaa-server AuthInbound (inside) host 10.1.1.1
hostname(config-aaa-server-host)# key TACPlusUauthKey
hostname(config-aaa-server-host)# exit
hostname(config)# access-list TELNET_AUTH extended permit tcp any host 209.165.201.5 eq telnet
hostname(config)# aaa authentication match TELNET_AUTH outside AuthInbound
 

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

HTTP 認証を使用する場合、デフォルトでユーザ名とパスワードがクライアントからadaptive security applianceにクリア テキストで送信されます。また、ユーザ名とパスワードは宛先の Web サーバにも送信されます。adaptive security applianceでは、次のような複数の方式で HTTP 認証を保護できます。

HTTP に対する認証のリダイレクション方式をイネーブルにする: aaa authentication listener コマンドに redirect キーワードを指定して使用します。この方式では、認証クレデンシャルがその後続けて宛先サーバに送信されないようにします。リダイレクション方式と基本方式の詳細については、「セキュリティ アプライアンスの認証プロンプト」を参照してください。

仮想 HTTP をイネーブルにする: virtual http コマンドを使用して、セキュリティ アプライアンスの認証と HTTP サーバの認証を別々に受けることができます。HTTP サーバが 2 次認証を必要としない場合でも、このコマンドにより基本認証クレデンシャルは HTTP GET 要求から除去されます。

Web クライアントとadaptive security applianceの間の HTTPS によるユーザ名とパスワードの交換をイネーブルにする: aaa authentication secure-http-client コマンドを使用して、Web クライアントとadaptive security applianceの間の HTTPS によるユーザ名とパスワードの交換をイネーブルにします。これはadaptive security applianceと宛先サーバの間だけでなく、クライアントとadaptive security applianceの間のクレデンシャルを保護する唯一の方式です。この方式だけを使用することも、または他の方式のいずれかと組み合せてセキュリティを最大限にすることもできます。

この機能をイネーブルにした後、ユーザが HTTP 使用時に認証を要求すると、adaptive security applianceは HTTPS プロンプトに HTTP ユーザをリダイレクトします。正常に認証されると、adaptive security applianceにより元の HTTP URL にリダイレクトされます。

セキュアな Web クライアント認証では、次の制限事項があります。

同時に行うことができる HTTPS 認証セッションは、最大 16 個です。16 個の HTTPS 認証プロセスがすべて実行されている場合、認証を必要とする新しい接続は失敗します。

uauth timeout 0 が設定されている( uauth timeout が 0 に設定されている)場合は、HTTPS 認証が機能しないことがあります。HTTPS 認証を受けた後、ブラウザが複数の TCP 接続を開始して Web ページのロードを試みると、最初の接続はそのまま許可されますが、後続の接続に対しては認証が発生します。その結果、ユーザが認証ページに正しいユーザ名とパスワードを毎回入力しても、繰り返し認証ページが表示されます。この現象を回避するには、 timeout uauth 0:0:1 コマンドを使用して、 uauth timeout を 1 秒に設定します。ただし、この回避策ではウィンドウが 1 秒間開かれるため、このウィンドウを利用して、同じ送信元 IP アドレスからアクセスしてくる未認証のユーザがファイアウォールを通過する可能性があります。

HTTPS 認証は SSL ポート 443 で発生するため、HTTP クライアントから HTTP サーバに向かうポート 443 上のトラフィックをブロックするように access-list コマンド文を設定しないでください。また、ポート 80 上の Web トラフィックに対してスタティック PAT を設定する場合は、SSL ポートに対してもスタティック PAT を設定する必要があります。次の例では、1 行目で Web トラフィックに対してスタティック PAT を設定しているため、2 行目を追加して、HTTPS 認証コンフィギュレーションをサポートする必要があります。

static (inside,outside) tcp 10.132.16.200 www 10.130.16.10 www
static (inside,outside) tcp 10.132.16.200 443 10.130.16.10 443
 

セキュリティ アプライアンスでの直接認証

adaptive security applianceから HTTP、HTTPS、Telnet、または FTP を許可しないで他のタイプのトラフィックを認証する場合、HTTP、HTTPS または Telnet を使用して直接adaptive security applianceで認証できます。

この項は、次の内容で構成されています。

「HTTP および HTTPS による直接認証のイネーブル化」

「Telnet による直接認証のイネーブル化」

HTTP および HTTPS による直接認証のイネーブル化

「ネットワーク アクセス認証のイネーブル化」に示す HTTP および HTTPS 認証のリダイレクト方式をイネーブルにした場合は、直接認証も自動的にイネーブルになります。

基本 HTTP 認証を引き続き使用しながら、HTTP および HTTPS に対する直接認証をイネーブルにする場合は、次のコマンドを入力します。

hostname(config)# aaa authentication listener http[s] interface_name [port portnum]
 

interface_name 引数は、直接認証をイネーブルにするインターフェイスです。

port portnum 引数で、adaptive security applianceが受信するポート番号を指定します。デフォルトは 80(HTTP)と 443(HTTPS)です。

このコマンドを、HTTP と HTTPS について別々に入力します。

adaptive security applianceだけでなく、宛先 HTTP サーバでも認証が必要な場合、 virtual http コマンドを使用するとadaptive security appliance(AAA サーバ経由)の認証と HTTP サーバの認証を別々に受けることができます。仮想 HTTP を使用しないと、adaptive security applianceの認証に使用するものと同じユーザ名とパスワードが HTTP サーバに送信され、HTTP サーバのユーザ名とパスワードを入力するプロンプトが別途表示されることはありません。AAA サーバと HTTP サーバでユーザ名とパスワードが異なると、この HTTP 認証は失敗します。

このコマンドは AAA 認証を必要とするすべての HTTP 接続をadaptive security appliance上の仮想 HTTP サーバにリダイレクトします。adaptive security applianceにより、AAA サーバのユーザ名とパスワードの入力を求めるプロンプトが表示されます。AAA サーバがユーザを認証すると、adaptive security applianceは HTTP 接続を元のサーバにリダイレクトして戻しますが、AAA サーバのユーザ名とパスワードは含めません。HTTP パケットにユーザ名とパスワードが含まれていないため、HTTP サーバによって HTTP サーバのユーザ名とパスワードの入力を求めるプロンプトが別途表示されます。

着信ユーザ(セキュリティの低い方から高い方へ向かう)については、送信元インターフェイスに適用されるアクセスリストに宛先インターフェイスとして仮想 HTTP アドレスも含める必要があります。さらに、NAT が必要でない場合でも( no nat-control コマンドを使用)、仮想 HTTP IP アドレス用の static コマンドを追加する必要があります。通常、アイデンティティ NAT コマンドが使用されます(アドレスを同一アドレスに変換)。

発信ユーザについては、トラフィックの許可は明示的に行われますが、内部インターフェイスにアクセスリストを適用する場合は、必ず仮想 HTTP アドレスへのアクセスを許可してください。 static 文は必要ありません。


virtual http コマンドを使用する場合は、timeout uauth コマンドの存続時間を 0 秒に設定しないでください。0 秒に設定すると、HTTP で実際の Web サーバに接続できなくなります。


インターフェイスに対して AAA をイネーブルにすると、次の URL で直接adaptive security applianceによって認証できます。

http://interface_ip[:port]/netaccess/connstatus.html
https://interface_ip[:port]/netaccess/connstatus.html
 

Telnet による直接認証のイネーブル化

すべてのプロトコルまたはサービスに対してネットワーク アクセス認証を設定できますが( aaa authentication match コマンドまたは aaa authentication include コマンドを参照)、直接認証を受けることができるのは HTTP、Telnet、または FTP を使用する場合だけです。ユーザがこれらのサービスのいずれかの認証を受けないと、認証が必要な他のトラフィックは通過を許可されません。adaptive security applianceから HTTP、Telnet、または FTP を許可しないで他のタイプのトラフィックを認証する場合、仮想 Telnet を設定できます。adaptive security appliance上に設定された所定の IP アドレスにユーザが Telnet 接続すると、adaptive security applianceは Telnet プロンプトを表示します。

仮想 Telnet サーバを設定するには、次のコマンドを入力します。

hostname(config)# virtual telnet ip_address
 

ip_address 引数で、仮想 Telnet サーバの IP アドレスを設定します。このアドレスは、adaptive security applianceにルーティングされる未使用のアドレスにしてください。

authentication match または aaa authentication include コマンドを使用して、仮想 Telnet アドレスへの Telnet アクセスの認証を、認証するその他のサービスと共に設定する必要があります。

未認証のユーザが仮想 Telnet IP アドレスに接続すると、ユーザはユーザ名とパスワードを求められ、その後 AAA サーバにより認証されます。認証されると、ユーザには「Authentication Successful.」というメッセージが表示されます。それ以降、ユーザは認証を必要とする他のサービスに正常にアクセスできます。

着信ユーザ(セキュリティの低い方から高い方へ向かう)については、送信元インターフェイスに適用されるアクセスリストに宛先インターフェイスとして仮想 Telnet アドレスも含める必要があります。さらに、NAT が必要でない場合も含め( no nat-control コマンドを使用)、仮想 Telnet IP アドレス用の static コマンドを追加する必要があります。通常、アイデンティティ NAT コマンドが使用されます(アドレスを同一アドレスに変換)。

発信ユーザについては、トラフィックの許可は明示的に行われますが、内部インターフェイスにアクセスリストを適用する場合は、必ず仮想 Telnet アドレスへのアクセスを許可してください。 static 文は必要ありません。

adaptive security applianceからログアウトするには、仮想 Telnet IP アドレスに再接続します。ログアウトを確認するプロンプトが表示されます。

次の例は、仮想 Telnet をイネーブルにし、他のサービスに対しては AAA 認証をイネーブルにする方法を示しています。

hostname(config)# virtual telnet 209.165.202.129
hostname(config)# access-list ACL-IN extended permit tcp any host 209.165.200.225 eq smtp
hostname(config)# access-list ACL-IN remark This is the SMTP server on the inside
hostname(config)# access-list ACL-IN extended permit tcp any host 209.165.202.129 eq telnet
hostname(config)# access-list ACL-IN remark This is the virtual Telnet address
hostname(config)# access-group ACL-IN in interface outside
hostname(config)# static (inside, outside) 209.165.202.129 209.165.202.129 netmask 255.255.255.255
hostname(config)# access-list AUTH extended permit tcp any host 209.165.200.225 eq smtp
hostname(config)# access-list AUTH remark This is the SMTP server on the inside
hostname(config)# access-list AUTH extended permit tcp any host 209.165.202.129 eq telnet
hostname(config)# access-list AUTH remark This is the virtual Telnet address
hostname(config)# aaa authentication match AUTH outside tacacs+
 

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

ユーザが所定の接続のための認証を受けると、adaptive security applianceは認可を使用して、ユーザからのトラフィックをさらに制御できます。

この項は、次の内容で構成されています。

「TACACS+ 認可の設定」

「RADIUS 認可の設定」

TACACS+ 認可の設定

TACACS+ でネットワーク アクセス認可を実行するように、adaptive security applianceを設定できます。認可規則が一致する必要のあるアクセスリストを指定することにより、認可するトラフィックを指定します。または、認可規則自体で直接、トラフィックを指定することもできます。


ヒント アクセスリストを使用して認可するトラフィックを指定すると、入力する必要のある認可コマンドの数を大幅に少なくできます。これは、入力した各認可規則では、送信元と宛先のサブネットとサービスを 1 つだけ指定できるのに対して、アクセスリストには多数のエントリを含めることができるためです。


認証文と認可文は互いに依存しませんが、認可文で一致した未認証トラフィックはすべて拒否されます。認可が成功するためには、ユーザは最初にadaptive security applianceで認証を受ける必要があります。所定の IP アドレスのユーザは、すべての規則およびタイプに対して一度だけ認証を受ければよいため、認証セッションが期限切れになっていなければ、トラフィックが認証文で一致した場合でも、認可が発生することがあります。

ユーザの認証が完了すると、adaptive security applianceは、一致するトラフィックの認可規則をチェックします。トラフィックが認可文に一致した場合、adaptive security applianceはユーザ名を TACACS+ サーバに送信します。TACACS+ サーバはadaptive security applianceに応答し、ユーザ プロファイルに基づいてそのトラフィックの許可または拒否を示します。adaptive security applianceは、その応答内の認可規則を実施します。

ユーザに対するネットワーク アクセス認可の設定については、ご使用の TACACS+ サーバのマニュアルを参照してください。

TACACS+ 認可を設定するには、次の手順を実行します。


ステップ 1 認証をイネーブルにします。詳細については、「ネットワーク アクセス認証のイネーブル化」を参照してください。すでに認証をイネーブルにしてある場合は、次の手順に進みます。

ステップ 2 access-list コマンドを使用して、認可するトラフィックの送信元アドレスと宛先アドレスを指定するアクセスリストを作成します。手順については、「拡張アクセスリストの追加」を参照してください。

許可 ACE は、一致したトラフィックを認可するようにマークします。一方、 拒否 エントリは、一致したトラフィックを認可から除外します。認可の照合に使用するアクセスリストには、認証の照合に使用するアクセスリストの規則と同じ規則またはその一部が含まれている必要があります。


) 認証を設定済みで、なおかつ認証されたトラフィックをすべて認可する場合、aaa authentication match コマンドで使用するために作成したアクセスリストと同じアクセスリストを使用できます。


ステップ 3 認可をイネーブルにするには、次のコマンドを入力します。

hostname(config)# aaa authorization match acl_name interface_name server_group
 

acl_nameステップ 2 で作成したアクセスリストの名前、 interface_name nameif コマンドまたはデフォルトで指定したインターフェイスの名前、 server_group は認証をイネーブルにしたときに作成した AAA サーバ グループです。


) もう 1 つの方法として、aaa authorization include コマンド(コマンド内でトラフィックを指定するコマンド)を使用することもできます。ただし、同一コンフィギュレーション内で両方の方法を使用することはできません。詳細については、『Cisco ASA 5580 Adaptive Security Appliance Command Reference』を参照してください。



 

次のコマンドは、内部 Telnet トラフィックを認証し、認可します。209.165.201.5 以外のサーバに向かう Telnet トラフィックは認証だけを受けますが、209.165.201.5 に向かうトラフィックには認可が必要です。

hostname(config)# access-list TELNET_AUTH extended permit tcp any any eq telnet
hostname(config)# access-list SERVER_AUTH extended permit tcp any host 209.165.201.5 eq telnet
hostname(config)# aaa-server AuthOutbound protocol tacacs+
hostname(config-aaa-server-group)# exit
hostname(config)# aaa-server AuthOutbound (inside) host 10.1.1.1
hostname(config-aaa-server-host)# key TACPlusUauthKey
hostname(config-aaa-server-host)# exit
hostname(config)# aaa authentication match TELNET_AUTH inside AuthOutbound
hostname(config)# aaa authorization match SERVER_AUTH inside AuthOutbound
 

RADIUS 認可の設定

認証が成功すると、RADIUS プロトコルは RADIUS サーバによって送信される access-accept メッセージでユーザ認可を返します。認証の設定の詳細については、「ネットワーク アクセス認証の設定」を参照してください。

ネットワーク アクセスについてユーザを認証するようにadaptive security applianceを設定すると、RADIUS 認可も暗黙的にイネーブルになっています。したがって、この項では、adaptive security appliance上の RADIUS 認可の設定については取り上げません。ここでは、adaptive security applianceが RADIUS サーバから受信したアクセスリスト情報をどのように処理するかについて説明します。

アクセスリストをadaptive security applianceにダウンロードするように RADIUS サーバを設定できます。または、認証時にアクセスリスト名をダウンロードするようにも設定できます。ユーザは、ユーザ固有のアクセスリストで許可された操作だけを認可されます。


access-group コマンドを使用してアクセスリストをインターフェイスに適用した場合は、per-user-override キーワードが、ユーザ固有のアクセスリストによる認可に対して次のように影響を与えることに注意してください。

per-user-override キーワードを使用しない場合、ユーザ セッションのトラフィックは、インターフェイス アクセスリストとユーザ固有のアクセスリストの両方によって許可される必要があります。

per-user-override キーワードを使用した場合、ユーザ固有のアクセスリストによって許可される内容が決定されます。

詳細については、『 Cisco ASA 5580 Adaptive Security Appliance Command Reference 』の access-group コマンドの項を参照してください。


 

この項は、次の内容で構成されています。

「ダウンロード可能な ACL を送信するための RADIUS サーバの設定」

「ユーザごとの ACL 名をダウンロードするための RADIUS サーバの設定」

ダウンロード可能な ACL を送信するための RADIUS サーバの設定

この項では、Cisco Secure ACS およびサードパーティ RADIUS サーバを設定する方法について説明します。次の項目を取り上げます。

「ダウンロード可能なアクセスリストの機能と Cisco Secure ACS について」

「ダウンロード可能なアクセスリストに関する Cisco Secure ACS の設定」

「ダウンロード可能なアクセスリストに関する任意の RADIUS サーバの設定」

「ダウンロード可能なアクセスリスト内のワイルドカード ネットマスク表現の変換」

ダウンロード可能なアクセスリストの機能と Cisco Secure ACS について

ダウンロード可能なアクセスリストは、Cisco Secure ACS を使用して各サーバに適切なアクセスリストを提供する場合に最もスケーラブルな方法です。次の機能があります。

無制限のアクセスリスト サイズ:ダウンロード可能なアクセスリストは、完全なアクセスリストを Cisco Secure ACS からadaptive security applianceに転送するために必要な数の RADIUS パケットを使用して送信されます。

アクセスリスト管理の簡素化および集中化:ダウンロード可能なアクセスリストにより、一度記述したアクセスリスト セットを多数のユーザ プロファイルまたはグループ プロファイルに適用することや、多数のadaptive security applianceに配布できます。

この方法は、複数の Cisco Secure ACS ユーザまたはグループに適用する非常に大きいアクセスリスト セットがある場合に最適ですが、Cisco Secure ACS ユーザおよびグループの管理を簡素化できることから、アクセスリストのサイズを問わず有用です。

adaptive security applianceは、ダウンロード可能なアクセスリストを Cisco Secure ACS から次のプロセスで受信します。

1. adaptive security applianceがユーザ セッションのための RADIUS 認証要求パケットを送信します。

2. Cisco Secure ACS がそのユーザを正常に認証した場合、Cisco Secure ACS は、該当するダウンロード可能なアクセスリストの内部名が含まれた RADIUS access-accept メッセージを返します。Cisco IOS cisco-av-pair RADIUS VSA(ベンダー 9、アトリビュート 1)には、ダウンロード可能なアクセスリスト セットを特定する次の AV のペアが含まれています。

ACS:CiscoSecure-Defined-ACL=acl-set-name
 

acl-set-name はダウンロード可能なアクセスリストの内部名です。この名前は、Cisco Secure ACS 管理者がアクセスリストに割り当てた名前とアクセスリストが最後に変更された日時の組み合せです。

3. adaptive security applianceはダウンロード可能なアクセスリストの名前を検査し、以前にその名前のダウンロード可能なアクセスリストを受信したことがあるかどうかを判別します。

adaptive security applianceが以前にその名前のダウンロード可能アクセスリストを受信したことがある場合は、Cisco Secure ACS との通信は完了し、adaptive security applianceはアクセスリストをユーザ セッションに適用します。ダウンロード可能なアクセスリストの名前には最後に変更された日時が含まれているため、Cisco Secure ACS から送信された名前と、以前にダウンロードしたアクセスリストの名前が一致するということは、adaptive security applianceはダウンロード可能なアクセスリストの最新バージョンを持っていることになります。

adaptive security applianceが以前にその名前のダウンロード可能なアクセスリストを受信したことがない場合は、そのアクセスリストの古いバージョンを持っているか、そのアクセスリストのどのバージョンもダウンロードしたことがないことになります。いずれの場合でも、adaptive security applianceは、ダウンロード可能なアクセスリスト名を RADIUS 要求内のユーザ名として使用し、ヌル パスワード アトリビュートとともに RADIUS 認証要求を発行します。cisco-av-pair RADIUS VSA では、この要求に次の AV のペアも含まれます。

AAA:service=ip-admission
AAA:event=acl-download
 

これに加えて、adaptive security applianceは Message-Authenticator アトリビュート(IETF RADIUS アトリビュート 80)で要求に署名します。

4. ダウンロード可能なアクセスリストの名前が含まれているユーザ名アトリビュートを持つ RADIUS 認証要求を受信すると、Cisco Secure ACS は Message-Authenticator アトリビュートをチェックして要求を認証します。Message-Authenticator アトリビュートがない場合、または正しくない場合、Cisco Secure ACS はその要求を無視します。Message-Authenticator アトリビュートの存在により、ダウンロード可能なアクセスリスト名がネットワーク アクセスの不正取得に悪用されることが防止されます。Message-Authenticator アトリビュートとその使用方法は、RFC 2869「RADIUS Extensions」で定義されています。この文書は、 http://www.ietf.org で入手できます。

5. 要求されたアクセスリストの長さが約 4 KB 未満の場合、Cisco Secure ACS はそのアクセスリストを含めた access-accept メッセージで応答します。メッセージには他の必須アトリビュートを含める必要があるので、1 つの access-accept メッセージに収まるアクセスリストの最大サイズは 4 KB よりわずかに小さくなります。

Cisco Secure ACS はダウンロード可能なアクセスリストを cisco-av-pair RADIUS VSA で送信します。アクセスリストは、一連の AV のペアという形式をとります。各ペアには ACE が 1 つ含まれ、シリアル番号が付けられます。

ip:inacl#1=ACE-1
ip:inacl#2=ACE-2
.
.
.
ip:inacl#n=ACE-n
 

AV のペアの例を次に示します。

ip:inacl#1=permit tcp 10.1.0.0 255.0.0.0 10.0.0.0 255.0.0.0
 

6. 要求されたアクセスリストの長さが約 4 KB を超える場合、Cisco Secure ACS は、上記の形式のアクセスリストの一部が含まれた access-challenge メッセージで応答します。メッセージには、State アトリビュート(IETF RADIUS アトリビュート 24)も含まれています。State アトリビュートには、Cisco Secure ACS がダウンロードの進捗を追跡するために使用する制御データが含まれています。Cisco Secure ACS は、RADIUS メッセージの最大サイズ以内で可能な限り多数の完全な AV のペアを cisco-av-pair RADIUS VSA に含めます。

adaptive security applianceはアクセスリストの一部を受信すると、それを保存し、新しい access-request メッセージで応答します。これには、ダウンロード可能なアクセスリストを求める最初の要求と同じアトリビュートと、access-challenge メッセージで受信した State アトリビュートのコピーが含まれています。

これは、Cisco Secure ACS がアクセスリストの最後の部分を access-accept メッセージで送信するまで続行されます。

ダウンロード可能なアクセスリストに関する Cisco Secure ACS の設定

Cisco Secure ACS 上のダウンロード可能なアクセスリストを共有プロファイル コンポーネントとして設定し、そのアクセスリストをグループまたは個々のユーザに割り当てることができます。

アクセスリスト定義は、次のプレフィックスがない点を除いて拡張 access-list コマンド(「拡張アクセスリストの追加」を参照)に類似する、1 つまたは複数のadaptive security applianceコマンドで構成されます。

access-list acl_name extended
 

Cisco Secure ACS バージョン 3.3 上のダウンロード可能なアクセスリスト定義の例を次に示します。

+--------------------------------------------+
| Shared profile Components |
| |
| Downloadable IP ACLs Content |
| |
| Name: acs_ten_acl |
| |
| 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 |
+--------------------------------------------+
 

ダウンロード可能なアクセスリストを作成する方法、およびそれらをユーザと関連付ける方法の詳細については、ご使用のバージョンの Cisco Secure ACS のマニュアルを参照してください。

adaptive security appliance上では、ダウンロードされたアクセスリストの名前は次のようになります。

#ACSACL#-ip-acl_name-number
 

acl_name 引数は Cisco Secure ACS で定義された名前(上記の例では acs_ten_acl)、 number は Cisco Secure ACS が生成した一意のバージョン ID です。

adaptive security appliance上にダウンロードされたアクセスリストは、次の行で構成されます。

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

ダウンロード可能なアクセスリストに関する任意の RADIUS サーバの設定

ユーザ固有のアクセスリストを Cisco IOS RADIUS cisco-av-pair VSA(ベンダー 9、アトリビュート 1)でadaptive security applianceに送信するように、Cisco IOS RADIUS VSA をサポートする任意の RADIUS サーバを設定できます。

cisco-av-pair VSA で、 access-list extended コマンド(「拡張アクセスリストの追加」を参照)と類似する 1 つまたは複数のアクセスリストを設定します。ただし、次のコマンド プレフィックスを置き換える必要があります。

access-list acl_name extended
 

次のテキストに置き換えます。

ip:inacl#nnn=
 

nnn 引数は、0 ~ 999999999 の番号で、adaptive security appliance上に設定するコマンド文の順序を指定します。このパラメータを省略すると、順番は 0 となり、cisco-av-pair RADIUS VSA 内部の ACE の順序が使用されます。

RADIUS サーバ上の cisco-av-pair VSA に対して設定されている必要のあるアクセスリスト定義の例を次に示します。

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
 

cisco-av-pair アトリビュートで送信されるアクセスリストをユーザごとに一意にする方法については、ご使用の RADIUS サーバのマニュアルを参照してください。

adaptive security appliance上では、ダウンロードされたアクセスリストの名前は次の形式になります。

AAA-user-username
 

username 引数は、認証を受けるユーザの名前です。

adaptive security appliance上にダウンロードされたアクセスリストは、次の行で構成されます。RADIUS サーバ上で指定された番号に基づいた順序になっています。

access-list AAA-user-bcham34-79AD4A08 permit tcp 10.1.0.0 255.0.0.0 10.0.0.0 255.0.0.0
access-list AAA-user-bcham34-79AD4A08 permit udp 10.1.0.0 255.0.0.0 10.0.0.0 255.0.0.0
access-list AAA-user-bcham34-79AD4A08 permit icmp 10.1.0.0 255.0.0.0 10.0.0.0 255.0.0.0
access-list AAA-user-bcham34-79AD4A08 deny tcp any any
access-list AAA-user-bcham34-79AD4A08 deny udp any any
 

ダウンロードされたアクセスリストの「access-list」という単語と名前の間には、2 個のスペースがあります。これらのスペースにより、ダウンロードされたアクセスリストとローカルのアクセスリストが区別されます。この例では、「79AD4A08」はadaptive security applianceが作成したハッシュ値で、RADIUS サーバ上でアクセスリスト定義がいつ変更されたかを判別するために役立ちます。

ダウンロード可能なアクセスリスト内のワイルドカード ネットマスク表現の変換

RADIUS サーバを使用して、ダウンロード可能なアクセスリストを Cisco VPN 3000 シリーズ コンセントレータおよびadaptive security applianceに提供する場合は、ワイルドカード ネットマスク表現を標準のネットマスク表現に変換するようにadaptive security applianceを設定しなければならない場合があります。これは、Cisco VPN 3000 シリーズ コンセントレータはワイルドカード ネットマスク表現をサポートしますが、adaptive security applianceは標準のネットマスク表現しかサポートしないためです。これらの違いは、RADIUS サーバ上のダウンロード可能なアクセスリストを設定する方法に影響しますが、ワイルドカード ネットマスク表現を変換するようにadaptive security applianceを設定することで、その影響を最小限に抑えることができます。ワイルドカード ネットマスク表現の変換により、RADIUS サーバ上のダウンロード可能なアクセスリストのコンフィギュレーションを変更することなく、Cisco VPN 3000 シリーズ コンセントレータ用に記述されたダウンロード可能なアクセスリストをadaptive security applianceで使用できます。

アクセスリスト ネットマスク変換は、 acl-netmask-convert コマンドを使用してサーバごとに設定できます。このコマンドは AAA サーバ コンフィギュレーション モードで使用できます。RADIUS サーバの設定方法の詳細については、「AAA サーバ グループおよびサーバの識別」を参照してください。 acl-netmask-convert コマンドの詳細については、『 Cisco ASA 5580 Adaptive Security Appliance Command Reference 』を参照してください。

ユーザごとの ACL 名をダウンロードするための RADIUS サーバの設定

ユーザ認証時に、adaptive security applianceで作成済みのアクセスリストの名前を RADIUS サーバからダウンロードするには、IETF RADIUS filter-id アトリビュート(アトリビュート番号 11)を次のように設定します。

filter-id=acl_name
 

) Cisco Secure ACS では、filter-id アトリビュートの値は、HTML インターフェイスのボックスで、filter-id= を省略し、acl_name だけを入力して指定します。


filter-id アトリビュートの値をユーザごとに一意にする方法については、ご使用の RADIUS サーバのマニュアルを参照してください。

「拡張アクセスリストの追加」上にアクセスリストを作成する方法については、adaptive security applianceを参照してください。

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

adaptive security applianceは、adaptive security applianceを通過する任意の TCP トラフィックまたは UDP トラフィックについてのアカウンティング情報を RADIUS サーバまたは TACACS+ サーバに送信できます。そのトラフィックも認証されている場合、AAA サーバはユーザ名でアカウンティング情報を保持できます。そのトラフィックが認証されていない場合、AAA サーバは IP アドレスでアカウンティング情報を保持できます。アカウンティング情報には、セッションの開始時刻と終了時刻、ユーザ名、そのセッションでadaptive security applianceを経由したバイト数、使用されたサービス、セッションの継続時間が含まれます。

アカウンティングを設定するには、次の手順を実行します。


ステップ 1 ユーザごとのアカウンティング データを提供するようにadaptive security applianceを設定する場合は、認証をイネーブルにする必要があります。詳細については、「ネットワーク アクセス認証のイネーブル化」を参照してください。IP アドレスごとのアカウンティング データを提供するようにadaptive security applianceを設定する場合は、認証をイネーブルにする必要はありません。次のステップに進みます。

ステップ 2 access-list コマンドを使用して、アカウンティング対象のトラフィックの送信元アドレスと宛先アドレスを指定するアクセスリストを作成します。手順については、「拡張アクセスリストの追加」を参照してください。

許可 ACE は、一致したトラフィックを認可するようにマークします。一方、 拒否 エントリは、一致したトラフィックを認可から除外します。


) 認証が設定済みで、なおかつ認証されたすべてのトラフィックのアカウンティング データが必要な場合、aaa authentication match コマンドで使用するために作成したアクセスリストと同じアクセスリストを使用できます。


ステップ 3 アカウンティングをイネーブルにするには、次のコマンドを入力します。

hostname(config)# aaa accounting match acl_name interface_name server_group
 

acl_name 引数は、 access-list コマンドで設定されたアクセスリスト名です。

interface_name 引数は、 nameif コマンドで設定されたインターフェイス名です。

server_group 引数は、 aaa-server コマンドで設定されたサーバ グループ名です。


) もう 1 つの方法として、aaa accounting include コマンド(コマンド内でトラフィックを指定するコマンド)を使用することもできます。ただし、同一コンフィギュレーション内で両方の方法を使用することはできません。詳細については、『Cisco ASA 5580 Adaptive Security Appliance Command Reference』を参照してください。



 

次のコマンドは、内部 Telnet トラフィックを認証、認可、アカウンティングします。209.165.201.5 以外のサーバに向かう Telnet トラフィックは認証だけを受けますが、209.165.201.5 に向かうトラフィックには認可およびアカウンティングが必要です。

hostname(config)# aaa-server AuthOutbound protocol tacacs+
hostname(config-aaa-server-group)# exit
hostname(config)# aaa-server AuthOutbound (inside) host 10.1.1.1
hostname(config-aaa-server-host)# key TACPlusUauthKey
hostname(config-aaa-server-host)# exit
hostname(config)# access-list TELNET_AUTH extended permit tcp any any eq telnet
hostname(config)# access-list SERVER_AUTH extended permit tcp any host 209.165.201.5 eq telnet
hostname(config)# aaa authentication match TELNET_AUTH inside AuthOutbound
hostname(config)# aaa authorization match SERVER_AUTH inside AuthOutbound
hostname(config)# aaa accounting match SERVER_AUTH inside AuthOutbound
 

MAC アドレスによるトラフィックの認証と認可の免除

adaptive security applianceは、特定の MAC アドレスからのトラフィックの認証および認可を免除できます。たとえば、adaptive security applianceが特定のネットワークから発信される TCP トラフィックを認証しても、特定のサーバからの未認証の TCP 接続を許可する場合に、MAC 免除規則を使用すると、この規則が指定したサーバからのすべてのトラフィックに対して認証および認可が免除されます。

この機能は、認証プロンプトに対して応答できない IP 電話などの装置を免除する場合に特に便利です。

MAC アドレスを使用してトラフィックの認証および認可を免除するには、次の手順を実行します。


ステップ 1 MAC リストを設定するには、次のコマンドを入力します。

hostname(config)# mac-list id {deny | permit} mac macmask
 

id 引数は、MAC リストに割り当てる 16 進数です。一連の MAC アドレスをグループ化するには、同じ ID 値に必要な回数分 mac-list コマンドを入力します。AAA 免除に 1 つだけ MAC リストを使用できるので、MAC リストには必ず免除するすべての MAC アドレスを含めてください。複数の MAC リストを作成できますが、使用できるのは一度に 1 つだけです。

ベスト マッチ シナリオと異なり、パケットは照合する最初のエントリを使用するので、エントリの順番が重要になります。許可エントリがあり、そのエントリにより許可されたアドレスを拒否する場合は、許可エントリの前に拒否エントリを入力してください。

mac 引数に、12 桁の 16 進数の形式(nnnn.nnnn.nnnn)で送信元の MAC アドレスを指定します。

macmask 引数に、照合に使用される MAC アドレスの一部を指定します。たとえば、ffff.ffff.ffff は完全に MAC アドレスと一致します。ffff.ffff.0000 は最初の 8 桁だけ一致します。

ステップ 2 特定の MAC リストで指定されている MAC アドレスのトラフィックに対して免除するには、次のコマンドを入力します。

hostname(config)# aaa mac-exempt match id
 

id は、認証および認可を免除するトラフィックの MAC アドレスが含まれている MAC リストを指定する文字列です。 aaa mac-exempt コマンドのインスタンスを 1 つだけ入力できます。


 

次の例では、1 個の MAC アドレスに対する認証をバイパスしています。

hostname(config)# mac-list abc permit 00a0.c95d.0282 ffff.ffff.ffff
hostname(config)# aaa mac-exempt match abc
 

次のエントリは、ハードウェア ID 0003.E3 を持つすべての Cisco IP Phone の認証をバイパスします。

hostname(config)# mac-list acd permit 0003.E300.0000 FFFF.FF00.0000
hostname(config)# aaa mac-exempt match acd
 

次の例では、00a0.c95d.02b2 以外の MAC アドレス グループの認証をバイパスします。00a0.c95d.02b2 は permit 文とも照合するので、permit 文の前に deny 文を入力します。また、permit 文が先に来ると、deny 文とは照合しません。

hostname(config)# mac-list 1 deny 00a0.c95d.0282 ffff.ffff.ffff
hostname(config)# mac-list 1 permit 00a0.c95d.0000 ffff.ffff.0000
hostname(config)# aaa mac-exempt match 1