AAA
ネットワークの利用者を管理するための3つの機能、認証(Authentication)、認可(Authorization)、アカウンティング(Accounting)の頭文字をとった言葉。RADIUSなどのプロトコルで実現する。
イマシルちゃんの解説
遊園地を思い浮かべてみて!
入口でチケットを見せて「本物のお客さんだね」って確かめるのが、認証。
「このチケットなら、このアトラクションに乗れるよ」って決めるのが、認可。
「何時に入って、どれに何回乗ったか」を記録しておくのが、アカウンティング。
この3つをまとめてAAA(トリプルエー)って呼ぶんだよ!
より深い解説
定義
AAAは、ネットワークへのアクセスを制御・管理するための3つの機能の総称である。リモートアクセス、無線LAN、ネットワーク機器への管理者ログインなどで、利用者の管理を1台のサーバに集約するために使われる。
| 機能 | 問い | 内容 |
|---|---|---|
| 認証(Authentication) | あなたは誰か | パスワードや証明書などで、利用者が本人であることを確かめる |
| 認可(Authorization) | 何をしてよいか | 認証した利用者に、使えるサービスや権限(接続先のVLAN、実行できるコマンドなど)を与える |
| アカウンティング(Accounting) | 何をしたか | 接続の開始・終了の時刻、通信量などを記録する。課金や監査に使う |
AAAを実現するプロトコル
| プロトコル | トランスポート | 特徴 |
|---|---|---|
| RADIUS | UDP(認証 1812、アカウンティング 1813) | 最も広く使われる。認証と認可を1つのやり取りで行う。パスワード以外の部分は暗号化されない |
| TACACS+ | TCP(49) | シスコ社が開発。認証・認可・アカウンティングを分離して扱え、パケット全体を暗号化する。ネットワーク機器の管理者のコマンド単位の認可に向く |
| Diameter | TCP、SCTP | RADIUSの後継として設計された。携帯電話網(LTE、5G)などで使われる |
RADIUSの構成
RADIUSでは、利用者が直接RADIUSサーバとやり取りするのではなく、利用者が接続しようとする機器(NAS:Network Access Server。リモートアクセスサーバ、無線LANのアクセスポイント、VPN装置など)が、RADIUSクライアントとしてRADIUSサーバに問い合わせる。
利用者 ─── NAS(RADIUSクライアント) ─── RADIUSサーバ
接続・認証情報の入力 Access-Request / Accept / Reject
Accounting-Request / Response
この構成により、多数のアクセスポイントやVPN装置があっても、利用者の情報を1か所でまとめて管理できる。
認証プロトコルとの違い
「認証にかかわるプロトコル」には、役割の異なるものが混ざっている。
| プロトコル | 役割 | やり取りする区間 |
|---|---|---|
| PAP、CHAP | 利用者がパスワードなどを提示する方法(認証方式) | 利用者 ⇔ NAS |
| EAP | さまざまな認証方式を運ぶための枠組み | 利用者 ⇔ NAS(⇔ RADIUSサーバ) |
| RADIUS | 認証情報やアカウンティング情報をサーバに問い合わせる | NAS ⇔ RADIUSサーバ |
| PPTP、L2TP | 認証ではなく、VPNのトンネルを作る | 利用者 ⇔ VPN装置 |
PAPやCHAPは認証の方法そのものであり、アカウンティングの機能は持たない。リモートアクセス環境で認証情報とアカウンティング情報の両方をやり取りするのは、RADIUSのようなAAAのプロトコルである。