1. 简介

AAA 简介

     AAA 是 Authentication,Authorization and Accounting(认证、授权和计费)的简称,它提供了一个对认证、授权和计费这三种安全功能进行配置的一致性框架,实际上是对网络安全的一种管理。这里的网络安全主要是指访问控制,包括:

哪些用户可以访问网络服务器。

具有访问权的用户可以得到哪些服务。

如何对正在使用网络资源的用户进行计费。

针对以上问题,AAA 必须提供认证功能、授权功能和计费功能。

1. 认证功能

AAA 支持以下认证方式:

不认证:对用户非常信任, 不对其进行合法检查。一般情况下不采用这种方式。

本地认证:将用户信息(包括本地用户的用户名、密码和各种属性)配置在设备上。本地认证的优点是速度快,可以降低运营成本;缺点是存储信息量受设备硬件条件限制。

远端认证:支持通过 RADIUS 协议或 HWTACACS 协议进行远端认证,设备(如 Quidway 系列交换机作为客户端,与 RADIUS 服务器或 TACACS 服务器通信。对于 RADIUS 协议,可以采用标准或扩展的 RADIUS 协议。

2. 授权功能

         AAA 支持以下授权方式:

              直接授权:对用户非常信任,直接授权通过。

              本地授权:根据设备上为本地用户帐号配置的相关属性进行授权。

              RADIUS 认证成功后授权:RADIUS 协议的认证和授权是绑定在一起的,不能

              单独使用 RADIUS 进行授权。

              HWTACACS 授权:由 TACACS 服务器对用户进行授权。

          3. 计费功能

          AAA 支持以下计费方式:

                不计费:不对用户计费。

                远端计费:支持通过 RADIUS 服务器或 TACACS 服务器进行远端计费。

          AAA 一般采用客户端/服务器结构:客户端运行于被管理的资源侧,服务器上集中存

          放用户信息。因此,AAA 框架具有良好的可扩展性,并且容易实现用户信息的集中

          管理。

ISP 域简介

          ISP 域即 ISP 用户群,一个 ISP 域是由属于同一个 ISP 的用户构成的用户群。

          在“userid@isp-name”形式的用户名中,“@”后的“isp-name”即为 ISP 域的

          域名。接入设备将“userid”作为用于身份认证的用户名,将“isp-name”作为域

          名。

          在多 ISP 的应用环境中,同一个接入设备接入的有可能是不同 ISP 的用户。由于各

          ISP 用户的用户属性(例如用户名及密码构成、服务类型/权限等)有可能各不相同,

          因此有必要通过设置 ISP 域的方法把它们区别开。

          在 ISP 域视图下,可以为每个 ISP 域配置包括使用的 AAA 策略(使用的 RADIUS

          方案等)在内的一整套单独的 ISP 域属性。

RADIUS 协议简介

          AAA 是一种管理框架,因此,它可以用多种协议来实现。在实践中,人们最常使用

          RADIUS 协议来实现 AAA。

1. 什么是 RADIUS

          RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)

          是一种分布式的、客户端/服务器结构的信息交互协议,能保护网络不受未授权访问

          的干扰,常被应用在既要求较高安全性,又要求维持远程用户访问的各种网络环境

          中。

RADIUS 服务包括三个组成部分:

  协议:RFC 2865 和 RFC 2866 基于 UDP/IP 层定义了 RADIUS 帧格式及其消息传输机制,并定义了 1812 作为认证端口,1813 作为计费端口。

   服务器:RADIUS 服务器运行在中心计算机或工作站上,包含了相关的用户认证和网络服务访问信息。

   客户端:位于拨号访问服务器设备侧,可以遍布整个网络。

RADIUS 基于客户端/服务器模型。交换机作为 RADIUS 客户端,负责传输用户信息

到指定的 RADIUS 服务器,然后根据从服务器返回的信息对用户进行相应处理(如

接入/挂断用户)。RADIUS 服务器负责接收用户连接请求,认证用户,然后给交换

机返回所有需要的信息。

RADIUS服务器通常要维护三个数据库,如下图所示。

     第一个数据库“Users”用于存储用户信息(如用户名、口令以及使用的协议、

     IP 地址等配置)。

     第二个数据库“Clients”用于存储 RADIUS 客户端的信息(如共享密钥)。

     第三个数据库“Dictionary”存储的信息用于解释 RADIUS 协议中的属性和属

     性值的含义。

AAA 及 RADIUS/HWTACACS 协议配置_资源

另外,RADIUS 服务器还能够作为其他 AAA 服务器的客户端进行代理认证或计费。

2. RADIUS 的基本消息交互流程

RADIUS客户端(交换机)和RADIUS服务器之间通过共享密钥来认证交互的消息,

增强了安全性。RADIUS协议合并了认证和授权过程,即响应报文中携带了授权信

息。用户、交换机、RADIUS服务器之间的交互流程如图所示。

AAA 及 RADIUS/HWTACACS 协议配置_160_02

基本交互步骤如下:

(1) 用户输入用户名和口令。

(2)RADIUS 客户端根据获取的用户名和口令,向 RADIUS 服务器发送认证请求包(Access-Request)。

(3)RADIUS 服务器将该用户信息与 Users 数据库信息进行对比分析,如果认证成功,则将用户的权限信息以认证响应包(Access-Accept)发送给 RADIUS 客户端;如果认证失败,则返回 Access-Reject 响应包。

