1. 简介 (Introduction)
终端访问控制器访问控制系统增强版(TACACS+,Terminal Access Controller Access-Control System Plus)协议[RFC8907]为网络基础设施设备(如路由器、交换机和防火墙)的集中管理提供认证、授权和计费(AAA,Authentication, Authorization, and Accounting)服务。
TACACS+协议概述
TACACS+协议在客户端(通常是网络设备)和TACACS+服务器之间建立连接。原始的TACACS+协议[RFC8907]定义了一个简单的加密机制用于保护会话数据,但这种机制存在已知的安全弱点。
本文档的目的
本文档通过以下方式增强TACACS+的安全性:
- 引入TLS 1.3支持: 利用现代传输层安全(TLS)协议[RFC8446]为TACACS+连接提供强加密保护
- 废弃旧式加密: 弃用RFC 8907中定义的遗留TACACS+加密机制
- 标准化实现: 为TACACS+ over TLS的实现提供明确的规范
安全性改进
使用TLS 1.3相比旧式TACACS+加密提供的主要安全改进包括:
- 强加密算法: 使用现代密码套件
- 前向保密(Forward Secrecy): 即使长期密钥泄露,历史会话数据仍然安全
- 防止中间人攻击: 通过证书或预共享密钥(PSK)验证服务器身份
- 完整性保护: 防止数据篡改
- 重放保护: 防止重放攻击
1.1. 要求语言 (Requirements Language)
本文档中的关键词"必须(MUST)"、"不得(MUST NOT)"、"要求(REQUIRED)"、"应(SHALL)"、"不应(SHALL NOT)"、"应该(SHOULD)"、"不应该(SHOULD NOT)"、"推荐(RECOMMENDED)"、"不推荐(NOT RECOMMENDED)"、"可以(MAY)"和"可选(OPTIONAL)"的解释,仅当它们以大写形式出现时,才如BCP 14 [RFC2119] [RFC8174]中所述。
1.2. 主要变更 (Major Changes)
本文档相对于RFC 8907的主要变更包括:
新增功能
-
TLS 1.3集成:
- 定义了如何在TACACS+上使用TLS 1.3
- 指定了TLS握手和会话管理
- 新增了专用的TCP端口(端口65000)用于TACACS+ over TLS
-
单连接模式标准化:
- 明确定义了单连接模式(Single Connection Mode)的行为
- 说明了连接生命周期管理
- 提供了多会话复用指导
废弃内容
-
遗留加密机制:
- 废弃RFC 8907定义的TACACS+加密方法
- 推荐迁移到TLS保护的连接
- 提供了过渡期间的兼容性指导
-
旧式UDP端口:
- 澄清了UDP端口49的使用(不应使用)
- 强调TCP作为标准传输协议
互操作性
本文档确保:
- 向后兼容现有TACACS+实现
- 支持混合部署环境
- 提供清晰的迁移路径
部署场景
TACACS+ over TLS适用于以下场景:
- 企业网络: 集中管理大量网络设备
- 服务提供商: 管理分布式网络基础设施
- 数据中心: 保护关键网络设备访问
- 云环境: 安全的远程设备管理
与其他协议的关系
TACACS+通常与以下协议配合使用:
- SSH: 用于安全的设备命令行访问
- RADIUS: 另一种AAA协议(TACACS+在设备管理方面更强)
- LDAP/Active Directory: 用户目录服务集成