一、AAA 原理
(一)基本概念
AAA 是认证(Authentication)、授权(Authorization)和计费(Accounting)的简称。它是一种网络安全的基本框架,用于控制用户对网络资源的访问,并记录用户的网络活动。
- 认证(Authentication)
- 认证是验证用户身份的过程。它用于确定用户是否是其声称的身份。常见的认证方式包括用户名 / 密码认证、证书认证、基于 Radius 或 TACACS + 等协议的认证。例如,当用户通过远程登录(如 SSH 或 Telnet)访问网络设备时,设备会要求用户提供用户名和密码,然后与本地或远程的用户数据库进行比对来验证用户身份。
- 授权(Authorization)
- 授权是在用户认证成功后,确定用户可以访问哪些网络资源和执行哪些操作的过程。例如,授权可以决定用户是否有权限配置设备接口、查看系统日志等。授权信息通常基于用户的角色或权限级别。不同角色的用户可能被授予不同的命令级别或访问权限,如普通用户可能只能查看设备状态,而管理员用户可以进行配置更改。
- 计费(Accounting)
- 计费是记录用户使用网络资源的过程。它可以用于统计用户的网络活动,如在线时间、访问的资源、传输的数据量等。这些信息对于网络管理、成本核算和安全审计等方面非常重要。例如,在网络服务提供商的环境中,计费信息可以用于向用户收取费用,或者在企业网络中用于监控员工的网络使用情况。
(二)AAA 协议
- RADIUS(Remote Authentication Dial - In User Service)
- RADIUS 是一种广泛应用的网络认证、授权和计费协议。它采用客户端 - 服务器架构,网络接入服务器(NAS)作为 RADIUS 客户端,将用户的认证、授权和计费请求发送到 RADIUS 服务器。RADIUS 服务器对请求进行处理,并返回相应的响应。它使用 UDP 协议进行通信,认证端口为 1812,计费端口为 1813。
- TACACS+(Terminal Access Controller Access - Control System Plus)
- TACACS + 是 Cisco 开发的一种安全协议,主要用于对网络设备的访问控制。它也采用客户端 - 服务器模型,与 RADIUS 相比,TACACS + 将认证、授权和计费功能分离到不同的服务器进程,提供了更细粒度的控制。它使用 TCP 协议,端口为 49。
二、AAA 配置步骤
(一)本地认证、授权和计费配置(以华为设备为例)
- 配置本地用户数据库
- 在系统视图下,使用命令
aaa
进入 AAA 视图。然后使用命令local - user [用户名] password cipher [加密后的密码]
创建本地用户并设置密码。例如,local - user admin password cipher Huawei@123
创建了一个名为 admin 的用户,密码为加密后的 “Huawei@123”。
- 在系统视图下,使用命令
- 配置认证方式为本地认证
- 在 AAA 视图下,使用命令
authentication - scheme [认证方案名]
创建认证方案。然后在认证方案视图下,使用命令authentication - mode local
设置认证方式为本地认证。例如:aaa
authentication - scheme local_auth
authentication - mode local
- 在 AAA 视图下,使用命令
- 配置授权方式为本地授权
- 类似地,在 AAA 视图下使用命令
authorization - scheme [授权方案名]
创建授权方案。在授权方案视图下,使用命令authorization - mode local
设置授权方式为本地授权。例如:aaa
authorization - scheme local_authz
authorization - mode local
- 类似地,在 AAA 视图下使用命令
- 配置计费方式为本地计费(如果需要)
- 在 AAA 视图下使用命令
accounting - scheme [计费方案名]
创建计费方案。在计费方案视图下,使用命令accounting - mode local
设置计费方式为本地计费。不过在本地计费场景下,功能相对简单,主要是记录本地用户的活动情况。
- 在 AAA 视图下使用命令
- 应用 AAA 方案到接口或服务
- 例如,对于 VTY(虚拟终端)接口,用于远程登录设备,在 VTY 接口视图下,使用命令
authentication - protocol aaa
应用认证方案,authorization - protocol aaa
应用授权方案,accounting - protocol aaa
应用计费方案。
- 例如,对于 VTY(虚拟终端)接口,用于远程登录设备,在 VTY 接口视图下,使用命令
三、华为 eNSP 模拟器 Telnet 操作案例
(一)实验拓扑
一台华为路由器(假设为 RouterA)和一台 PC。PC 通过以太网连接到路由器,目的是通过 Telnet 远程登录到路由器进行管理。
(二)操作步骤
- 配置路由器接口 IP 地址:
system-view
(进入系统视图)interface GigabitEthernet 0/0/0
(进入接口视图,假设连接 PC 的接口为 GigabitEthernet 0/0/0)ip address 192.168.1.1 24
(设置接口 IP 地址为 192.168.1.1,子网掩码为 24 位)
- 配置本地 AAA:
aaa
local-user admin password cipher Huawei@123
(创建本地用户 admin,密码为 Huawei@123)local-user admin service-type telnet
authentication-scheme default
(使用默认认证方案,可自定义名称)authentication-mode local
authorization-scheme default
(使用默认授权方案,可自定义名称)authorization-mode local
user-interface vty 0 4
authentication-mode aaa
authorization-mode aaa
- 在 PC 上打开命令提示符,输入
telnet 192.168.1.1
,按回车键。 - 当提示输入用户名和密码时,输入 “admin” 和 “Huawei@123”,如果配置正确,即可成功登录到路由器进行管理操作。
通过以上步骤,你可以在华为 eNSP 模拟器中实现基于 AAA 的 Telnet 远程登录管理。如果需要使用远程 RADIUS 服务器进行认证和授权,可以按照上述远程认证授权配置步骤进行设置。