(4)RADIUS 客户端根据接收到的认证结果接入/拒绝用户。如果可以接入用户,则RADIUS客户端向RADIUS服务器发送计费开始请求包(Accounting-Request),Status-Type 取值为 start。

(5)RADIUS 服务器返回计费开始响应包(Accounting-Response)。

(6)用户开始访问资源。

(7)RADIUS客户端向RADIUS服务器发送计费停止请求包(Accounting-Request),Status-Type 取值为 stop。

(8)RADIUS 服务器返回计费结束响应包(Accounting-Response)。

(9)用户访问资源结束。

3. RADIUS 协议的报文结构

RADIUS协议采用UDP报文来承载数据,通过定时器管理机制、重传机制、备用服

务器机制,确保RADIUS服务器和客户端之间交互消息正确收发。RADIUS报文结构

如图所示。

AAA 及 RADIUS/HWTACACS 协议配置_160_03

     (1) Code域(1字节)决定RADIUS报文的类型,如表所示。

AAA 及 RADIUS/HWTACACS 协议配置_用户_04

      (2)Identifier 域(1 字节)用于匹配请求包和响应包,随着 Attribute 域改变、接收

           到有效响应包而不断变化,而在重传时保持不变化。

      (3)Length 域(2 字节)指明整个包的长度,内容包括 Code,Identifier,Length,

           Authenticator 和 Attribute。 超过长度域的字节被视为填充,在接收时应被忽略;

            如果包比长度域所指示的短时,则应被丢弃。

      (4)Authenticator 域(16 字节)用于验证 RADIUS 服务器传输回来的报文,并且

           还用于密码隐藏算法中,分为Request Authenticator 和 Response  Authenticator。

      (5)Attribute 域携带专门的认证、授权和计费信息,提供请求和响应报文的配置细

           节,该域采用(Type、Length、Value)三元组的形式提供。

          。 类型(Type)域 1 个字节,取值为 1~255,用于指明属性的类型。下表列

              出了RADIUS授权、认证常用的属性。

          。长度(Length)域 1 个字节,指明此属性的长度,单位为字节,包括类型字段、

             长度字段和属性值字段。

          。属性值(Value)域包括该属性的信息,其格式和内容由类型域和长度域决定,

            最大长度为 253 字节。

AAA 及 RADIUS/HWTACACS 协议配置_用户_05

AAA 及 RADIUS/HWTACACS 协议配置_用户_06

            RADIUS 协议具有良好的可扩展性,协议中定义的 26 号属性(Vendor-Specific)用

            于设备厂商对 RADIUS 进行扩展,以实现标准 RADIUS 没有定义的功能。

            如下图所示的报文结构,Vendor-ID域占 4 字节,表示厂商代号,最高字节为 0,

            其余 3 字节的编码见RFC1700。厂商可以封装多个自己定义的“(Type、Length、

            Value)”子属性,从而在应用中得以扩展。

AAA 及 RADIUS/HWTACACS 协议配置_网络安全_07

HWTACACS 协议简介

            1. HWTACACS 特性

            HWTACACS(HUAWEI Terminal Access Controller Access Control System)是在

            TACACS(RFC 1492)基础上进行了功能增强的安全协议。该协议与 RADIUS 协

            议类似,主要是通过 Client-Server 模式与 TACACS 服务器通信来实现多种用户的

            AAA 功能,可用于 PPP 和 VPDN 接入用户及终端用户的认证、授权和计费。

            与RADIUS相比,HWTACACS具有更加可靠的传输和加密特性,更加适合于安全控

            制。HWTACACS协议与RADIUS协议的主要区别如下表所示。

AAA 及 RADIUS/HWTACACS 协议配置_160_08

AAA 及 RADIUS/HWTACACS 协议配置_160_09

            HWTACACS的典型应用是拨号用户或终端用户需要登录到设备上进行操作。交换

            机作为HWTACACS的客户端,将用户名和密码发给TACACS服务器进行验证,验

            证通过并得到授权之后可以登录到交换机上进行操作。如下图所示。

AAA 及 RADIUS/HWTACACS 协议配置_网络安全_10

            2. HWTACACS 的基本消息交互流程

            以Telnet用户为例,说明使用HWTACACS对用户进行认证、授权和计费。基本消息

            交互流程图如下图所示。

AAA 及 RADIUS/HWTACACS 协议配置_用户_11

            在整个过程中的基本消息交互流程如下:

                  (1)用户请求登录交换机,TACACS客户端收到请求之后,向TACACS服务器发送认证开始

                       报文。

                  (2)TACACS服务器发送认证回应报文,请求用户名;TACACS客户端收到回应报文后,向

                        用户询问用户名。    

                  (3)TACACS 客户端收到用户名后,向 TACACS 服务器发送认证持续报文,其中

                        包括了用户名。

                  (4)TACACS 服务器发送认证回应报文,请求登录密码;TACACS 客户端收到回

                        应报文,向用户询问登录密码。

                  (5) TACACS 客户端收到登录密码后,向 TACACS 服务器发送认证持续报文,其

                   中包括了登录密码。

                  (6) TACACS 服务器发送认证回应报文,指示用户通过认证。

                  (7)TACACS 客户端向 TACACS 服务器发送授权请求报文

                  (8)TACAS服务器发送授权回应报文,指示用户通过授权。

                  (9)TACACS 客户端收到授权回应成功报文,向用户输出交换机的配置界面。

                   (10) TACACS 客户端向 TACACS 服务器发送计费开始报文。

                   (11) TACACS 服务器发送计费回应报文,指示计费开始报文已经收到。

                   (12) 用户退出,TACACS 客户端向 TACACS 服务器发送计费结束报文。

