Tacacs+介绍(一)

272 阅读2分钟

这是我参与8月更文挑战的第26天,活动详情查看:8月更文挑战

Terminal Access Controller Access Control System 终端访问控制器控制系统协议。

一、Tacacs 协议

1. AAA(3A)

  1. Authentication 认证:判断是否为合法用户。
  2. Authorization 授权:对用户进行有限授权,包括权限级别(1-15,15最高——>root)。
  3. Accounting 计费/审计:记录所有命令操作,如 show interface status

2. 公共报文头部结构

  1. Majob.Minor 大小版本号;
  2. Packet Type 包类型:1 认证 / 2 授权 / 3 计费;
  3. Sequence No 序列号:从 1 开始,客户端至发送 奇数号,服务端只回复 偶数号,最大为 255 之后置 1;
  4. Flag 特殊条件;
  5. Session id 会话ID:随机数;
  6. Length:除头部之外的报文长度;

3. Authentication|认证

认证是用户本次会话首次登录网络设备的第一个请求,从以下的 start 第一个数据包,就可以大概猜到第一个包做了什么事情。

(1)Start 包

  1. Priv IVI 权限级别:0-15,最高为 15;
  2. Authen_type 认证类型:Ox01 ASCII值;Ox02 PAP协议;Ox03 CHAP协议;Ox04 ARAP协议;Ox05 微软CHAP协议;
  3. Service 认证服务:Ox00 无;Ox01 登录;Ox02 enable服务;Ox03 PPP协议;Ox04 ARAP协议;Ox05 负载类型;Ox06 远程命令;Ox07 x.25协议;Ox08 NASI服务;Ox09 防火墙代理;
  4. User 用户名:可选;
  5. Port 客户端认证使用的端口,由客户端指定;
  6. Rem addr:远程地址,可选,由客户端指定;
  7. Data 负载数据;

(2)Reply 包

  1. Status 认证当前状态:Ox01 通过;Ox02 失败;Ox03 获取数据;Ox04 获取用户名;Ox05 获取密码;Ox06 重启会话;Ox07 错误;Ox32 使用备用 daemon;
  2. Flags 位图标志:Ox01 不回显;
  3. Server_msg 服务器返回给用户的提示信息,可选;
  4. Data 负载数据;

(3)Continue 包

  1. Flags 位图标志:Ox01 中止;
  2. User_msg 用户输入的回复信息;
  3. Data 负载数据;

4. Authorization & Accounting

授权和审计操作的数据包中,特有的字段

  1. Arg count 参数列表长度。
  2. Arg[n] length 第n个参数的 value 的长度。
  3. Arg[n] value 实际值。