这是我参与8月更文挑战的第26天,活动详情查看:8月更文挑战
Terminal Access Controller Access Control System 终端访问控制器控制系统协议。
一、Tacacs 协议
1. AAA(3A)
- Authentication 认证:判断是否为合法用户。
- Authorization 授权:对用户进行有限授权,包括权限级别(1-15,15最高——>root)。
- Accounting 计费/审计:记录所有命令操作,如
show interface status。
2. 公共报文头部结构
- Majob.Minor 大小版本号;
- Packet Type 包类型:1 认证 / 2 授权 / 3 计费;
- Sequence No 序列号:从 1 开始,客户端至发送 奇数号,服务端只回复 偶数号,最大为 255 之后置 1;
- Flag 特殊条件;
- Session id 会话ID:随机数;
- Length:除头部之外的报文长度;
3. Authentication|认证
认证是用户本次会话首次登录网络设备的第一个请求,从以下的 start 第一个数据包,就可以大概猜到第一个包做了什么事情。
(1)Start 包
- Priv IVI 权限级别:0-15,最高为 15;
- Authen_type 认证类型:
Ox01ASCII值;Ox02PAP协议;Ox03CHAP协议;Ox04ARAP协议;Ox05微软CHAP协议; - Service 认证服务:
Ox00无;Ox01登录;Ox02enable服务;Ox03PPP协议;Ox04ARAP协议;Ox05负载类型;Ox06远程命令;Ox07x.25协议;Ox08NASI服务;Ox09防火墙代理; - User 用户名:可选;
- Port 客户端认证使用的端口,由客户端指定;
- Rem addr:远程地址,可选,由客户端指定;
- Data 负载数据;
(2)Reply 包
- Status 认证当前状态:
Ox01通过;Ox02失败;Ox03获取数据;Ox04获取用户名;Ox05获取密码;Ox06重启会话;Ox07错误;Ox32使用备用 daemon; - Flags 位图标志:
Ox01不回显; - Server_msg 服务器返回给用户的提示信息,可选;
- Data 负载数据;
(3)Continue 包
- Flags 位图标志:
Ox01中止; - User_msg 用户输入的回复信息;
- Data 负载数据;
4. Authorization & Accounting
授权和审计操作的数据包中,特有的字段
- Arg count 参数列表长度。
- Arg[n] length 第n个参数的 value 的长度。
- Arg[n] value 实际值。