终端访问控制器访问控制系统(TACACS)通过一个或多个中心服务器为路由器、网络访问服务器以及其它网络处理设备提供了访问控制服务。 TACACS 支持独立的认证(authentication)、 授权(authorization)和计费(accounting)功能。
TACACS 允许客户机接受用户名和口令,并发送查询指令到 TACACS 认证服务器(又称之为 TACACS daemon 或 TACACSD)。在通常情况下,该服务器运行在主机上的一个程序。该主机决定是否接受或拒绝,然后返回一个响应。 TIP 根据响应类型,判断是否允许访问。在上述过程中,判断处理过程是“公开(opened up)”的,并且对应的算法和数据在运行 TACACS daemon 的主机的完全控制之下。此外 TACACS 扩展协议支持更多类型的认证请求和响应代码。
当前 TACACS 具有三种版本,其中第三版 TACACS+ 与前两版不兼容。
协议结构
| 4 | 8 | 16 | 24 | 32 bit |
| Major | Minor | Packet type | Sequence no. | Flags |
| Session ID | ||||
| Length | ||||
- Major Version ― 主要 TACACS+ 版本号。
- Minor Version ― 次要 TACACS+ 版本号。当需要维持后向兼容性时,允许修订 TACACS+ 协议。
- Packet Type ― 可能值包括:
TAC_PLUS_AUTHEN: = 0x01 (认证);
TAC_PLUS_AUTHOR:= 0x02 (授权);
TAC_PLUS_ACCT:= 0x03 (计费)。 - Sequence Number ― 当前会话中的数据包序列号。会话中的第一个 TACACS+ 数据包序列号必须为1,其后的每个数据包序列号逐次加1。因此客户机只发送奇序列号数据包,而 TACACS+ Daemon只发送偶序列号数据包。
- Flags ― 该字段包括各种位图格式的标志(flag)。Flag 值表明数据包是否进行加密。
- Session ID ― 该 TACACS+ 会话的 ID。
- Length ― TACACS+ 数据包主体总长(不包括头部)。
相关协议:TCP、TELNET、SMTP、FTP、RADIUS
组织来源:TACACS 和 TACACS+ 是思科私有协议。
相关链接:
http://www.javvin.com/protocol/rfc1492.pdf: An Access Control Protocol, Sometimes Called TACACS
http://www.javvin.com/protocol/tacacs.html: Introduction to TACACS+