(13) TACACS 服务器发送计费回应报文,指示计费结束报文已经收到。

配置任务简介

AAA 及 RADIUS/HWTACACS 协议配置_用户_12

AAA 及 RADIUS/HWTACACS 协议配置_用户_13

AAA 及 RADIUS/HWTACACS 协议配置_160_14

配置 AAA

            需要为合法用户提供网络接入服务,同时对网络设备进行保护,防止非授权访问和

            抵赖行为,需要配置 AAA。当需要通过 ISP 域来对接入用户进行 AAA 等管理时,

            需要配置 ISP 域。

配置准备

            如果采用远端认证、授权或计费方案时,需要已经创建RADIUS或HWTACACS方案。

            RADIUS方案(radius-scheme):可以通过引用配置好的RADIUS方案来实现认证、授权、计费。

            HWTACACS方案(hwtacacs-scheme) 可以通过引用配置好的HWTACACS方案来实现认证、授权、

            计费。

创建 ISP 域

AAA 及 RADIUS/HWTACACS 协议配置_资源_15

配置 ISP 域的属性

AAA 及 RADIUS/HWTACACS 协议配置_资源_16

AAA 及 RADIUS/HWTACACS 协议配置_网络安全_17

              注意:

                对于交换机,每个接入用户都属于一个 ISP 域。如果某个用户在登录时没有携带

                ISP 域名,则交换机将它归于缺省的 ISP 域。

                在对用户实施计费时,当发现没有可用的计费服务器或与计费服务器通信失败

                时,只要用户配置了 accounting optional 命令,即使无法实施计费,也不会挂

                断用户。

                自助服务器定位功能需要与支持自助服务的 RADIUS 服务器配合使用,如

                CAMS。自助服务即用户可以对自己的帐号或卡号进行管理和控制。安装自助服

                务软件的服务器即自助服务器。

            说明:

            CAMS 服务器是华为公司提供的业务管理系统,支持与交换机等网络产品共同组网,

            完成终端用户的认证、授权、计费和权限管理等功能,实现网络的可管理、可运营,

            保证网络和用户信息的安全。

配置ISP域的AAA方案

            用户可以通过两种方式配置认证、授权、计费方案:

            1. 认证、授权、计费捆绑方式

            采用这种方式时,用户通过 scheme 命令指定具体的 AAA 方案。若采用 RADIUS

            或 HWTACACS 方案,认证、授权、计费统一由 RADIUS 或 HWTACACS 方案中指

            定的 RADIUS 或 TACACS 服务器来完成,即认证、授权、计费不能分别指定不同

            的方案。

AAA 及 RADIUS/HWTACACS 协议配置_160_18

             注意:

                用户可以通过引用配置好的 radius-scheme-name 来实现认证、授权、计费,而

                采用本地认证方案时只能进行认证、授权,无法实现计费。

                如果 scheme 命令配置了 radius-scheme radius-scheme-name local 参数,则

                local 为 RADIUS 服务器没有正常响应后的备选认证方案,即当 RADIUS 服务器

                有效时,不使用本地认证;当 RADIUS 服务器无效时,使用本地认证。

                如果 local 或者 none 作为第一方案,那么只能采用本地认证或者不进行认证,

                不能再同时采用 RADIUS 方案。

                如果 scheme 命令配置了 hwtacacs-scheme hwtacacs-scheme-name local 参

                数,则local为TACACS服务器没有正常响应后的备选认证方案,   即当 TACACS                                                              

                服务器有效时,不使用本地认证;当 TACACS 服务器无效时,使用本地认证。

                如果配置的认证方式为 scheme none,则用户登录到系统后所能访问的命令级

                别为 0。

            2. 认证、授权、计费分离方式

            采用这种方式时,用户可以通过 authentication、authorization、accounting 这

            三条命令分别指定认证、授权、计费方案。认证、授权、计费分离方式中对于 AAA

            支撑的各种业务的具体实现如下:

                   对于终端用户

            认证采用:RADIUS,local,RADIUS-local 或者 none。

            授权采用:none。

            计费采用:RADIUS 或者 none。

            用户可以参照上面的实现任意组合配置认证、授权和计费的方案。

                   对于 FTP 用户

            对于 FTP 用户仅支持认证。

            认证采用:RADIUS,local,RADIUS-local。

            请在 ISP 域视图下进行下列配置。

AAA 及 RADIUS/HWTACACS 协议配置_如何_19

             说明:

                如果在配置了认证、授权、计费分离方案的同时还配置了认证、授权、计费捆绑

                方案,优先使用认证、授权、计费分离方案。

                由于 RADIUS 方案与 local 方案不支持认证和授权的分离,在配置认证、授权时

                应注意:当域中配置了 scheme radius-scheme 命令或者 scheme local 命令,

                且没有同时配置 authentication 命令时,此时如果配置了 authorization none,

                RADIUS 方案和 local 方案返回的授权信息仍然有效。

