TACACS+ たかくすぷらす
TACACS+とは
TACACS+(Terminal Access Controller Access Control System Plus)は、ネットワーク機器への管理アクセスを制御するためのAAAプロトコル(Authentication・Authorization・Accounting、認証・認可・アカウンティング)です。ルーター・スイッチ・ファイアウォールといった機器に対して「誰がログインできるか(認証)」「ログイン後に何の操作が許可されるか(認可)」「誰がいつ何をしたか(アカウンティング)」の3機能を一括して提供します。
Ciscoが中心となって策定・普及させたプロトコルで、TCP(ポート49番)を使って通信します。類似のプロトコルにRADIUSがありますが、TACACS+はネットワーク機器の管理用途に特化しており、認証・認可・アカウンティングをそれぞれ独立したプロセスとして処理できる点が大きな特徴です。
企業のネットワーク部門では「ネットワーク機器の管理者ログインを一元管理したい」というニーズに応えるために広く採用されており、誰がどの機器にログインして何のコマンドを叩いたかを記録できるため、内部統制やセキュリティ監査の観点からも重要な役割を果たしています。
TACACS+の仕組み:AAAの3機能
TACACS+は「AAA」と呼ばれる3つの機能をそれぞれ独立して処理するのが最大の特徴です。
| 機能 | 英語 | 役割 | 具体例 |
|---|---|---|---|
| 認証 | Authentication | 「あなたは誰?」を確認 | IDとパスワードのチェック |
| 認可 | Authorization | 「何をしていい?」を制御 | showコマンドはOK、設定変更はNG |
| アカウンティング | Accounting | 「いつ何をしたか」を記録 | コマンド実行履歴・ログイン時刻のログ |
覚え方:「3つのA」
AAA(トリプルエー)と覚えましょう。「Are you who you say?(認証)→ Are you allowed to do that?(認可)→ Audit what you did(記録)」という順番で動きます。日本語では「誰?・何していい?・何した?」と覚えると頭に入りやすいです。
TACACS+のパケット処理フロー
[ 管理者 ]
|
| SSHでログイン試行
v
[ ネットワーク機器(NAS: Network Access Server)]
|
| TCPポート49でTACACS+サーバーへ問い合わせ
v
[ TACACS+サーバー ]
|
|--- 1. 認証(Authentication): ID/PW確認 ---|
|--- 2. 認可(Authorization): 権限チェック ---|
|--- 3. アカウンティング(Accounting): 記録 ---|
歴史と背景
- 1984年 — 米国防総省のARPANETで、ネットワーク機器のアクセス管理ニーズからTACACSの原型が登場
- 1993年 — RFC 1492としてオリジナルのTACACSが文書化される(UDPベース)
- 1990年代前半 — CiscoがTACACSを独自拡張した「XTACACS」を開発
- 1993〜1996年頃 — CiscoがXTACACSをさらに大幅改良し「TACACS+」を開発・リリース。TCPベースに変更し、パケットの完全暗号化を実現
- 現在 — Ciscoのネットワーク機器を中心に、エンタープライズ・通信キャリアのネットワーク管理認証の標準的な選択肢として広く利用されている。RFC化はされていないがde facto標準として定着
TACACS+ vs RADIUS:何が違う?
ネットワーク認証プロトコルとしてよく比較されるRADIUSとの違いを整理します。
| 比較項目 | TACACS+ | RADIUS |
|---|---|---|
| トランスポート | TCP(信頼性重視) | UDP |
| ポート番号 | 49 | 1812(認証)/ 1813(アカウンティング) |
| 暗号化範囲 | パケット全体を暗号化 | パスワード部分のみ |
| AAAの分離 | 認証・認可・アカウンティングを独立処理 | 認証と認可は一体 |
| 主な用途 | ネットワーク機器の管理アクセス | エンドユーザーのネットワーク接続(VPNなど) |
| ベンダー依存 | Ciscoが主導(プロプライエタリ寄り) | IETF標準(オープン) |
| コマンド認可 | コマンド単位で細かく制御可能 | 困難 |
使い分けの目安:
- ネットワーク機器(ルーター・スイッチ)の管理者ログインを管理したい → TACACS+
- VPN・Wi-Fi・ダイヤルアップなどのユーザー接続を管理したい → RADIUS
関連する規格・RFC
| 規格・RFC番号 | 内容 |
|---|---|
| RFC 1492 | 初期TACACSプロトコルの情報提供RFC(TACACS+ではなく旧TACACS) |
| RFC 2865 | RADIUS(Remote Authentication Dial In User Service)の標準仕様 |
| RFC 8907 | TACACS+プロトコルの初のIETF正式RFC(2020年策定) |
関連用語
- AAA(認証・認可・アカウンティング) — ネットワークセキュリティの3要素。TACACS+が実装する中核概念
- RADIUS — TACACS+と並ぶ代表的なAAAプロトコル。エンドユーザー接続管理向け
- 認証(Authentication) — 「あなたは誰か」を確認する仕組み全般
- 認可(Authorization) — 認証済みユーザーに「何ができるか」を制御する仕組み
- TCP/IP — TACACS+が通信に使うトランスポートプロトコル群
- VPN — リモートアクセスにおいてRADIUSと組み合わせて使われることが多い技術
- ファイアウォール — TACACS+でアクセス制御を一元管理する対象機器の一つ