TACACS+ 【Terminal Access Controller Access-Control System Plus】
概要
TACACS+(Terminal Access Controller Access-Control System Plus)とは、ネットワーク上で利用者の認証や権限の付与、利用状況の記録などを行うための通信規約(プロトコル)の一つ。米シスコシステムズ(Cisco Systems)社の独自仕様だったが情報が公開され他社製品でも使用できる。ネットワークの利用資格(アカウント)情報を単一のシステム(TACACS+サーバ)で集中的に管理し、端末からのアクセスを受け付けるルータやアクセスサーバなどがこれを利用して認証、認可、統計情報の記録(AAA:Authentication, Authorization, Accounting)を行うための手順を定めている。
利用者のアカウントはTACACS+サーバ上に作成され、IDやパスワードなどが登録される。利用者が端末を操作してネットワークにアクセスすると、末端で通信を受け付けるルータやアクセスサーバ(ISPなどでインターネットへの中継を行うサーバ)はTACACS+を利用してこのサーバと通信する。。
端末がIDやパスワードを申し出ると、ルータなどが通信を中継してTACACS+へ情報が転送され、認証の可否が返答される。認可やアカウンティングでも同じように、経路途上のネットワーク機器が中継して中央のTACACS+サーバへ情報の照会や集約が行われる。
TACACS+を利用することで単一のアカウントデータベースをネットワーク上の多数の末端の機器から共有・照会できるようになり、インターネットサービスプロバイダ(ISP)による会員アカウントの管理、多拠点にまたがる大企業などの従業員アカウントの管理などを効率化できる。
オリジナルのTACACSは1984年に考案され、RFC 1492として標準化された。Cisco社は1990年にこれを独自に拡張した「XTACACS」(Extended TACACS)を、1993年に仕様を刷新した(互換性は失われた)TACACS+を発表した。同社はTACACS+の仕様を公開しており従来から他社製品で使用することができたが、2020年になってIETFによりRFC 8907として仕様がまとめられた。。
AAA機能を特定のサーバに集約するプロトコルとしてはRADIUS(Remote Authentication Dial-In User Service)も有力だが、RADIUSはUDPを使用、パスワードのみを暗号化などの特徴がある一方、TACACS+はTCPを使用(標準ではTCPポート49番)、伝送データ全体を暗号化するなどの違いがある。IEEE 802.1X標準ではRADIUSの使用のみを規定しており、TACACS+は使用できない。