配置动态 VLAN 下发特性

            动态 VLAN 下发是指以太网交换机根据 RADIUS 服务器下发的属性值,将已经通过

            身份认证的用户所在的端口动态地加入到不同的 VLAN 中,从而对用户所能访问的

            网络资源进行控制。

            目前交换机支持 RADIUS 认证服务器下发整型和字符串型的 VLAN ID:

            整型:交换机根据 RADIUS 认证服务器下发的整型 ID 将端口加入相应 VLAN

                   中,如果该 VLAN 不存在,则首先创建 VLAN,而后将端口加入到新创建的

                   VLAN 中。

           字符串型:交换机根据 RADIUS 认证服务器下发的字符串型 ID,与交换机上

                   已存在 VLAN 的名称进行比对,如果找到匹配项,则将该端口加入相应 VLAN

                   中,否则 VLAN 下发失败,用户无法通过认证。

            交换机支持两种模式的动态 VLAN 下发的是为了适应认证服务器而设置的。不同的

            认证服务器下发方式不同,建议用户根据所使用的服务器动态 VLAN 下发的格式来

            对设备进行配置。

            这里列出几种常用的服务器的下发模式:

AAA 及 RADIUS/HWTACACS 协议配置_网络安全_20

            在实际应用中,为了与 Guest VLAN 配合使用,一般将端口控制方式设置为基于端

            口的方式;如果将端口控制方式设置为基于 MAC 地址的方式,则每个端口下面只

            能连接一个用户。

AAA 及 RADIUS/HWTACACS 协议配置_资源_21

AAA 及 RADIUS/HWTACACS 协议配置_资源_22

            注意:

                对于字符串型 VLAN 下发模式,交换机在处理过程中遵循整型优先的原则:如果

                RADIUS 服务器下发的 VLAN 名称是全数字的字符串,如字符串“1024”,并且

                转换成整型的数值在合法的 VLAN 范围之内则交换机会将全数字型的字符串转

                换为整型处理,将认证端口加入转换后的整型数值 VLAN 中,即该端口会被加入

                到 VLAN 1024 中。

                同时启用了 MSTP 多实例和 802.1x 的端口如果需要实现动态 VLAN 下发功能,

                则要将 MSTP 端口设置为边缘端口。

                802.1x 认证应用动态 VLAN 下发特性时,如果要下发的 VLAN 在设备上已经存

                在并且是动态 VLAN,则无法下发成功,用户认证失败。

配置本地用户的属性

            当 AAA 方案选择了本地认证方案(local)时,应在交换机上创建本地用户并配置

            相关属性。

            所谓本地用户,是指在交换机上设置的一组用户的集合。该集合以用户名为用户的

            唯一标识。为使某个请求网络服务的用户可以通过本地认证,需要在交换机上的本

            地用户数据库中添加相应的表项。

AAA 及 RADIUS/HWTACACS 协议配置_网络安全_23

AAA 及 RADIUS/HWTACACS 协议配置_资源_24

           注意:

               当采用 local-user password-display-mode cipher-force 命令后,即使用户通

               过 password 命令指定密码显示方式为明文显示(即 simple 方式)后,密码也

               会显示为密文。

               如果配置的认证方式需要用户名和口令(包括本地认证和RADIUS认证),则用

               户登录系统后所能访问的命令级别由用户的优先级确定。对于SSH用户,使用

               RSA公钥认证时,其所能使用的命令以用户界面上设置的级别为准。

               如果配置的认证方式为不认证或采用 password 认证,则用户登录到系统后所能

               访问的命令级别由用户界面的优先级确定。

配置强制切断用户连接

AAA 及 RADIUS/HWTACACS 协议配置_如何_25

          说明:

            对于 Telnet、FTP 类型登录用户,可以通过 display connection 命令查看到连接,

            但是不能通过 cut connection 命令切断连接。

配置 RADIUS 协议

            RADIUS 协议配置是以 RADIUS 方案为单位进行的,一个 RADIUS 方案在实际组网

            环境中既可以运用于一台独立的 RADIUS 服务器,也可以运用于两台配置相同、但

            IP 地址不同的主、从 RADIUS 服务器。当创建一个新的 RADIUS 方案之后,需要对

            属于此方案的 RADIUS 服务器的 IP 地址和 UDP 端口号进行设置,这些服务器包括

            认证/授权和计费服务器,而每种服务器又有主服务器和从服务器的区别。每个

            RADIUS 方案的属性包括:主服务器的 IP 地址、从服务器的 IP 地址、共享密钥以

            及 RADIUS 服务器类型等。

            在实际组网环境中,上述参数的设置需要根据具体需求来决定。但是必须至少设置

            一个认证/授权服务器和一个计费服务器(如果不配置计费服务器,则必须配置

            accounting optional 命令)。同时,保证交换机上的 RADIUS 服务端口设置与

            RADIUS 服务器上的端口设置保持一致。

        说明:

            实际上,RADIUS协议配置仅仅定义了交换机和RADIUS服务器之间进行信息交互所

            必需的一些参数。为了使这些参数能够生效,还必须在某个ISP域视图下指定该域引

            用配置有上述参数的RADIUS方案。

