radiusとは何か?機能、設定、TACACS+との違いを解説

2022年3月15日

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の設定は下記の手順で行います。

  1. AAAを有効にする
  2. 認証方式リストを作成する
  3. 認証リストを適用する

以下では、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機器以外では使用できません。

参考