◆ AAA - ログイン認可のための設定
ログイン認証が成功しても、認証後のログイン画面のCLIが「ユーザモード」の場合、設定変更などの
コマンドを実行をできません。そこで認証が成功したユーザに対して「認可」によって属性を提供して
そのユーザに関連付けられた権限を付与できます。それにより、例えばログイン後が「特権モード」へ。
◆ AAA - Authorization 設定( ログイン認可のための設定 )
AAAはデフォルトでディセーブルにされているため、先ずグローバルでAAAを有効化する設定が必要です。
◆ AAAの有効化
(config)# aaa new-model
次に、ログイン認可方式リストの設定を行います。認証方式(method)は複数選択することができますが
その場合は method1 から順番で実行され、タイムアウトのエラーを受信すると次の認証方式を実行します。
◆ ログイン認可方式リストの設定
(config)# aaa authorization exec [ default | list-name ] method1 method2...
コマンド引数 |
説明 |
default |
VTY、TTY、Console、Auxなど、全ての回線に自動的に適用される認可方式のデフォルトリスト。
|
list-name |
VTY、TTY、Console、Auxなど、回線ごとに個別に認可方式を適用したい場合に任意の名前で使用。
|
method |
認可方法を「 group、group radius、group tacacs+、if-authenticated、local、none 」から選択。
|
methodの種類 |
説明 |
group |
認可方法に任意のRADIUSのグループ名、または任意のTACACS+のグループ名を使用。
|
group radius |
認可方法にRADIUSサーバを使用。RADIUSサーバに保存されている属性をユーザに関連付け。
|
group tacacs+ |
認可方法にTACACS+サーバを使用。TACACS+サーバに保存されている属性をユーザに関連付け。
|
if-authenticated |
ユーザが認証に成功していれば、要求されている機能へのアクセスが許可される。 |
local |
ルータ上のローカルデータベース( usernameコマンドで定義 )を使用して認可を行う。 |
none |
認可はおこなわれない。 |
最後に、認可リストを適用したい回線(console、vty、tty、aux)を指定して認可方式リストを適用します。
認可方式リストに「 default 」を選択した場合、つまり「 authorization exec default 」と設定した場合は
デフォルトのコンフィグ状態であることから、機種やIOSバージョンにより、show runでは表示されません。
◆ 認可方式リストの適用
(config)# line [ console | vty | tty | aux ] number number
(config-line)# authorization exec [ default | list-name ]
◆ コンソール認可の有効化 (config)# aaa authorization console
デフォルトではコンソールでの認可プロセスはディセーブルであるため、有効化するための設定が必要です。
以下の設定例では、Ciscoデバイスに管理ログインする際に、ユーザ名とパスワード入力が求められますが
管理者がユーザ名とパスワードを入力するとRADIUSサーバに問い合わせて認証の可否を判断する設定です。
そして、認証が成功したユーザに対して、ユーザに関連づけた権限が付与される設定です。RADIUSサーバ
では、例えばユーザ「infraexpert」に対して「privilege:15」を付与する設定をしておく必要があります。
◆ AAA - ログイン認証とログイン認可のための設定例 1
Cisco(config) # radius-server ISE01
Cisco(config-radius-server) # address ipv4 192.168.10.101 auth-port 1812 acct-port 1813
Cisco(config-radius-server) # key Cisco123
Cisco(config) # aaa new-model
Cisco(config) # aaa group server radius GROUP-ISE
Cisco(config-sg-radius) # server name ISE01
Cisco(config) # aaa authentication login default group GROUP-ISE Cisco(config) # aaa authorization exec default group GROUP-ISE
Cisco(config) # aaa authorization console
|
上記の動作に加えて、RADIUSクライアントとRADIUSサーバが通信できない状態になった時、ローカルで
設定したデータベース(ユーザ名:admin、パスワード:Cisco123)を使用して認証、認可するように設定。
◆ AAA - ログイン認証とログイン認可のための設定例 2(一般的な設定)
Cisco(config) # radius-server ISE01
Cisco(config-radius-server) # address ipv4 192.168.10.101 auth-port 1812 acct-port 1813
Cisco(config-radius-server) # key Cisco123
Cisco(config) # aaa new-model
Cisco(config) # aaa group server radius GROUP-ISE
Cisco(config-sg-radius) # server name ISE01
Cisco(config) # username admin privilege 15 secret Cisco123
Cisco(config) # aaa authentication login default group GROUP-ISE local
Cisco(config) # aaa authorization exec default group GROUP-ISE local
Cisco(config) # aaa authorization console
|
機器の line vty へのログイン( telnet接続やSSH接続など)する時は、RADIUS認証とRADIUS認可を行い、
機器の line console へのログインする時は、機器に設定したローカルデータベースの認証と認可をする設定。
◆ AAA - ログイン認証とログイン認可のための設定例 3
Cisco(config) # radius-server ISE01
Cisco(config-radius-server) # address ipv4 192.168.10.101 auth-port 1812 acct-port 1813
Cisco(config-radius-server) # key Cisco123
Cisco(config) # aaa new-model
Cisco(config) # aaa group server radius GROUP-ISE
Cisco(config-sg-radius) # server name ISE01
Cisco(config) # username admin privilege 15 secret Cisco123
Cisco(config) # aaa authentication login C-LOCAL local
Cisco(config) # aaa authentication login L-RADIUS group GROUP-ISE local
Cisco(config) # aaa authorization exec C-LOCAL local
Cisco(config) # aaa authorization exec L-RADIUS group GROUP-ISE local
Cisco(config) # aaa authorization console
Cisco(config) # line vty 0 15
Cisco(config-line) # login authentication L-RADIUS
Cisco(config-line) # authorization exec L-RADIUS
Cisco(config) # line console 0
Cisco(config-line) # login authentication C-LOCAL
Cisco(config-line) # authorization exec C-LOCAL
|
本ページでは認可タイプに「exec」を指定して解説しましたが、その他にも色々な認可タイプがあります。
認証設定 |
説明 |
認可タイプ |
@ exec : NW機器へのログイン時に、その認証ユーザに関連付けられた属性に対する認可。
A network : ネットワーク関連のサービス要求に対するユーザRADIUS認可。802.1Xでも利用。
B commands : ユーザが発行(実行)するコマンドに対するに認可。
C reverse-access : リバースtelnetなどのリバースアクセス接続に認可を適用
|
|