创建 RADIUS 方案

            RADIUS 协议的配置是以 RADIUS 方案为单位进行的。在进行其它 RADIUS 协议配

            置之前,必须先创建 RADIUS 方案并进入其视图。

AAA 及 RADIUS/HWTACACS 协议配置_160_26

        注意:

            一个 RADIUS 方案可以同时被多个 ISP 域引用。

配置 RADIUS 认证/授权服务器

AAA 及 RADIUS/HWTACACS 协议配置_如何_27

             注意:

                RADIUS 服务器的授权信息是随认证应答报文发给 RADIUS 客户端的,故不需要

                指定单独的授权服务器。

                在实际组网环境中,可以指定 2 台 RADIUS 服务器分别作为主、从认证/授权服

                务器;也可以指定一台服务器既作为主认证/授权服务器,又作为从认证/授权服

                务器。

                系统缺省创建的 system 方案使用的主认证服务器的 IP 为 127.0.0.1,端口号为

1645。

配置 RADIUS 计费服务器

AAA 及 RADIUS/HWTACACS 协议配置_如何_28

AAA 及 RADIUS/HWTACACS 协议配置_如何_29

             注意:

                在实际组网环境中,可以指定 2 台 RADIUS 服务器分别作为主、从计费服务器;

                也可以指定一台服务器既作为主计费服务器,又作为从计费服务器。此外,由于

                RADIUS 协议采用不同的 UDP 端口来收发认证/授权和计费报文,因此必须将认

                证/授权端口号和计费端口号设置得不同。

                如果 RADIUS 计费服务器对交换机发出的停止计费请求报文没有响应,且交换机

                使能了停止计费报文重传功能,交换机应将其缓存在本机上,然后重新发送直到

                RADIUS 计费服务器产生响应,或者在重新发送的次数达到指定的次数限制后将

                其丢弃。

                交换机提供对连续实时计费失败次数限制的设置——在交换机向 RADIUS 服务

                器发出的实时计费失败的次数超过所设定的限度时,交换机将切断用户连接。

                系统缺省创建的 system 方案使用的主计费服务器的 IP 为 127.0.0.1,端口号为

                1646。

                目前 RADIUS 协议不支持对 FTP 用户进行计费。

配置 RADIUS 报文的共享密钥

            RADIUS 客户端与 RADIUS 服务器使用 MD5 算法来加密 RADIUS 报文,双方通过

            设置共享密钥来验证报文的合法性。只有在密钥一致的情况下,双方才能彼此接收

            对方发来的报文并作出响应。

AAA 及 RADIUS/HWTACACS 协议配置_如何_30

                   注意:

                在认证/授权服务器与计费服务器不相同且这两台服务器中的共享密钥也不同时,

                必须分别设置认证/授权报文和计费报文的共享密钥。

配置 RADIUS 请求报文的最大传送次数

            由于 RADIUS 协议采用 UDP 报文来承载数据,因此其通信过程是不可靠的。如果

            RADIUS 服务器在应答超时定时器规定的时长内没有响应交换机,则交换机有必要

            向 RADIUS 服务器重传 RADIUS 请求报文。 如果累计的传送次数超过最大传送次数

            而 RADIUS 服务器仍旧没有响应,则交换机将认为本次认证失败。

AAA 及 RADIUS/HWTACACS 协议配置_网络安全_31

配置支持的 RADIUS 服务器的类型

AAA 及 RADIUS/HWTACACS 协议配置_用户_32

配置 RADIUS 服务器的状态

            对于某个 RADIUS 方案中的主、从服务器(无论是认证/授权服务器还是计费服务

            器),当主服务器因故障而导致其与交换机的通信中断时,交换机会主动地与从服

            务器交互报文。

            当主服务器变为 block 的状态超过 timer quiet 命令设定的时间后,若有 RADIUS

            请求,交换机会尝试与主服务器通信。如果主服务器恢复正常,交换机会立即恢复

            与其通信,而不与从服务器通信,同时,主服务器的状态恢复为 active,从服务器

            的状态不变。

            当主服务器与从服务器的状态都为 active 或 block 时,交换机将只把报文发送到主

            服务器上。

AAA 及 RADIUS/HWTACACS 协议配置_网络安全_33

AAA 及 RADIUS/HWTACACS 协议配置_用户_34

配置发送给 RADIUS 服务器的数据相关属性

AAA 及 RADIUS/HWTACACS 协议配置_如何_35

                   注意:

               接入用户通常以“userid@isp-name”的格式命名,“@”后面的部分为 ISP 域

               名,设备就是通过该域名来决定将用户归于哪个 ISP 域的。但是,有些较早期的

               RADIUS 服务器不能接受携带有 ISP 域名的用户名,在这种情况下,有必要将用

               户名中携带的域名去除后再传送给RADIUS服务器 。因此 ,设备通过

               user-name-format 命令以指定发送给 RADIUS 服务器的用户名是否携带有 ISP

               域名。

               如果指定某个 RADIUS 方案不允许用户名中携带有 ISP 域名,那么请不要在两

               个乃至两个以上的 ISP 域中同时设置使用该 RADIUS 方案,否则,会出现虽然

               实际用户不同(在不同的 ISP 域中)、但 RADIUS 服务器认为用户相同(因为

               传送到它的用户名相同)的错误。

               对于 802.1x 用户,如果采用 EAP 认证方式,则交换机会把客户端输入的内容直

               接封装后发给服务器,这种情况下 user-name-format 的设置对其无效。

               系统缺省创建的 system 方案的用户名不带域名。

