AAA概述
访问控制是用来控制哪些用户可以访问网络以及可以访问的网络资源。AAA是Authentication(认证)、Authorization(授权)和Accounting(计费)的简称,提供了在NAS(Network Access Server,网络接入服务器)设备上配置访问控制的管理框架。
AAA作为网络安全的一种管理机制,以模块化的方式提供以下服务:
- 认证:确认访问网络的用户的身份,判断访问者是否为合法的网络用户。
- 授权:对不同用户赋予不同的权限,限制用户可以使用的服务。
- 计费:记录用户使用网络服务过程中的所有操作,包括使用的服务类型、起始时间、数据流量等,用于收集和记录用户对网络资源的使用情况,并可以实现针对时间、流量的计费需求,也对网络起到监视作用。
AAA基本结构
AAA采用客户端/服务器结构,AAA客户端运行在接入设备上,通常被称为NAS设备,负责验证用户身份与管理用户接入;AAA服务器是认证服务器、授权服务器和计费服务器的统称,负责集中管理用户信息。AAA的基本架构如图
AAA服务器目前有RADIUS(Remote Authentication Dial In User Service,远程认证拨入用户服务)服务器、HWTACACS(HuaWei Terminal Access Con)服务器,不同的服务器对认证、授权、计费的支持情况见下表
AAA | RADIUS | HWTACACS |
---|---|---|
Authentication(认证) | 支持 | 支持 |
Authorization(授权) | 支持 | 支持 |
Accounting(计费) | 支持 | 支持 |
认证
AAA功能支持以下认证方式:
- 不认证:对用户非常信任,不对其进行合法检查,一般情况下不采用这种方式。
- 本地认证:将用户信息配置在本地设备上。本地认证的优点是速度快,可以为运营商降低成本,缺点是存储信息量受设备硬件条件限制。
- 远程认证:将用户信息配置在AAA认证服务器上。支持通过远程认证拨入用户服务RADIUS协议或华为终端访问控制系统HWTACACS协议进行远程认证。
授权
AAA功能支持以下授权方式:
- 不授权:不对用户进行授权处理。
- 本地授权:根据本地设备为本地用户账号配置的相关属性(如允许使用的接入服务类型和FTP访问目录等)进行授权。
- HWTACACS授权:由HWTACACS服务器对用户进行远程授权。
- RADIUS授权:由RADIUS服务器对用户进行远程授权。
- if-authenticated授权:用户认证通过,则授权通过,否则授权不通过。适用于用户必须认证且认证过程与授权过程可分离的场景。
计费
AAA功能支持2种计费方式(不支持本地计费方式):
- 不计费:不对用户计费。
- 远端计费:设备将计费报文送往HWTACACS、RADIUS服务器,由HWTACACS、RADIUS服务器完成对用户的计费。
基于域的用户管理
NAS设备对用户的管理是基于域的,每个用户都属于一个域,一个域是由属于同一个域的用户构成的群体。简单地说,用户属于哪个域就使用哪个域下的AAA配置信息。
如图所示,用户所属的域是由用户登录到NAS设备时提供的用户名决定的,当用户名中没有携带域名或者携带的域名在NAS设备上未配置时,NAS设备无法确认用户所属的域,此时,NAS设备根据用户的类型将用户加入到默认域中
如表所示,为了提供更为精细且有差异化的认证、授权、计费服务,AAA将用户划分为管理员用户和接入用户两种类型。NAS设备存在两个全局默认域:全局默认管理域default_admin和全局默认普通域default,分别作为管理员用户和接入用户的全局默认域,两个全局默认域下的缺省配置也不同
用户分类 | 用户接入方式 | 使用的全局默认域 | 全局默认域下的缺省配置 | ||
---|---|---|---|---|---|
认证方案 | 计费方案 | 授权方案 | |||
管理员用户 | 又称为Login用户,指可以登录设备的用户。包括通过FTP、HTTP、SSH、Telnet和Console方式登录设备的用户。 | default_admin | default(本地认证) | default(不计费) | 无 |
接入用户 | 包括IP Session用户、NAC用户(包括802.1X认证用户、MAC认证用户和Portal认证用户)。 | default | radius(本地认证) | default(不计费) | 无 |
AAA应用场景
通过AAA为上网用户提供认证、授权和计费
如图所示,Switch作为目的网络接入服务器。用户需要通过服务器的远端认证才能通过建立连接,该网络中的用户需要访问Internet资源。为了保证网络的安全性,企业管理员希望控制用户对于Internet的访问。
通过在Switch上配置AAA,实现Switch与AAA服务器的对接,可以由AAA服务器对用户进行统一管理。用户在客户端上输入用户名和密码后,Switch可以接收到用户的用户名和密码等认证信息并将用户信息发送给AAA服务器,由AAA服务器对其进行认证。如果认证通过,则用户可以开始访问Internet。在用户访问过程中,AAA服务器还可以记录用户使用网络资源的情况。
为了提高可靠性,可以部署两台AAA服务器,并在Switch上进行相应配置实现AAA服务器的主备备份,主服务器发生故障时,备服务器可以接替主服务器工作,保证用户业务不会中断。
通过AAA对管理用户进行认证和授权
如图所示,管理用户(Administrator)与Switch建立连接,对Switch进行管理、配置和维护。
在Switch上配置AAA后,当管理用户登录Switch时,Switch将管理用户的用户名和密码等信息发送给AAA服务器,由AAA服务器来进行统一认证,同时记录这些用户的操作行为。
AAA缺省配置
本地用户 | - 名称:admin - 密码:Admin@huawei.com - 接入方式:SSH、HTTP(用于Web网管方式登录设备) |
---|---|
全局默认普通域 | default:默认绑定认证方案radius和计费方案default、未绑定授权方案 |
全局默认管理域 | default_admin:默认绑定认证方案default和计费方案default、未绑定授权方案 |
认证方案 | default:默认认证方式为本地认证;认证失败则强制用户下线 |
授权方案 | default:默认授权方式为本地授权 |
计费方案 | default:默认采用不计费,开始计费失败则强制用户下线;实时计费开关未开启 |
AAA配置任务概览
理论上,设备支持多种方式的认证、授权、计费的组合,比如本地认证、本地授权和RADIUS计费。
实际应用中,常见的是每种方式的单独应用,如下表所示。此外,设备还支持一个方案中使用多种协议模式,比如本地认证还常用于RADIUS认证和HWTACACS认证的备份认证方案,本地授权作为HWTACACS授权的备份授权方案。
场景 | 概述 | 对应任务 |
---|---|---|
本地认证和授权 | 如果需要对用户进行认证或授权,但是在网络中没有部署RADIUS服务器和HWTACACS服务器,那么可以采用本地方式进行认证和授权。本地方式进行认证和授权的优点是速度快,可以降低运营成本;缺点是存储信息量受设备硬件条件限制。 管理用户常采用本地认证和授权方式。 | 配置采用本地方式进行认证和授权 |
RADIUS认证、授权和计费 | 采用RADIUS方式进行认证、授权、计费可以防止非法用户对网络的攻击,常应用在既要求较高安全性又要求控制远程用户访问权限的网络环境中。 | 配置采用RADIUS方式进行认证、授权和计费 |
HWTACACS认证、授权和计费 | 采用HWTACACS方式进行认证、授权、计费可以防止非法用户对网络的攻击,还支持对命令行进行授权。与RADIUS相比,HWTACACS具有更加可靠的传输和加密特性,更加适合于安全控制。 | 配置采用HWTACACS方式进行认证、授权和计费 |
HACA认证、授权、计费 | HACA协议常用于云管理场景。HACA协议是基于移动互联网HTTP 2.0协议,且HACA仅支持MAC优先的Portal认证场景。 | 配置采用HACA方式进行认证 |
配置命令
- domain命令用来创建域,并进入域视图(AAA视图)
- domain命令用来配置全局默认域(系统视图)
- authentication-mode命令用来配置当前认证方案使用的认证模式(认证方案视图)
- authentication-scheme命令用来创建认证方案,并进入认证方案视图(AAA视图)
- local-user命令用来创建本地用户,并配置本地用户的各项参数