radiusとは何か?機能、設定、TACACS+との違いを解説
radiusの概要
radius(ラディウス)は「Remote Authentication Dial In User Service」の略で、AAAの機能である「認証」「許可」「アカウンティング」を備えたセキュリティプロトコルです。
radiusは無線LANや有線LANなどのネットワーク接続の際に、ユーザー認証で利用されます。
radiusを使用すると、ユーザーID、パスワードに加えて、デジタル証明書が認証情報として利用できます。そのため、従来のユーザーID、パスワードのみの認証と比べ、強固な認証が可能です。
AAAについては下記の記事もご参照ください。
radiusの機能
radiusには以下の3つの要素があります。
- radiusサーバー
- radiusクライアント
- ユーザー
ここからは、radiusのそれぞれの要素の役割について具体的に説明します。
radiusサーバー
radiusサーバーの役割は、ユーザーの認証を許可するかどうかを判断することです。
radiusサーバーは、認証情報を一元管理します。
radiusクライアント
radiusクライアントの役割は、ユーザーからの認証要求を受けて、radiusサーバーに情報を転送することです。
アクセスポイントなどがradiusクライアントにあたります。
ユーザー
ユーザーはアクセス元です。
クライアントPCがユーザーにあたります。
radius認証の流れ
まず、ユーザーはradiusクライアントに「ユーザ名/パスワード」を送信します。
これを受けとったradiusクライアントは、radiusサーバーに「ユーザ名/パスワード」を転送します。
次に、radiusサーバーは、radiusクライアントから受け取った「ユーザ名/パスワード」と、radiusサーバー自体が持っている認証情報とを照らし合わせて認証を行います。
認証した結果、許可されたユーザーであると判断できた場合、radiusサーバーは、承認メッセージをradiusクライアントに送信します。
radiusクライアントは、受け取った承認メッセージをユーザーに伝えます。
この間のやり取りは、共有秘密で暗号化されます。
そのため、radiusを使用した認証では、「ユーザ名/パスワード」が盗み見られることはありません。
radiusの設定
radiusの設定は下記の手順で行います。
- AAAを有効にする
- 認証方式リストを作成する
- 認証リストを適用する
以下では、Cisco機器でradiusを設定する際の各手順について具体的に説明します。
AAAを有効にする
radiusを利用するには、機器側でAAAを有効にする必要があります。
以下のコマンドを入力し、AAAを有効化します。
aaa new-model
認証方式リストを作成する
以下のコマンドを入力し、認証リストを作成します。
aaa authentication login [ default | list-name ] method1 method2…
loginの後には、「default」または「リスト名」が入ります。
defaultを指定すると、指定した認証方式が全てのログイン接続の際に使用されます。
リスト名には任意の文字列を指定できます。
リスト名の後に、認証方式を指定します。
認証方式は複数指定可能です。
複数設定した場合は、method1、method2の順番で認証が行われます。
method1で認証を行い、タイムアウトのエラーを受信した場合、method2で認証が行われます。
認証方式は様々なものがあります。
認証にradiusサーバーを使用する場合は、「group radius」を使用します。
認証リストを適用する
認証方式リストを作成したら、そのリストを適用する必要があります。
以下のコマンドを入力し、ラインコンフィグレーションモードに移行します。
line [ console | vty | tty | aux ] number number
次に、以下のコマンドを入力し、作成した認証リストを指定します。
login authentication [ default | list-name ]
デフォルト設定では、defaultが認証方式リストとして指定されています。
リスト名は、手順2で作成したリストを指定できます。
radiusとTACACS+との違い
TACACS+(タカックスプラス)は、radiusと同様、認証、許可、アカウンティングを行うセキュリティプロトコルです。
基本的な機能はradiusと同じですが、いくつか異なる点があります。
radiusとの違いは以下の通りです。
機能
radiusは、認証と許可がセットになっており、アカウンティングのみ分離されています。
TACACS+は、認証、許可、アカウンティングの機能が独立しており、3つの機能を個別に提供できます。
暗号化方法
radiusは、パスワードのみ暗号化します。
ユーザ名、サービス、アカウンティングなど、パスワード以外の情報は暗号化されません。
TACACS+は、パケット全体を暗号化します。
radiusに比べより強度なセキュリティ機能を持ちます。
プロトコル
radiusは、IETF標準プロトコルです。
TACACS+はシスコ独自のプロトコルです。
TACACS+はCISCO機器以外では使用できません。