配置本地 RADIUS 认证服务器

AAA 及 RADIUS/HWTACACS 协议配置_160_36

配置 RADIUS 服务器的定时器

            如果在 RADIUS 请求报文(认证/授权请求或计费请求)传送出去一段时间后,设备

            还没有得到 RADIUS 服务器的响应,则有必要重传 RADIUS 请求报文,以保证用户

            确实能够得到 RADIUS 服务,这段时间被称为 RADIUS 服务器响应超时时长。交换

            机系统中用于控制这个时长的定时器就被称为 RADIUS 服务器响应超时定时器。

            对于某个 RADIUS 方案中的主、从服务器(无论是认证/授权服务器还是计费服务

            器),当主服务器因故障而导致其与设备的通信中断时,设备会主动地与从服务器

            交互报文。

            当主服务器变为 block 的状态超过 timer quiet 命令设定的时间后,当有 RADIUS

            请求时,设备会尝试与主服务器通信,如果主服务器恢复正常,设备会立即恢复与

            其通信,而不继续与从服务器通信。同时,主服务器的状态恢复为 active,从服务

            器的状态不变。

            为了对用户实施实时计费,有必要设置实时计费的时间间隔。在设置了该属性以后,

            每隔设定的时间,交换机会向 RADIUS 服务器发送一次在线用户的计费信息。

AAA 及 RADIUS/HWTACACS 协议配置_资源_37

配置系统发送 RADIUS 服务器状态变为 Down 的 Trap

AAA 及 RADIUS/HWTACACS 协议配置_资源_38

                说明:

               该配置对所有的 RADIUS 方案都生效。

               在设备向 RADIUS 服务器发送报文而未收到响应的次数超过配置的重试次数后,

               设备就认为相应的服务器状态变为 Down。

配置设备重启用户再认证功能

                说明:

            本功能适用于 RADIUS 认证/计费服务器为 CAMS 的情况。

            在交换机与 CAMS 配合实现认证/授权/计费的 AAA 方案中,限制唯一性用户(指在

            CAMS 上设置了“在线数量限制”为 1 的用户)通过认证/授权、开始计费时,如果

            交换机发生重启,在 CAMS 进行用户在线检查前,当用户再次登录交换机时,交换

            机会提示该用户已经在线,导致该用户无法正常访问网络资源。只有在网络管理员

            手工删除该用户的在线信息后,该用户才可以再次登录。

            解决上述问题的方法是在交换机上启动设备重启用户再认证功能。启动设备重启用

            户再认证功能后,交换机每次发生重启时:

                   交换机生成 Accounting-On 报文,该报文主要包括 NAS-ID、NAS-IP(源 IP)

                   和会话 ID 信息。

                   交换机每隔设定的时间间隔向 CAMS 发送 Accouting-On 报文。

                   CAMS 收到 Accounting-On 报文后,立即向交换机发送一个响应报文,并根据

                   Accouting-On 报文中的 NAS-ID、NAS-IP 和会话 ID,找到并删除通过交换机

                   接入的原用户在线信息,并按照最后一次计费更新报文结束计费。

                   当交换机收到 CAMS 的响应报文后,即停止发送 Accounting-On 报文。

                   如果交换机发送 Accounting-On 报文的次数已达到设定的最大发送次数,但是

                   仍没有收到 CAMS 的响应报文,则交换机停止发送 Accounting-On 报文。

                说明:

            Accounting-On 报文中的主要属性:NAS-IP、NAS-IP 和会话ID由交换机自动生成,

            其中 NAS-IP 还可以通过命令nas-ip)手工配置, 如果手工配置,请注意配置正确、

            合法的 IP 地址; 如果不配置,交换机会自动选择 VLAN 虚接口的 IP 地址作为 NAS-IP

            地址。

AAA 及 RADIUS/HWTACACS 协议配置_如何_39

配置 HWTACACS 协议

创建 HWTACACS 方案

            HWTACACS 协 议 的 配 置 是 以 HWTACACS 方 案 为 单 位 进 行 的 。 在 进 行 其 它

            HWTACACS 协议配置之前,必须先创建 HWTACACS 方案并进入其视图。

AAA 及 RADIUS/HWTACACS 协议配置_如何_40

                   注意:

               系统最多支持配置 16 个 HWTACACS 方案。只有当方案没有用户使用时,才能

   如删除该方案。

               果设备已经使能 Fabric 功能,将不能创建 HWTACACS 方案,二者互斥。

配置 HWTACACS 认证服务器

AAA 及 RADIUS/HWTACACS 协议配置_用户_41

                   注意:

               主认证服务器和从认证服务器的 IP 地址不能相同,否则将提示配置不成功。

               只有当没有活跃的用于发送认证报文的 TCP 连接使用该认证服务器时,才允许

               删除该服务器。

配置 HWTACACS 授权服务器

AAA 及 RADIUS/HWTACACS 协议配置_网络安全_42

                   注意:

                主授权服务器和从授权服务器的 IP 地址不能相同,否则将提示配置不成功。

                只有当没有活跃的用于发送授权报文的 TCP 连接使用该授权服务器时,才允许

                删除该服务器。

