■ローカル認証
AAAとは 「Authentication」 、 「Authorization」 、 「Accounting」の略語です。
RADIUSやTACACSで一般的に利用するものですが、Catalystなどでも利用可能です。シスコ機器にログインする際に予め機器に登録しておいたユーザ名とパスワードでログインすることができるように設定することを紹介します。
以下が必要な設定です。
(config)# service password-encryption (config)# aaa new-model (config)# aaa authentication login default local (config)# username xxxx password yyyy (config)# enable secret xxyyzz (config)# access-list 1 permit 192.168.1.0 0.0.0.255 (config)# line vty 0 4 (config-line)# access-class 1 in |
service password-encryptionでsh runnをうった際にパスワードを暗号化をすることができます。
aaa new-modelでaaaを有効とし、次の行で機器内部に登録されているユーザ名とパスワードで認証できるよう設定しています。
usernameの行で認証するユーザ名とパスワードを登録しています。但し、Telnetアクセスの場合では必須ではなく設定せずともOKです。設定するか否かはその人のポリシー次第かと。但し、設定しない場合はTelnetパスワードが必須となります。Telnetパスワードの設定は以下のようなります。
line vty 0 4 password xxyyzz |
enable secretでenableパスワードを設定します。コンソールアクセスのみであればこれも必須ではありませんがTelnetやSSHでのアクセスを行う場合は必須の項目となります。設定されていない場合、リモートからログインしてenableになろうとしてもパスワードが設定されていませんと弾かれてしまいます。一般的にコンソールのみで運用しているところは少ないと思うのでまぁ必須と思っていただいて良いと思います。最後にアクセス元のIPアドレスをaccess-classで限定しています。
■RADIUS認証
RADIUSサーバに登録されているユーザを使用してログイン認証を行うことも可能です。この場合、ユーザだけではなく機器自体がRadiusクライアントとしてRADISUサーバに登録されている必要があります。Ciscoルータのコンフィグは以下のようになります。
(config)# aaa authentication login default group radius local (config)# radius-server host 192.168.12.20 auth-port 1812 acct-port 1813 (config)# radius-server timeout 30 (config)# radius-server deadtime 60 (config)# radius-server key cisco |
最初の行で認証にRADIUSを指定しており、RADIUSで認証できなければローカルに登録されているユーザで認証するよう設定しています。それより下の行はRADIUSのIPやKeyを指定しており、timeoutの単位は秒数でdeadtimeの単位は分数です。KeyはRADIUSサーバの設定と一致している必要があります。
deadtimeに関して認証の度にタイムアウトに設定している秒数を待つのも煩わしいのでRADIUSサーバから応答がなければRADIUSサーバは死んでいるものとみなしDEAD状態となります。そしてDEAD TIMEのカウントがスタートし設定している分(上では60分)が経過するまで死んだものとみなしてローカル認証のみ行うようになります。