HCIA-Datacom笔记之AAA原理与配置
13.1 AAA基本概念
AAA是Authentication(认证)、Authorization(授权)和Accounting(计费)的简称,是网络安全的一种管理机制,提供了认证、授权、计费三种安全功能。

认证(Authentication):验证用户是否可以获得访问权,确定哪些用户可以访问网络。
授权(Authorization):授权用户可以使用哪些服务。
计费(Accounting):记录用户使用网络资源的情况。
网络运营商(ISP)需要验证家庭宽带用户的账号密码之后才允许其上网,并记录用户的上网时长或上网流量等内容,这就是AAA技术最常见的应用场景。
13.2 AAA常见架构
AAA常见网络架构中包括用户、NAS(Network Access Server)、AAA服务器(AAA Server)。

NAS负责集中收集和管理用户的访问请求。在NAS上会创建多个域来管理用户。
不同的域可以关联不同的AAA方案。AAA方案包含认证方案,授权方案,计费方案。
当收到用户接入网络的请求时,NAS会根据用户名来判断用户所在的域,根据该域对应的AAA方案对用户进行管控。
注意:
NAS基于域来对用户进行管理,每个域都可以配置不同的认证、授权和计费方案,用于对该域下的用户进行认证、授权和计费。
每个用户都属于某一个域。用户属于哪个域是由用户名中的域名分隔符@后的字符串决定。例如,如果用户名是user1@domain1,则用户属于domain1域。如果用户名后不带有@,则用户属于系统缺省域。
13.3 认证(Authentication)

AAA支持三种认证方式:
- 不认证:完全信任用户,不对用户身份进行合法性检查。鉴于安全考虑,这种认证方式很少被采用。
- 本地认证:将本地用户信息(包括用户名、密码和各种属性)配置在NAS上,此时NAS就是AAA Server。本地认证的优点是处理速度快、运营成本低;缺点是存储信息量受设备硬件条件限制。这种认证方式常用于对用户登录设备进行管理,如Telnet,FTP用户等。
- 远端认证:将用户信息(包括用户名、密码和各种属性)配置在认证服务器上。支持通过RADIUS协议或HWTACACS协议进行远端认证。NAS作为客户端,与RADIUS服务器或HWTACACS服务器进行通信。
13.4 授权(Authorization)

AAA授权功能赋予用户访问的特定网络或设备的权限。
AAA支持以下授权方式:
- 不授权:不对用户进行授权处理。
- 本地授权:根据NAS上对应域下的配置进行授权。
- 远端授权:支持由RADIUS服务器授权或HWTACAS服务器授权。
HWTACACS授权,使用HWTACACS服务器对所有用户授权。
RADIUS授权,只支持对通过RADIUS服务器认证的用户授权。RADIUS协议的认证和授权是绑定在一起的,不能单独使用RADIUS进行授权。
当采用远端授权时,用户可以同时从授权服务器和NAS获取授权信息。NAS配置的授权信息优先级比授权服务器下发的授权信息低。
13.5 计费(Accouting)
计费功能用于监控授权用户的网络行为和网络资源的使用情况。
AAA支持以下两种计费方式:
不计费:为用户提供免费上网服务,不产生相关活动日志。
远端计费:支持通过RADIUS服务器或HWTACACS服务器进行远端计费。

13.6 AAA实现协议 - RADIUS
AAA可以用多种协议来实现,最常用的是RADIUS协议。RADIUS是一种分布式的、客户端/服务器结构的信息交互协议,可以实现对用户的认证、计费和授权功能。
通常由NAS作为RADIUS客户端,负责传输用户信息到指定的RADIUS服务器,然后根据从服务器返回的信息进行相应处理(如接受/拒绝用户接入)。
RADIUS服务器一般运行在中心计算机或工作站上,维护相关的用户认证和网络服务访问信息,负责接收用户连接请求并认证用户,然后给客户端返回所有需要的信息(如接受/拒绝认证请求)。
RADIUS使用UDP(User Datagram Protocol)作为传输协议,并规定UDP端口1812、1813分别作为认证、计费端口,具有良好的实时性;同时也支持重传机制和备用服务器机制,从而具有较好的可靠性。

RADIUS客户端与服务器间的消息流程如下:
1、当用户接入网络时,用户发起连接请求,向RADIUS客户端(即NAS)发送用户名和密码。
2、RADIUS客户端向RADIUS服务器发送包含用户名和密码信息的认证请求报文。
3、RADIUS服务器接收到合法的请求后,完成认证,并把所需的用户授权信息返回给客户端;对于非法的请求,4、RADIUS服务器返回认证失败的信息给客户端。
5、RADIUS客户端通知用户认证是否成功。
6、RADIUS客户端根据接收到的认证结果接入/拒绝用户。如果允许用户接入,则RADIUS客户端向RADIUS服务器发送计费开始请求报文。
7、RADIUS服务器返回计费开始响应报文,并开始计费。
8、用户开始访问网络资源。
9、当用户不再想要访问网络资源时,用户发起下线请求,请求停止访问网络资源。
10、RADIUS客户端向RADIUS服务器提交计费结束请求报文。
11、RADIUS服务器返回计费结束响应报文,并停止计费。
12、RADIUS客户端通知用户访问结束,用户结束访问网络资源。
13.7 AAA常见应用场景
13.7.1 通过RADIUS提供上网用户的AAA

- 通过在NAS上配置AAA方案,实现NAS与RADIUS服务器的对接。
- 用户在客户端上输入用户名和密码后,NAS可以将这些信息发送至RADIUS服务器进行认证。
- 如果认证通过,则授予用户访问Internet的权限。
- 在用户访问过程中,RADIUS服务器还可以记录用户使用网络资源的情况。
13.7.2 对管理用户进行本地认证和授权

在Router上配置本地AAA方案后,当网络管理员登录Router时,Router将网络管理员的的用户名密码等信息,与本地配置的用户名信息进行比对认证。
认证通过后,Router将授予网络管理员一定的管理员权限。
13.8 AAA配置实现
在设备R1上配置用户密码和级别,使主机A可以通过配置的用户名和密码远程登录到设备。

[R1]aaa
[R1-aaa]local-user huawei password cipher huawei123
[R1-aaa]local-user huawei service-type telnet
[R1-aaa]local-user huawei privilege level 0
[R1]user-interface vty 0 4
[R1-ui-vty0-4]authentication-mode aaa

浙公网安备 33010602011771号