配置 HWTACACS 计费服务器

AAA 及 RADIUS/HWTACACS 协议配置_网络安全_43

                   注意:

                主计费服务器和从计费服务器的 IP 地址不能相同,否则将提示配置不成功。

                只有当没有活跃、用于发送计费报文的 TCP 连接使用该计费服务器时,才允许

                删除该服务器。

                目前 HWTACACS 协议不支持对 FTP 用户进行计费。

配置 HWTACACS 报文的共享密钥

            使用 TACACS 服务器作为 AAA 服务器时,可设置密钥以提高设备与 TACACS 服务

            器通信的安全性。

            TACACS 客户端(即设备系统)与 TACACS 服务器使用 MD5 算法来加密交互的

            HWTACACS 报文,双方通过设置共享密钥来验证报文的合法性。只有在密钥一致

            的情况下,双方才能彼此接收对方发来的报文并作出响应。因此,必须保证设备上

            设置的共享密钥与 TACACS 服务器上的完全一样。

AAA 及 RADIUS/HWTACACS 协议配置_如何_44

配置发送给 TACACS 服务器的数据相关属性

AAA 及 RADIUS/HWTACACS 协议配置_如何_45

                   注意:

            用户名通常采用 “userid@isp-name” 格式,“@”后面的部分为域名如果 TACACS

            服务器不接受带域名的用户名时 ,可以配置将用户名的域名去除后再传送给

            TACACS 服务器。

配置 TACACS 服务器的定时器

AAA 及 RADIUS/HWTACACS 协议配置_160_46

                   注意:

                为了对用户实施实时计费,有必要设置实时计费的时间间隔。在设置了该属性以

                后,每隔设定的时间,设备会向 TACACS 服务器发送一次在线用户的计费信息。

                按照协议,如果服务器对实时计费报文没有正常响应,设备也不会强制切断在线

                用户。

                实时计费间隔时间取值必须为 3 的整数倍。

                实时计费间隔的取值对设备和 TACACS 服务器的性能有一定的相关性要求—取

                值越小,对设备和 TACACS 服务器的性能要求越高。

AAA&RADIUS&HWTACACS 协议显示和维护

       完成上述配置后,在任意视图下执行 display 命令可以显示配置后 AAA、RADIUS

       的运行情况,通过查看显示信息验证配置的效果。

            在用户视图下,执行 reset 命令可以清除相关统计信息。

AAA 及 RADIUS/HWTACACS 协议配置_资源_47

AAA 及 RADIUS/HWTACACS 协议配置_160_48

AAA 及 RADIUS/HWTACACS 协议配置_资源_49

AAA 及 RADIUS/HWTACACS 协议配置_资源_50

AAA&RADIUS 协议典型配置举例

Telnet/SSH 用户通过 RADIUS 服务器认证的应用配置 

         说明:

            SSH 用户和 Telnet 用户通过 RADIUS 服务器进行认证的配置方法类似,下面的描

            述以 Telnet 用户的远端认证为例。

            1. 组网需求

            在图 1-7所示的环境中,需要通过配置交换机实现RADIUS服务器对登录交换机的

            Telnet用户进行认证。

                   一台 RADIUS 服务器(担当认证 RADIUS 服务器的职责)与交换机相连,服

                   务器 IP 地址为 10.110.91.164;

                   设置交换机与认证 RADIUS 服务器交互报文时的共享密钥为“expert”。

            RADIUS 服务器可使用 CAMS 服务器.使用第三方 RADIUS 服务器时,RADIUS 方

            案中的 server-type 可以选择 standard 类型或 huawei 类型。

                   在 RADIUS 服务器上设置与交换机交互报文时的共享密钥为“expert”;

                   设置验证的端口号;

                   添加 Telnet 用户名及登录密码。

            如果 RADIUS 方案中设置交换机不从用户名中去除用户域名而是一起传给 RADIUS

            服务器,RADIUS 服务器上添加的 Telnet 用户名应为“userid@isp-name”形式。

            2. 组网图

AAA 及 RADIUS/HWTACACS 协议配置_用户_51

            3. 配置步骤

            # 配置 Telnet 用户采用 AAA 认证方式。

            <Quidway> system-view

            [Quidway] user-interface vty 0 4

            [Quidway-ui-vty0-4] authentication-mode scheme

            # 配置 domain。

            [Quidway] domain cams

            [Quidway-isp-cams] access-limit enable 10

            [Quidway-isp-cams] quit

            # 配置 RADIUS 方案。

            [Quidway] radius scheme cams

            [Quidway-radius-cams] accounting optional

            [Quidway-radius-cams] primary authentication 10.110.91.164 1812

            [Quidway-radius-cams] key authentication expert

            [Quidway-radius-cams] server-type Huawei

            [Quidway-radius-cams] user-name-format with-domain

            [Quidway-radius-cams] quit

            # 配置 domain 和 RADIUS 的关联。

            [Quidway] domain cams

            [Quidway-isp-cams] scheme radius-scheme cams

            Telnet 用户登录时输入用户名 userid @cams,以使用 cams 域进行认证。

FTP/Telnet 用户本地认证配置

                 说明:

            FTP 用户与 Telnet 用户通过本地认证的配置方法类似,下面描述仅以 Telnet 用户为

            例。

            1. 组网需求

            如下图所示的环境中,现需要通过配置交换机实现对登录交换机的 Telnet 用户进行

            本地认证。

            2. 组网图

AAA 及 RADIUS/HWTACACS 协议配置_网络安全_52

            3. 配置步骤

                   方法一:使用本地认证方案。

            (1)

            # 进入系统视图。

            <Quidway> system-view

            System View: return to User View with Ctrl+Z.

            [Quidway]

            # 配置 Telnet 用户采用 AAA 认证方式。

            [Quidway] user-interface vty 0 4

            [Quidway-ui-vty0-4] authentication-mode scheme

            [Quidway-ui-vty0-4] quit

            # 创建本地用户 telnet。

            [Quidway] local-user telnet

            [Quidway-luser-telnet] service-type telnet

            [Quidway-luser-telnet] password simple huawei

            [Quidway-luser-telnet] attribute idle-cut 300 access-limit 5

            [Quidway] domain system

            [Quidway-isp-system] scheme local

            使用 Telnet 登录时输入用户名为 telnet@system,以使用 system 域进行认证。

                   方法二:使用本地 RADIUS 服务器

            (2)

            这种方法与1.7.1 节中的远端RADIUS认证方法类似,只需要将1.7.1 节中“配置

            RADIUS方案”中的服务器IP地址修改为 127.0.0.1,认证密码修改为huawei,认证

            服务的UDP端口号修改为 1645,并配置本地用户即可 (本地用户名是否带域名的设

            置需要与RADIUS方案中的设置一致)。

配置 Telnet 用户通过 TACACS 服务器进行认证和授权

            1. 组网需求

            通过配置交换机实现 TACACS 服务器对登录交换机的 Telnet 用户进行认证、授权。

            一台 TACACS 服务器(其担当认证、授权、计费服务器的职责)与交换机相连,服

            务器 IP 地址为 10.110.91.164,设置交换机与认证、授权、计费 TACACS 服务器交

            互报文时的共享密钥均为“expert”,设置交换机除去用户名中的域名后再将之传

            给 TACACS 服务器。

            在 TACACS 服务器上设置与交换机交互报文时的共享密钥为“expert”。

            2. 组网图

AAA 及 RADIUS/HWTACACS 协议配置_如何_53

            3. 配置步骤

            # 添加 Telnet 用户。

            此处略。

            # 配置 HWTACACS 方案。

            <Quidway> system-view

            [Quidway] hwtacacs scheme hwtac

            [Quidway-hwtacacs-hwtac] primary authentication 10.110.91.164 49

            [Quidway-hwtacacs-hwtac] primary authorization 10.110.91.164 49

            [Quidway-hwtacacs-hwtac] key authentication expert

            [Quidway-hwtacacs-hwtac] key authorization expert

            [Quidway-hwtacacs-hwtac] user-name-format without-domain

            [Quidway-hwtacacs-hwtac] quit

            # 配置 domain 引用名为 hwtac 的 HWTACACS 方案。

            [Quidway] domain hwtacacs

            [Quidway-isp-hwtacacs] scheme hwtacacs-scheme hwtac

AAA&RADIUS&HWTACACS 常见配置错误举例

RADIUS 常见配置错误举例

            RADIUS 协议在 TCP/IP 协议族中处于应用层,   它主要规定交换机与 ISP 的 RADIUS

            服务器间如何交互用户信息,因此它失效的可能性比较大。

                   错误之一:用户认证/授权总是失败

            错误排除:用户名不是“userid@isp-name”的形式,或设备没有指定缺省的 ISP 域——

  请使用正确形式的用户名或在设备中设定缺省的 ISP 域。

                   RADIUS 服务器的数据库中没有配置该用户——检查 RADIUS 服务器的数据

  库以保证该用户的配置信息确实存在。

                   用户侧输入的密码不正确——请保证接入用户输入正确的密码。

RADIUS 服务器和设备的报文共享密钥不同——请仔细比较两端的共享密钥,

  确保它们相同。

                   设备与 RADIUS 服务器之间存在通信故障(可以通过在设备上 ping RADIUS

  服务器来检查)——请保证设备与 RADIUS 服务器之间能够正常通信。

                   错误之二:RADIUS 报文无法传送到 RADIUS 服务器

            错误排除:

                  (1) 设备与 RADIUS 服务器之间的通信线路不通(物理层/链路层)——请保证线路通畅。

                  (2)设备上没有设置相应的 RADIUS 服务器 IP 地址——请保证正确设置 RADIUS服务器的

                     ip 地址。              

                (3)认证/授权和计费服务的 UDP 端口设置得不正确——请保证与 RADIUS 服务器

  提供的端口号一致。

                   错误之三:用户认证通过并获得授权,但是不能向 RADIUS 服务器传送计费

                   话单。

            错误排除:

                 (1)计费端口号设置得不正确——请正确设置 RADIUS 计费端口号。

            (2) 计费服务器和认证/授权服务器不是同一台机器,设备却要求认证/授权和计费

   在同一个服务器(IP 地址相同)——请保证设备的认证/授权和计费服务器的

                    设置与实际情况相同。

HWTACACS 常见配置错误举例

            HWTACACS 的常见配置错误举例与 RADIUS 基本相似,可以参考上面内容。