19-AAA操作
本章节下载: 19-AAA操作 (556.65 KB)
2.2.11 配置系统发送RADIUS 服务器状态变为Down的Trap
2.5.1 Telnet/SSH用户通过RADIUS服务器认证的应用配置
2.5.3 配置Telnet用户通过TACACS服务器进行认证和授权
l 新增“配置域分隔符”特性,具体请参见2.1.1 创建ISP域并配置其属性。
l 新增“配置ISP域用户切换级别所使用的HWTACACS认证方案”特性,具体请参见2.1.2 配置ISP域的认证、授权、计费方案。
l 新增“设置RADIUS报文中Calling-Station-Id属性字段中MAC地址的格式”特性,具体请参见2.2.8 配置发送给RADIUS服务器的数据相关属性。
AAA是Authentication,Authorization and Accounting(认证、授权和计费)的简称,它是对网络安全的一种管理方式。提供了一个对认证、授权和计费这三种功能进行统一配置的框架。
l 认证:哪些用户可以访问网络服务器;
l 授权:具有访问权的用户可以得到哪些服务;
l 计费:如何对正在使用网络资源的用户进行计费。
AAA一般采用客户端/服务器结构:客户端运行于被管理的资源侧,服务器上集中存放用户信息。因此,AAA框架具有良好的可扩展性,并且容易实现用户信息的集中管理。
AAA支持以下认证方式:
l 不认证:对用户非常信任,不对其进行合法性检查。一般情况下不建议用户采用这种方式。
l 本地认证:将用户信息(包括本地用户的用户名、密码和各种属性)配置在设备上。本地认证的优点是速度快,可以降低运营成本;缺点是存储信息量受设备硬件条件限制。
l 远端认证:支持通过RADIUS协议或HWTACACS协议进行远端认证,设备(如H3C系列交换机)作为客户端,与RADIUS服务器或TACACS服务器通信。对于RADIUS协议,可以采用标准或扩展的RADIUS协议,与iTELLIN/CAMS等系统配合完成认证。远端认证的优点是便于集中管理,并且提供丰富的业务特性;缺点是必须提供服务器,并进行服务器端的正确配置。
AAA支持以下授权方式:
l 直接授权:对用户非常信任,直接授权通过。
l 本地授权:根据设备上为本地用户帐号配置的相关属性进行授权。
l RADIUS认证成功后授权:RADIUS协议的认证和授权是绑定在一起的,不能单独使用RADIUS进行授权。
l HWTACACS授权:由TACACS服务器对用户进行授权。
AAA支持以下计费方式:
l 不计费:不对用户计费。
l 远端计费:支持通过RADIUS服务器或TACACS服务器进行远端计费。
ISP域即ISP用户群,一个ISP域是由属于同一个ISP的用户构成的用户群。
在“userid@isp-name”或者“userid.isp-name”形式的用户名中,“@” 或者“.”后的“isp-name”即为ISP域的域名。接入设备将“userid”作为用于身份认证的用户名,将“isp-name”作为域名。
在多个ISP的应用环境中,同一个接入设备接入的有可能是不同ISP的用户。由于各ISP用户的用户属性(例如用户名及密码构成、服务类型/权限等)有可能各不相同,因此有必要通过设置ISP域的方法把它们区别开。
在ISP域视图下,可以为每个ISP域配置包括使用的AAA策略(使用的RADIUS方案等)在内的一整套单独的ISP域属性。
AAA是一种管理框架,因此,它可以用多种协议来实现。在实践中,人们最常使用RADIUS服务来实现AAA。
RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)是一种分布式的、客户端/服务器结构的服务方式,能保护网络不受未授权访问的干扰,常被应用在既要求较高安全性、又要求控制远程用户访问权限的各种网络环境中。
RADIUS服务包括三个组成部分:
l 协议:RFC 2865和RFC 2866基于UDP/IP层定义了RADIUS帧格式及其消息传输机制,并定义了1812作为认证端口,1813作为计费端口。
l 服务器:RADIUS服务器运行在中心计算机或工作站上,包含了相关的用户认证和网络服务访问信息。
l 客户端:位于网络接入服务器设备侧,可以遍布整个网络。
RADIUS采用客户端/服务器模型。
l 交换机作为RADIUS客户端,负责传输用户信息到指定的RADIUS服务器,然后根据从服务器返回的信息对用户进行相应处理(如接入/挂断用户)。
l RADIUS服务器负责接收用户连接请求,认证用户,然后给交换机返回所有需要的信息。
RADIUS服务器通常要维护三个数据库,如图1-1所示。
l 数据库“Users”:用于存储用户信息(如用户名、口令以及使用的协议、IP地址等配置)。
l 数据库“Clients”:用于存储RADIUS客户端的信息(如共享密钥)。
l 数据库“Dictionary”:存储的信息用于解释RADIUS协议中的属性和属性值的含义。
图1-1 RADIUS服务器的组成
另外,RADIUS服务器还能够作为其他AAA服务器的客户端进行代理认证或计费。
RADIUS客户端(交换机)和RADIUS服务器之间通过共享密钥来认证交互的消息,增强了安全性。RADIUS协议合并了认证和授权过程,即响应报文中携带了授权信息。用户、交换机、RADIUS服务器之间一种简要的交互流程如图1-2所示。
图1-2 RADIUS的基本消息交互流程
基本交互步骤如下:
(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) 用户访问资源结束。
RADIUS协议采用UDP报文来承载数据,通过定时器管理机制、重传机制、备用服务器机制,确保RADIUS服务器和客户端之间交互消息正确收发。RADIUS报文结构如图1-3所示。
图1-3 RADIUS报文结构
(1) Code域(1字节)决定RADIUS报文的类型,如表1-1所示。
表1-1 Code域主要取值的说明
Code |
报文类型 |
报文说明 |
1 |
Access-Request认证请求包 |
方向Client->Server,Client将用户信息传输到Server以判断是否接入该用户。该报文中必须包含User-Name属性,可选包含NAS-IP-Address、User-Password、NAS-Port等属性 |
2 |
Access-Accept认证接受包 |
方向Server->Client,如果Access-Request报文中所有Attribute值都可以接受(即认证通过),则传输该类型报文 |
3 |
Access-Reject认证拒绝包 |
方向Server->Client,如果Access-Request报文中存在任何Attribute值无法被接受(即认证失败),则传输该类型报文 |
4 |
Accounting-Request计费请求包 |
方向Client->Server,Client将用户信息传输到Server,请求Server开始计费,由该报文中的Acct-Status-Type属性区分计费开始请求和计费结束请求。该报文包含的属性和Access-Request报文大致相同 |
5 |
Accounting-Response计费响应包 |
方向Server->Client,Server通知Client侧已经收到Accounting-Request报文并且已经正确记录计费信息 |
(2) Identifier域(1字节)用于匹配请求包和响应包,随着Attribute域改变、接收到的有效响应包而不断变化,而在重传时保持不变。
(3) Length域(2字节)指明整个包的长度,内容包括Code,Identifier,Length,Authenticator和Attribute。超过长度域的字节被视为填充,在接收时应被忽略;如果接收到的包短于Length域所指示长度,则会被丢弃。
(4) Authenticator域(16字节)用于验证RADIUS服务器传输回来的报文,并且还用于密码隐藏算法中,分为Request Authenticator和Response Authenticator。
(5) Attribute域携带专门的认证、授权和计费信息,提供请求和响应报文的配置细节,该域采用(Type、Length、Value)三元组的形式提供。
l 类型(Type)域1个字节,取值为1~255,用于指明属性的类型。表1-2列出了RADIUS授权、认证常用的属性。
l 长度(Length)域1个字节,指明此属性的长度,单位为字节,包括类型字段、长度字段和属性值字段。
l 属性值(Value)域包括该属性的信息,其格式和内容由类型域和长度域决定,最大长度为253字节。
Type |
属性类型 |
Type |
属性类型 |
1 |
User-Name |
23 |
Framed-IPX-Network |
2 |
User-Password |
24 |
State |
3 |
CHAP-Password |
25 |
Class |
4 |
NAS-IP-Address |
26 |
Vendor-Specific |
5 |
NAS-Port |
27 |
Session-Timeout |
6 |
Service-Type |
28 |
Idle-Timeout |
7 |
Framed-Protocol |
29 |
Termination-Action |
8 |
Framed-IP-Address |
30 |
Called-Station-Id |
9 |
Framed-IP-Netmask |
31 |
Calling-Station-Id |
10 |
Framed-Routing |
32 |
NAS-Identifier |
11 |
Filter-ID |
33 |
Proxy-State |
12 |
Framed-MTU |
34 |
Login-LAT-Service |
13 |
Framed-Compression |
35 |
Login-LAT-Node |
14 |
Login-IP-Host |
36 |
Login-LAT-Group |
15 |
Login-Service |
37 |
Framed-AppleTalk-Link |
16 |
Login-TCP-Port |
38 |
Framed-AppleTalk-Network |
17 |
(unassigned) |
39 |
Framed-AppleTalk-Zone |
18 |
Reply-Message |
40-59 |
(reserved for accounting) |
19 |
Callback-Number |
60 |
CHAP-Challenge |
20 |
Callback-ID |
61 |
NAS-Port-Type |
21 |
(unassigned) |
62 |
Port-Limit |
22 |
Framed-Route |
63 |
Login-LAT-Port |
RADIUS协议具有良好的可扩展性,协议中定义的26号属性(Vendor-Specific)用于设备厂商对RADIUS进行扩展,以实现标准RADIUS没有定义的功能。
如图1-4所示的报文结构,Vendor-ID域占4字节,表示厂商代号,最高字节为0,其余3字节的编码见RFC1700。厂商可以封装多个自己定义的“(Type、Length、Value)”子属性,从而在应用中得以扩展。
HWTACACS(HUAWEI Terminal Access Controller Access Control System)是在TACACS(RFC 1492)基础上进行了功能增强的安全协议。该协议与RADIUS协议类似,主要是通过Client-Server模式与TACACS服务器通信来实现多种用户的AAA功能,可用于PPP和VPDN接入用户及终端用户的认证、授权和计费。
与RADIUS相比,HWTACACS具有更加可靠的传输和加密特性,更加适合于安全控制。HWTACACS协议与RADIUS协议的主要区别如表1-3所示。
表1-3 HWTACACS协议和RADIUS协议区别
HWTACACS协议 |
RADIUS协议 |
使用TCP,网络传输更可靠 |
使用UDP |
除了HWTACACS报文头,对报文主体全部进行加密。 |
只是对验证报文中的密码字段进行加密 |
认证和授权分离,例如,可以用一个TACACS服务器进行认证,另外一个TACACS服务器进行授权。 |
认证和授权一起处理 |
更适于进行安全控制 |
更适于进行计费 |
支持对设备的配置命令进行授权使用 |
不支持 |
HWTACACS的典型应用是终端用户需要登录到设备上进行操作。交换机作为HWTACACS的客户端,将用户名和密码发给TACACS服务器进行验证,验证通过并得到授权之后,用户可以登录到交换机上进行操作。如图1-5所示。
图1-5 HWTACACS的典型应用组网图
以Telnet用户为例,说明使用HWTACACS对用户进行认证、授权和计费。基本消息交互流程图如图1-6所示。
图1-6 Telnet用户认证、授权和计费流程图
在整个过程中的基本消息交互流程如下:
(1) 用户请求登录交换机,TACACS客户端收到请求之后,向TACACS服务器发送认证开始报文。
(2) TACACS服务器发送认证回应报文,请求用户名;TACACS客户端收到回应报文后,向用户询问用户名。
(3) TACACS客户端收到用户名后,向TACACS服务器发送认证持续报文,其中包括了用户名。
(4) TACACS服务器发送认证回应报文,请求登录密码;TACACS客户端收到回应报文,向用户询问登录密码。
(5) TACACS客户端收到登录密码后,向TACACS服务器发送认证持续报文,其中包括了登录密码。
(6) TACACS服务器发送认证回应报文,指示用户通过认证。
(7) TACACS客户端向TACACS服务器发送授权请求报文。
(8) TACACS服务器发送授权回应报文,指示用户通过授权。
(9) TACACS客户端收到授权回应成功报文,向用户输出交换机的配置界面。
(10) TACACS客户端向TACACS服务器发送计费开始报文。
(11) TACACS服务器发送计费回应报文,指示计费开始报文已经收到。
(12) 用户退出,TACACS客户端向TACACS服务器发送计费结束报文。
(13) TACACS服务器发送计费回应报文,指示计费结束报文已经收到。
当需要为合法用户提供网络接入服务,同时对网络设备进行保护,防止非授权访问和抵赖行为时,则需要配置AAA。
表2-1 AAA配置任务简介(ISP域采用认证、授权、计费捆绑方式)
配置任务 |
说明 |
详细配置 |
||
配置AAA |
创建ISP域并配置其属性 |
必选 |
||
配置ISP域采用认证、授权、计费捆绑方式 |
必选 |
|||
配置ISP域的AAA方案 |
不认证 |
l 四种认证方式必选其一 l 如果采用RADIUS、HWTACACS认证方案,需要提前完成RADIUS或HWTACACS相关配置 |
- |
|
本地认证 |
||||
RADIUS认证 |
||||
HWTACACS认证 |
||||
配置动态VLAN下发 |
可选 |
|||
配置本地用户的属性 |
可选 |
|||
配置强制切断用户连接 |
可选 |
表2-2 AAA配置任务简介(ISP域采用认证、授权、计费分离方式)
配置任务 |
说明 |
详细配置 |
|
配置AAA |
创建ISP域并配置其属性 |
必选 |
|
配置ISP域采用认证、授权、计费分离方式 |
必选 |
||
配置ISP域的AAA方案 |
必选 l 采用认证、授权、计费分离方式时,用户可以分别指定认证、授权、计费方案。 l 如果采用RADIUS、HWTACACS认证方案,需要提前完成RADIUS或HWTACACS相关配置 |
根据实际需求,参考相应内容 |
|
配置动态VLAN下发 |
可选 |
||
配置本地用户的属性 |
可选 |
||
配置强制切断用户连接 |
可选 |
表2-3 创建ISP域并配置其属性
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置用户名与域名间的分隔符形式 |
domain delimiter { at | dot } |
可选 缺省情况下,用户名与域名间的分隔符采用“@” |
创建一个ISP域或者配置缺省的ISP域 |
domain { isp-name | default { disable | enable isp-name } } |
必选 缺省情况下,系统缺省的ISP域为system |
设置ISP域的状态 |
state { active | block } |
可选 缺省情况下,当一个ISP域被创建以后,其状态为active,允许任何属于该域的用户请求网络服务 |
指定可容纳接入用户数的最大值 |
access-limit { disable | enable max-user-number } |
可选 缺省情况下,当一个ISP域被创建以后,其可容纳的接入用户没有数量限制 |
设置用户闲置切断功能 |
idle-cut { disable | enable minute flow } |
可选 缺省情况下,关闭用户闲置切断功能 |
设置用户计费可选开关 |
accounting optional |
可选 缺省情况下,当一个ISP域被创建以后,计费可选开关关闭 |
设置域信使提醒功能 |
messenger time { enable limit interval | disable } |
可选 缺省情况下,交换机关闭信使提醒功能 |
设置自助服务器定位功能 |
self-service-url { disable | enable url-string } |
可选 缺省情况下,交换机关闭自助服务器定位功能 |
配置时需要注意的是:
l 对于交换机,每个接入用户都属于一个ISP域。S3600系列交换机最多可以配置16个ISP域。如果某个用户在登录时没有携带ISP域名,则交换机将它归于缺省的ISP域。
l 采用“.”作为分隔符时,如果用户名中包含多个“.”,则以第一个“.”作为域分隔符。
l 采用“@”作为分隔符时,用户名中“@”只能作为域分隔符出现1次。采用“.”作为分隔符时,用户名中不能含有“@”。
l 在对用户实施计费时,当发现没有可用的计费服务器或与计费服务器通信失败时,只要用户配置了accounting optional命令,即使无法实施计费,也不会挂断用户。
l 自助服务器定位功能需要与支持自助服务的RADIUS服务器配合使用,如CAMS。自助服务即用户可以对自己的帐号或卡号进行管理和控制。安装自助服务软件的服务器即自助服务器。
CAMS服务器是H3C公司提供的业务管理系统,支持与交换机等网络产品共同组网,完成终端用户的认证、授权、计费和权限管理等功能,实现网络的可管理、可运营,保证网络和用户信息的安全。
用户可以通过两种方式配置认证、授权、计费方案:
采用这种方式时,用户通过scheme命令指定具体的AAA方案。
表2-4 配置ISP域的AAA方案-认证、授权、计费捆绑方式
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建一个ISP域或者进入已创建ISP域的视图 |
domain isp-name |
必选 |
配置域使用的AAA方案 |
scheme { local | none | radius-scheme radius-scheme-name [ local ] | hwtacacs-scheme hwtacacs-scheme-name [ local ] } |
必选, 系统缺省使用的AAA方案为local |
l 用户可以通过引用配置好的radius-scheme-name来实现认证、授权、计费,而采用本地认证方案时只能进行认证、授权,无法实现计费。
l 如果scheme命令配置了radius-scheme radius-scheme-name local参数,则local为RADIUS服务器没有正常响应后的备选方案,即当RADIUS服务器有效时,不使用本地方案;当RADIUS服务器不可达时,使用本地方案。
l 如果scheme命令配置了hwtacacs-scheme hwtacacs-scheme-name local参数,则local为TACACS服务器没有正常响应后的备选方案,即当TACACS服务器有效时,不使用本地方案;当TACACS服务器不可达或者由于key、nas-ip错误等而无法进行HWTACACS认证时,使用本地方案。
l 如果local或者none作为第一方案,那么只能采用本地认证或者不进行认证,不能再同时采用RADIUS方案或者HWTACACS方案。
l 如果配置none作为第一方案,则该域的FTP用户无法通过认证。即如果需要使用FTP服务,则不能配置为none方案。
采用认证、授权、计费分离方式时,用户可以通过authentication、authorization、accounting这三条命令分别指定认证、授权、计费方案。认证、授权、计费分离方式中对于AAA支撑的各种业务的具体实现如下:
(1) 对于终端用户
l 认证采用:RADIUS,local,HWTACACS或者none。
l 授权采用:none,HWTACACS。
l 计费采用:RADIUS,HWTACACS或者none。
用户可以参照上面的实现任意组合配置认证、授权和计费的方案。
(2) 对于FTP用户
对于FTP用户仅支持认证。
认证采用:RADIUS,local,HWTACACS。
表2-5 配置ISP域的AAA方案-认证、授权、计费分离方式
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建一个ISP域或者进入已创建ISP域的视图 |
domain isp-name |
必选 |
配置域使用的认证方案 |
authentication { radius-scheme radius-scheme-name [ local ] | hwtacacs-scheme hwtacacs-scheme-name [ local ] | local | none } |
可选 缺省情况下,没有配置分离的认证方案 |
配置域用户切换级别所使用的HWTACACS认证方案 |
authentication super hwtacacs-scheme hwtacacs-scheme-name |
可选 缺省情况下,没有配置当前ISP域用户切换级别所使用的HWTACACS认证方案 |
配置域使用的授权方案 |
authorization { none | hwtacacs-scheme hwtacacs-scheme-name } |
可选 缺省情况下,没有配置分离的授权方案 |
配置域使用的计费方案 |
accounting { none | radius-scheme radius-scheme-name | hwtacacs-scheme hwtacacs-scheme-name } |
可选 缺省情况下,没有配置分离的计费方案 |
l 由于RADIUS方案与local方案不支持认证和授权的分离,在配置认证、授权时应注意:当域中配置了scheme radius-scheme命令或者scheme local命令,且没有同时配置authentication命令时,此时如果配置了authorization none,RADIUS方案和local方案返回的授权信息仍然有效。
l 以太网交换机的命令行采用分级保护方式,禁止低级别用户执行高级别命令对交换机进行配置。低级别用户向高级别用户切换时使用HWTACACS认证的具体过程请参见本手册“命令行接口”中的用户级别切换部分。
(1) 如果在配置了认证、授权、计费分离方案的同时还配置了认证、授权、计费捆绑方案,优先使用认证、授权、计费分离方案。
(2) 如果分离方案配置不完整,对于没有配置分离方案的认证、授权或者计费,则采用捆绑方案中指定的方案:
l 如果只有授权、计费采用捆绑方案则不支持备选方案的切换。
l 如果认证也采用捆绑方案,且进行了备选local方案切换,则当前的可用方案为local,后续的授权或计费就会采用local方案;如果认证没有进行备选local方案切换,则授权或计费均采用第一个方案,不会进行备选local方案切换。
动态VLAN下发是指以太网交换机根据RADIUS服务器下发的属性值,将已经通过身份认证的用户所在的端口动态地加入到不同的VLAN中,从而对用户所能访问的网络资源进行控制。
目前交换机支持RADIUS认证服务器下发整型和字符串型的VLAN ID:
l 整型:交换机根据RADIUS认证服务器下发的整型ID将端口加入相应VLAN中,如果该VLAN不存在,则首先创建VLAN,而后将端口加入到新创建的VLAN中。
l 字符串型:交换机根据RADIUS认证服务器下发的字符串型ID,与交换机上已存在VLAN的名称进行比对,如果找到匹配项,则将该端口加入相应VLAN中,否则VLAN下发失败,用户无法通过认证。
在实际应用中,为了与Guest VLAN配合使用,一般将端口控制方式设置为基于端口的方式。具体请参见“802.1x及System-Guard”模块中配置802.1x基本功能部分。
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
创建ISP域,并进入其视图 |
domain isp-name |
- |
配置VLAN下发模式 |
vlan-assignment-mode { integer | string } |
可选 缺省情况下,VLAN下发模式为整型(integer) |
创建VLAN,并进入其视图 |
vlan vlan-id |
- |
配置下发VLAN的名称 |
name string |
当配置VLAN下发模式为字符串型时,必须配置此任务 |
l 对于字符串型VLAN下发模式,交换机在处理过程中遵循整型优先的原则:如果RADIUS服务器下发的VLAN名称是全数字的字符串,如字符串“1024”,并且转换成整型的数值在合法的VLAN范围之内,则交换机会将全数字型的字符串转换为整型处理,将认证端口加入转换后的整型数值VLAN中,即该端口会被加入到VLAN 1024中。
l 同时启用了MSTP多实例和802.1x的端口,如果需要实现动态VLAN下发功能,则要将MSTP端口设置为边缘端口。
当AAA方案选择了本地认证方案(local)时,应在交换机上创建本地用户并配置相关属性。
所谓本地用户,是指在交换机上设置的一组用户的集合。该集合以用户名为用户的唯一标识。为使某个请求网络服务的用户可以通过本地认证,需要在交换机上的本地用户数据库中添加相应的表项。
表2-7 配置本地用户的属性
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
设置所有本地用户密码的显示方式 |
local-user password-display-mode { cipher-force | auto } |
可选 缺省情况下,所有接入用户的密码显示方式为auto,表示按照用户配置的密码显示方式显示 |
添加本地用户,并进入本地用户视图 |
local-user user-name |
必选 缺省情况下,系统中没有任何本地用户 |
设置指定用户的密码 |
password { simple | cipher } password |
必选 |
设置指定用户的状态 |
state { active | block } |
可选 缺省情况下,当一个本地用户被创建以后,其状态为active,允许该用户请求网络服务 |
设置用户可以使用的服务类型 |
service-type { ftp | lan-access | { telnet | ssh | terminal }* [ level level ] } |
必选 缺省情况下,系统不对用户授权任何服务 |
设置用户的优先级 |
level level |
可选 缺省情况下,用户的优先级为0 |
配置用户的授权VLAN |
authorization vlan string |
可选 缺省情况下,没有配置本地用户的授权VLAN |
服务类型为lan-access用户的属性设置 |
attribute { ip ip-address | mac mac-address | idle-cut second | access-limit max-user-number | vlan vlan-id | location { nas-ip ip-address port port-number | port port-number } }* |
可选 当指定用户绑定的是远程端口,则该用户必需指定nas-ip参数,缺省为127.0.0.1,表示为本机;若用户绑定的是本地端口,则不需要指定nas-ip参数 |
l user-name字符串中不能包括“/”、“:”、“*”、“?”、“<”以及“>”等字符,并且“@”出现的次数不能多于1次。
l 当采用local-user password-display-mode cipher-force命令后,即使用户通过password命令指定密码显示方式为明文显示(即simple方式)后,密码也会显示为密文。
l 如果配置的认证方式需要用户名和口令(包括本地认证和RADIUS认证),则用户登录系统后所能访问的命令级别由用户的优先级确定。对于SSH用户,使用RSA公钥认证时,其所能使用的命令以用户界面上设置的级别为准。
l 如果配置的认证方式为不认证或采用password认证,则用户登录到系统后所能访问的命令级别由用户界面的优先级确定。
l 如果端口连接的多个用户具有不同的授权VLAN,只有第一个认证通过的用户可以获得授权VLAN信息,之后的用户即使通过认证,交换机也不会重新下发授权VLAN。在这种情况下,建议每个端口下只接入一个认证用户或只接入具有相同授权VLAN的多个认证用户。
l 如果配置了本地用户的授权VLAN,进行本地RADIUS认证,则vlan-assignment-mode必须要配置为string模式。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
强制切断用户连接 |
cut connection { all | access-type { dot1x | mac-authentication } | domain isp-name | interface interface-type interface-number | ip ip-address | mac mac-address | radius-scheme radius-scheme-name | vlan vlan-id | ucibindex ucib-index | user-name user-name } |
必选 |
对于Telnet类型登录用户,可以通过display connection命令查看到连接,但是不能通过cut connection命令切断连接。
H3C系列以太网交换机既可以作为RADIUS客户端,又可以作为本地RADIUS服务器。
表2-9 RADIUS配置任务简介(交换机作为RADIUS客户端)
配置任务 |
说明 |
详细配置 |
|
配置 RADIUS 客户端 |
创建RADIUS方案 |
必选 |
|
配置RADIUS认证/授权服务器 |
必选 |
||
配置RADIUS计费服务器 |
必选 |
||
配置RADIUS报文的共享密钥 |
可选 |
||
配置RADIUS请求报文的最大传送次数 |
可选 |
||
配置支持的RADIUS服务器的类型 |
可选 |
||
配置RADIUS服务器的状态 |
可选 |
||
配置发送给RADIUS服务器的数据相关属性 |
可选 |
||
配置RADIUS服务器的定时器 |
可选 |
||
配置系统发送RADIUS 服务器状态变为Down的Trap |
可选 |
||
配置设备重启用户再认证功能 |
可选 |
||
配置RADIUS服务器端 |
具体请参见相应RADIUS服务器的配置 |
- |
- |
表2-10 RADIUS配置任务简介(交换机作为本地RADIUS服务器)
配置任务 |
说明 |
详细配置 |
|
配置 RADIUS 服务 |
创建RADIUS方案 |
必选 |
|
配置RADIUS认证/授权服务器 |
必选 |
||
配置RADIUS计费服务器 |
必选 |
||
配置RADIUS报文的共享密钥 |
可选 |
||
配置RADIUS请求报文的最大传送次数 |
可选 |
||
配置支持的RADIUS服务器的类型 |
可选 |
||
配置RADIUS服务器的状态 |
可选 |
||
配置发送给RADIUS服务器的数据相关属性 |
可选 |
||
配置本地RADIUS服务器的开启及允许的网络接入服务器、共享密钥 |
必选 |
||
配置RADIUS服务器的定时器 |
可选 |
||
配置系统发送RADIUS 服务器状态变为Down的Trap |
可选 |
||
配置 RADIUS 客户端 |
具体请参见相应RADIUS客户端的配置 |
- |
- |
RADIUS服务配置是以RADIUS方案为单位进行的,一个RADIUS方案在实际组网环境中既可以运用于一台独立的RADIUS服务器,也可以运用于两台配置相同、但IP地址不同的主、从RADIUS服务器。
当创建一个新的RADIUS方案之后,需要对属于此方案的RADIUS服务器的IP地址和UDP端口号进行设置,这些服务器包括认证/授权和计费服务器,而每种服务器又有主服务器和从服务器的区别。每个RADIUS方案的属性包括:主服务器的IP地址、从服务器的IP地址、共享密钥以及RADIUS服务器类型等。
在实际组网环境中,上述参数的设置需要根据具体需求来决定。但是必须至少设置一个认证/授权服务器和一个计费服务器。同时,保证交换机上的RADIUS服务端口设置与RADIUS服务器上的端口设置保持一致。
实际上,RADIUS服务配置仅仅定义了交换机和RADIUS服务器之间进行信息交互所必需的一些参数。为了使这些参数能够生效,还必须在某个ISP域视图下指定该域引用配置有上述参数的RADIUS方案。具体配置命令的细节请参见2.1.2 配置ISP域的认证、授权、计费方案。
RADIUS协议的配置是以RADIUS方案为单位进行的。在进行其它RADIUS协议配置之前,必须先创建RADIUS方案并进入其视图。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
打开RADIUS认证端口 |
radius client enable |
可选 缺省情况下,RADIUS认证端口开启 |
创建RADIUS方案并进入其视图 |
radius scheme radius-scheme-name |
必选 缺省情况下,系统中已创建了一个名为“system”的RADIUS方案 |
一个RADIUS方案可以同时被多个ISP域引用。
表2-12 配置RADIUS认证/授权服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建RADIUS方案并进入其视图 |
radius scheme radius-scheme-name |
必选 缺省情况下,系统中已创建了一个名为“system”的RADIUS方案 |
设置主RADIUS认证/授权服务器的IP地址和端口号 |
primary authenticaiton ip-address [ port-number ] |
必选 缺省情况下,对于新创建的RADIUS方案,主认证/授权服务器的IP地址为0.0.0.0,UDP端口号为1812 |
设置从RADIUS认证/授权服务器的IP地址和端口号 |
secondary authentication ip-address [ port-number ] |
可选 缺省情况下,对于新创建的RADIUS方案,从认证/授权服务器的IP地址均为0.0.0.0,UDP端口号为1812 |
l RADIUS服务器的授权信息是随认证应答报文发给RADIUS客户端的,故不需要指定单独的授权服务器。
l 在实际组网环境中,可以指定2台RADIUS服务器分别作为主、从认证/授权服务器;也可以指定一台服务器既作为主认证/授权服务器,又作为从认证/授权服务器。
l 系统缺省创建的system方案使用的主认证服务器的IP为127.0.0.1,端口号为1645。
表2-13 配置RADIUS计费服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建RADIUS方案并进入其视图 |
radius scheme radius-scheme-name |
必选 缺省情况下,系统中已创建了一个名为“system”的RADIUS方案 |
设置主RADIUS计费服务器的IP地址和端口号 |
primary accounting ip-address [ port-number ] |
必选 缺省情况下,对于新创建的RADIUS方案,主计费服务器的IP地址均为0.0.0.0,UDP端口号为1813 |
设置从RADIUS计费服务器的IP地址和端口号 |
secondary accounting ip-address [ port-number ] |
可选 缺省情况下,对于新创建的RADIUS方案,从计费服务器的IP地址均为0.0.0.0,UDP端口号为1813 |
使能停止计费报文缓存功能 |
stop-accounting-buffer enable |
可选 缺省情况下,使能停止计费报文缓存功能 |
使能停止计费报文重传功能,并配置停止计费报文可以传送的最大次数 |
retry stop-accounting retry-times |
可选 缺省情况下,最多可以将缓存的停止计费请求报文重发500次 |
设置允许实时计费失败的最大次数 |
retry realtime-accounting retry-times |
可选 缺省情况下,最多允许5次实时计费失败,5次之后将切断用户连接 |
l 在实际组网环境中,可以指定2台RADIUS服务器分别作为主、从计费服务器;也可以指定一台服务器既作为主计费服务器,又作为从计费服务器。此外,由于RADIUS协议采用不同的UDP端口来收发认证/授权和计费报文,因此必须将认证/授权端口号和计费端口号设置得不同。
l 如果RADIUS计费服务器对交换机发出的停止计费请求报文没有响应,且交换机使能了停止计费报文重传功能,交换机应将其缓存在本机上,然后重新发送直到RADIUS计费服务器产生响应,或者在重新发送的次数达到指定的次数限制后将其丢弃。
l 交换机提供对连续实时计费失败次数限制的设置——在交换机向RADIUS服务器发出的实时计费失败的次数超过所设定的限度时,交换机将切断用户连接。
l 系统缺省创建的system方案使用的主计费服务器的IP为127.0.0.1,端口号为1646。
l 目前RADIUS协议不支持对FTP用户进行计费。
RADIUS客户端与RADIUS服务器使用MD5算法来加密RADIUS报文,双方通过设置共享密钥来验证报文的合法性。只有在密钥一致的情况下,双方才能彼此接收对方发来的报文并作出响应。
表2-14 配置RADIUS报文的共享密钥
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建RADIUS方案并进入其视图 |
radius scheme radius-scheme-name |
必选 缺省情况下,系统中已创建了一个名为“system”的RADIUS方案 |
设置RADIUS认证/授权报文的共享密钥 |
key authentication string |
必选 缺省情况下,无共享密钥 |
设置RADIUS计费报文的共享密钥 |
key accounting string |
必选 缺省情况下,无共享密钥 |
在认证/授权服务器与计费服务器不相同且这两台服务器中的共享密钥也不同时,必须分别设置认证/授权报文和计费报文的共享密钥。
由于RADIUS协议采用UDP报文来承载数据,因此其通信过程是不可靠的。如果RADIUS服务器在应答超时定时器规定的时长内没有响应交换机,则交换机有必要向RADIUS服务器重传RADIUS请求报文。如果累计的传送次数超过最大传送次数而RADIUS服务器仍旧没有响应,则交换机将认为本次认证失败。
表2-15 配置RADIUS请求报文的最大传送次数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建RADIUS方案并进入其视图 |
radius scheme radius-scheme-name |
必选 缺省情况下,系统中已创建了一个名为“system”的RADIUS方案 |
设置RADIUS请求报文的最大传送次数 |
retry retry-times |
可选 缺省情况下,RADIUS请求报文的最大传送次数为3次 |
表2-16 配置支持的RADIUS服务器的类型
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建RADIUS方案并进入其视图 |
radius scheme radius-scheme-name |
必选 缺省情况下,系统中已创建了一个名为“system”的RADIUS方案 |
设置支持何种类型的RADIUS服务器 |
server-type { extend | standard } |
可选 |
l 当设备系统支持的RADIUS服务器类型的配置被更改时,会将原有的发送到RADIUS服务器的数据流的单位恢复为缺省情况。
l 使用第三方RADIUS服务器时,RADIUS服务器类型可以选择standard类型或extended类型;使用CAMS服务器时,RADIUS服务器类型应选择extended类型。
对于某个RADIUS方案中的主、从服务器(无论是认证/授权服务器还是计费服务器),当主服务器因故障而导致其与交换机的通信中断时,交换机会主动地与从服务器交互报文。
当主服务器变为block的状态超过timer quiet命令设定的时间后,若有RADIUS请求,交换机会尝试与主服务器通信。如果主服务器恢复正常,交换机会立即恢复与其通信,而不与从服务器通信,同时,主服务器的状态恢复为active,从服务器的状态不变。
当主服务器与从服务器的状态都为active或block时,交换机将只把报文发送到主服务器上。
表2-17 配置RADIUS服务器的状态
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建RADIUS方案并进入其视图 |
radius scheme radius-scheme-name |
必选 缺省情况下,系统中已创建了一个名为“system”的RADIUS方案 |
设置主RADIUS认证/授权服务器的状态 |
state primary authentication { block | active } |
可选 缺省情况下,RADIUS方案中配置了IP地址的各RADIUS服务器的状态均为active |
设置主RADIUS计费服务器的状态 |
state primary accounting { block | active } |
|
设置从RADIUS认证/授权服务器的状态 |
state secondary authentication { block | active } |
|
设置从RADIUS计费服务器的状态 |
state secondary accounting { block | active } |
表2-18 配置发送给RADIUS服务器的数据相关属性
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建RADIUS方案并进入其视图 |
radius scheme radius-scheme-name |
必选 缺省情况下,系统中已创建了一个名为“system”的RADIUS方案 |
设置发送给RADIUS服务器的用户名格式 |
user-name-format { with-domain | without-domain } |
可选 缺省情况下,交换机发送给RADIUS服务器的用户名携带有ISP域名 |
设置发送给RADIUS服务器的数据流的单位 |
data-flow-format data { byte | giga-byte | kilo-byte | mega-byte } packet { giga-packet | kilo-packet | mega- packet | one-packet } |
可选 缺省情况下,RADIUS方案默认的发送数据单位为byte,数据包的单位为one-packet |
设置RADIUS报文中Calling-Station-Id(Type 31)属性字段中MAC地址的格式 |
calling-station-id mode { mode1 | mode2 } { lowercase | uppercase } |
可选 缺省情况下,Calling-Station-Id属性字段中MAC地址的格式为XXXX-XXXX-XXXX,小写形式 |
设置交换机发送RADIUS报文使用的源IP地址 |
RADIUS视图 nas-ip ip-address |
可选 缺省情况下,不指定源IP地址,即以发送报文的接口地址作为源IP地址 |
系统视图 radius nas-ip ip-address |
l 接入用户通常以“userid@isp-name”或“userid.isp-name”的格式命名,“@”或者“.”后面的部分为ISP域名,设备就是通过该域名来决定将用户归于哪个ISP域的。但是,有些较早期的RADIUS服务器不能接受携带有ISP域名的用户名,在这种情况下,有必要将用户名中携带的域名去除后再传送给RADIUS服务器。因此,用户可以通过user-name-format命令指定发送给RADIUS服务器的用户名是否携带ISP域名。
l 如果指定某个RADIUS方案不允许用户名中携带有ISP域名,那么请不要在两个乃至两个以上的ISP域中同时设置使用该RADIUS方案,否则,会出现虽然实际用户不同(在不同的ISP域中)、但RADIUS服务器认为用户相同(因为传送到它的用户名相同)的错误。
l 系统缺省创建的system方案的用户名不带域名。
l 设置RADIUS报文中Calling-Station-Id(Type 31)属性字段格式的功能用于增强交换机与不同RADIUS服务器的兼容性。在RADIUS服务器能识别的Calling-Station-Id属性字段格式与交换机的默认格式不同时,需要配置此功能。具体RADIUS服务器能识别的字段格式,请参见相应RADIUS服务器手册。
设备除了支持传统的作为RADIUS客户端的服务——即分别采用认证/授权服务器、计费服务器的方式进行用户的认证管理外,还提供了本地简单RADIUS服务器功能(包括认证和授权),称之为本地RADIUS认证服务器功能。
表2-19 配置本地RADIUS认证服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
打开本地RADIUS认证服务器端口 |
local-server enable |
可选 缺省情况下,本地RADIUS认证服务器端口开启 |
设置本地RADIUS服务器相关参数 |
local-server nas-ip ip-address key password |
必选 缺省情况下,系统创建了一个本地RADIUS认证服务器,其NAS-IP为127.0.0.1 |
l 采用本地RADIUS认证服务器功能时,其认证/授权服务的UDP端口号必须为1645,计费服务的UDP端口号为1646;服务器的IP地址都设置为本地服务器的地址。
l local-server命令配置的报文加密密钥(key password参数)必须与在RADIUS方案视图下用key authentication命令配置的认证/授权报文加密密钥一致。
l 包括系统缺省创建的本地RADIUS认证服务器在内,设备最多支持配置16个网络接入服务器IP地址及其共享密钥,也就是说设备作为RADIUS认证服务器时,最多能够同时为16个网络接入服务器提供认证服务。
l 设备作为本地RADIUS认证服务器时,设备不支持EAP中继方式(即dot1x authentication-method eap命令对应的认证方式)。
如果在RADIUS请求报文(认证/授权请求或计费请求)传送出去一段时间后,设备还没有得到RADIUS服务器的响应,则有必要重传RADIUS请求报文,以保证用户确实能够得到RADIUS服务,这段时间被称为RADIUS服务器响应超时时长。交换机系统中用于控制这个时长的定时器就被称为RADIUS服务器响应超时定时器。
对于某个RADIUS方案中的主、从服务器(无论是认证/授权服务器还是计费服务器),当主服务器因故障而导致其与设备的通信中断时,设备会主动地与从服务器交互报文。
当主服务器变为block的状态超过timer quiet命令设定的时间后,当有RADIUS请求时,设备会尝试与主服务器通信,如果主服务器恢复正常,设备会立即恢复与其通信,而不继续与从服务器通信。同时,主服务器的状态恢复为active,从服务器的状态不变。
为了对用户实施实时计费,有必要设置实时计费的时间间隔。在设置了该属性以后,每隔设定的时间,交换机会向RADIUS服务器发送一次在线用户的计费信息。
表2-20 设置RADIUS服务器的定时器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建RADIUS方案并进入其视图 |
radius scheme radius-scheme-name |
必选 缺省情况下,系统中已创建了一个名为“system”的RADIUS方案 |
设置RADIUS服务器应答超时时间 |
timer response-timeout seconds |
可选 缺省情况下,RADIUS服务器应答超时定时器为3秒 |
设置主服务器恢复激活状态的时间 |
timer quiet minutes |
可选 缺省情况下,主服务器恢复激活状态前需要等待5分钟 |
设置实时计费间隔 |
timer realtime-accounting minutes |
可选 缺省情况下,实时计费间隔为12分钟 |
表2-21 配置本地RADIUS认证服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
使能当RADIUS 服务器状态变为down时,系统发送Trap |
radius trap { authentication-server-down | accounting-server-down } |
可选 缺省情况下,此功能关闭 |
l 该配置对所有的RADIUS方案都生效。
l 在设备向RADIUS服务器发送报文而未收到响应的次数超过配置的重试次数后,设备就认为相应的服务器状态变为Down。
本功能仅适用于RADIUS认证/计费服务器为CAMS的情况。
在交换机与CAMS配合实现认证/授权/计费的AAA方案中,限制唯一性用户(指在CAMS上设置了“在线数量限制”为1的用户)通过认证/授权、开始计费时,如果交换机发生重启,在CAMS进行用户在线检查前,当用户再次登录交换机时,交换机会提示该用户已经在线,导致该用户无法正常访问网络资源。只有在网络管理员手工删除该用户的在线信息后,该用户才可以再次登录。
解决上述问题的方法是在交换机上启动设备重启用户再认证功能。启动设备重启用户再认证功能后,交换机每次发生重启时:
l 交换机生成Accounting-On报文,该报文主要包括NAS-ID、NAS-IP(源IP)和会话ID信息。
l 交换机每隔设定的时间间隔向CAMS发送Accouting-On报文。
l CAMS收到Accounting-On报文后,立即向交换机发送一个响应报文,并根据Accouting-On报文中的NAS-ID、NAS-IP和会话ID,找到并删除通过交换机接入的原用户在线信息,并按照最后一次计费更新报文结束计费。
l 当交换机收到CAMS的响应报文后,即停止发送Accounting-On报文。
l 如果交换机发送Accounting-On报文的次数已达到设定的最大发送次数,但是仍没有收到CAMS的响应报文,则交换机停止发送Accounting-On报文。
Accounting-On报文中的主要属性:NAS-ID、NAS-IP和会话ID由交换机自动生成,其中NAS-IP还可以通过命令(nas-ip)手工配置,如果手工配置,请注意配置正确、合法的IP地址;如果不配置,交换机会自动选择VLAN虚接口的IP地址作为NAS-IP地址。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
启动设备重启用户再认证功能 |
accounting-on enable [ send times | interval interval ] |
缺省情况下:设备重启用户再认证功能处于关闭状态;发送Accounting-On报文的最大次数(times)为15次、时间间隔(interval)为3秒 |
表2-23 HWTACACS配置任务简介
配置任务 |
说明 |
详细配置 |
|
配置HWTACACS客户端 |
创建HWTACACS方案 |
必选 |
|
配置HWTACACS认证服务器 |
必选 |
||
配置HWTACACS授权服务器 |
必选 |
||
配置HWTACACS计费服务器 |
可选 |
||
配置HWTACACS报文的共享密钥 |
可选 |
||
配置发送给HWTACACS服务器的数据相关属性 |
可选 |
||
配置HWTACACS服务器的定时器 |
可选 |
||
配置HWTACACS服务器端 |
具体请参见相应HWTACACS服务器的配置 |
- |
- |
HWTACACS的配置是以HWTACACS方案为单位进行的。在进行其它HWTACACS配置之前,必须先创建HWTACACS方案并进入其视图。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建HWTACACS方案,并进入HWTACACS视图 |
hwtacacs scheme hwtacacs-scheme-name |
必选 缺省情况下,没有定义HWTACACS方案 |
l 系统最多支持配置16个HWTACACS方案。只有当方案没有用户使用时,才能删除该方案。
l 如果设备已经使能Fabric功能,将不能创建HWTACACS方案,二者互斥。
表2-25 配置TACACS认证服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建HWTACACS方案,并进入HWTACACS视图 |
hwtacacs scheme hwtacacs-scheme-name |
必选 缺省情况下,没有定义HWTACACS方案 |
设置TACACS主认证服务器的IP地址和端口号 |
primary authentication ip-address [ port ] |
必选 缺省情况下,主认证服务器的IP地址为0.0.0.0,端口号为0 |
设置TACACS从认证服务器的IP地址和端口号 |
secondary authentication ip-address [ port ] |
可选 缺省情况下,从认证服务器的IP地址为0.0.0.0,端口号为0 |
l 主认证服务器和从认证服务器的IP地址不能相同,否则将提示配置不成功。
l 只有当没有活跃的用于发送认证报文的TCP连接使用该认证服务器时,才允许删除该服务器。
表2-26 配置TACACS授权服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建HWTACACS方案,并进入HWTACACS视图 |
hwtacacs scheme hwtacacs-scheme-name |
必选 缺省情况下,没有定义HWTACACS方案 |
设置TACACS主授权服务器的IP地址和端口号 |
primary authorization ip-address [ port ] |
必选 缺省情况下,主授权服务器的IP地址为0.0.0.0,端口号为0 |
设置TACACS从授权服务器的IP地址和端口号 |
secondary authorization ip-address [ port ] |
可选 缺省情况下,从授权服务器的IP地址为0.0.0.0,端口号为0 |
l 主授权服务器和从授权服务器的IP地址不能相同,否则将提示配置不成功。
l 只有当没有活跃的用于发送授权报文的TCP连接使用该授权服务器时,才允许删除该服务器。
表2-27 配置TACACS计费服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建HWTACACS方案,并进入HWTACACS视图 |
hwtacacs scheme hwtacacs-scheme-name |
必选 缺省情况下,没有定义HWTACACS方案 |
设置TACACS主计费服务器的IP地址和端口号 |
primary accounting ip-address [ port ] |
必选 缺省情况下,主计费服务器的IP地址为0.0.0.0,端口号为0 |
设置TACACS从计费服务器的IP地址和端口号 |
secondary accounting ip-address [ port ] |
必选 缺省情况下,从计费服务器的IP地址为0.0.0.0,端口号为0 |
使能停止计费报文重传,并配置传送的最大次数 |
retry stop-accounting retry-times |
可选 缺省情况下,使能停止计费报文重传功能,且允许停止计费报文传送100次 |
l 主计费服务器和从计费服务器的IP地址不能相同,否则将提示配置不成功。
l 只有当没有活跃、用于发送计费报文的TCP连接使用该计费服务器时,才允许删除该服务器。
l 目前HWTACACS协议不支持对FTP用户进行计费。
使用TACACS服务器作为AAA服务器时,可设置密钥以提高设备与TACACS服务器通信的安全性。
TACACS客户端(即设备系统)与TACACS服务器使用MD5算法来加密交互的HWTACACS报文,双方通过设置共享密钥来验证报文的合法性。只有在密钥一致的情况下,双方才能彼此接收对方发来的报文并作出响应。因此,必须保证设备上设置的共享密钥与TACACS服务器上的完全一样。
表2-28 配置HWTACACS报文的共享密钥
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建HWTACACS方案,并进入HWTACACS视图 |
hwtacacs scheme hwtacacs-scheme-name |
必选 缺省情况下,没有定义HWTACACS方案 |
设置HWTACACS计费、授权及认证报文的共享密钥 |
key { accounting | authorization | authentication } string |
必选 缺省情况下,TACACS服务器没有密钥 |
表2-29 配置发送给TACACS服务器的数据相关属性
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建HWTACACS方案,并进入HWTACACS视图 |
hwtacacs scheme hwtacacs-scheme-name |
必选 缺省情况下,没有定义HWTACACS方案 |
设置发送给TACACS服务器的用户名格式 |
user-name-format { with-domain | without-domain } |
可选 缺省情况下,发往TACACS服务器的用户名带域名 |
设置发送给TACACS服务器的数据流的单位 |
data-flow-format data { byte | giga-byte | kilo-byte | mega-byte } |
可选 缺省情况下,TACACS服务器的发送数据单位为byte,数据包的单位为one-packet |
data-flow-format packet { giga-packet | kilo-packet | mega-packet | one-packet } |
||
配置设备发送HWTACACS报文使用的源地址 |
HWTACACS视图 nas-ip ip-address |
可选 缺省情况下,不指定源地址,即以发送报文的接口地址作为源地址 |
系统视图 hwtacacs nas-ip ip-address |
用户名通常采用“userid@isp-name”或“userid.isp-name”的格式命名,“@”或者“.”后面的部分为域名。如果TACACS服务器不接受带域名的用户名时,可以配置将用户名的域名去除后再传送给TACACS服务器。
表2-30 配置TACACS服务器的定时器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建HWTACACS方案,并进入HWTACACS视图 |
hwtacacs scheme hwtacacs-scheme-name |
必选 缺省情况下,没有定义HWTACACS方案 |
设置TACACS服务器应答超时时间 |
timer response-timeout seconds |
可选 缺省情况下,应答超时时间为5秒 |
设置主服务器恢复激活状态的时间 |
timer quiet minutes |
可选 缺省情况下,主服务器恢复激活状态前需要等待5分钟 |
设置实时计费的时间间隔 |
timer realtime-accounting minutes |
可选 缺省情况下,实时计费间隔为12分钟 |
l 为了对用户实施实时计费,有必要设置实时计费的时间间隔。在设置了该属性以后,每隔设定的时间,设备会向TACACS服务器发送一次在线用户的计费信息。按照协议,如果服务器对实时计费报文没有正常响应,设备也不会强制切断在线用户。
l 实时计费间隔时间取值必须为3的整数倍。
l 实时计费间隔的取值对设备和TACACS服务器的性能有一定的相关性要求—取值越小,对设备和TACACS服务器的性能要求越高。
完成上述配置后,在任意视图下执行display命令可以显示配置后AAA、RADIUS、HWTACACS的运行情况,通过查看显示信息验证配置的效果。
在用户视图下,执行reset命令可以清除相关统计信息。
表2-31 AAA配置显示
操作 |
命令 |
说明 |
显示所有或指定ISP域的配置信息 |
display domain [ isp-name ] |
display命令可以在任意视图下执行 |
显示用户连接的相关信息 |
display connection [ access-type { dot1x | mac-authentication } | domain isp-name | interface interface-type interface-number | ip ip-address | mac mac-address | radius-scheme radius-scheme-name | hwtacacs-scheme hwtacacs-scheme-name | vlan vlan-id | ucibindex ucib-index | user-name user-name ] |
|
显示本地用户的相关信息 |
display local-user [ domain isp-name | idle-cut { disable | enable } | vlan vlan-id | service-type { ftp | lan-access | ssh | telnet | terminal } | state { active | block } | user-name user-name ] |
表2-32 RADIUS协议显示和维护
操作 |
命令 |
说明 |
显示本地RADIUS认证服务器的统计信息 |
display local-server statistics |
display命令可以在任意视图下执行 |
显示所有或指定RADIUS方案的配置信息 |
display radius scheme [ radius-scheme-name ] |
|
显示RADIUS报文的统计信息 |
display radius statistics |
|
显示缓存的没有得到响应的停止计费请求报文 |
display stop-accounting-buffer { radius-scheme radius-scheme-name | session-id session-id | time-range start-time stop-time | user-name user-name } |
|
删除那些缓存的、没有得到响应的停止计费请求报文 |
reset stop-accounting-buffer { radius-scheme radius-scheme-name | session-id session-id | time-range start-time stop-time | user-name user-name } |
reset命令在用户视图下执行 |
清除RADIUS协议的统计信息 |
reset radius statistics |
表2-33 HWTACACS协议显示和维护
操作 |
命令 |
说明 |
查看所有或指定HWTACACS方案的配置信息或统计信息 |
display hwtacacs [ hwtacacs-scheme-name [ statistics] ] |
display命令可以在任意视图下执行 |
显示缓存的没有得到响应的停止计费请求报文 |
display stop-accounting-buffer { hwtacacs-scheme hwtacacs-scheme-name |
|
清除TACACS协议的统计信息 |
reset hwtacacs statistics { accounting | authentication | authorization | all } |
reset命令在用户视图下执行 |
删除在交换机上缓存的、没有得到响应的停止计费请求报文 |
reset stop-accounting-buffer hwtacacs-scheme hwtacacs-scheme-name |
SSH用户和Telnet用户通过RADIUS服务器进行认证的配置方法类似,下面的描述以Telnet用户的远端认证为例。
在图2-1所示的环境中,需要通过配置交换机实现RADIUS服务器对登录交换机的Telnet用户进行认证。
l 一台RADIUS认证服务器与交换机相连,服务器IP地址为10.110.91.164。
l 设置交换机与认证RADIUS服务器交互报文时的共享密钥为aabbcc。
l RADIUS服务器使用CAMS服务器。使用CAMS服务器,RADIUS服务器类型应选择extended类型。
l 在RADIUS服务器上设置与交换机交互报文时的共享密钥为aabbcc,设置认证的端口号,添加Telnet用户名及登录密码。
如果RADIUS方案中设置交换机不从用户名中去除用户域名而是一起传给RADIUS服务器,RADIUS服务器上添加的Telnet用户名设置为“userid@isp-name”形式。
图2-1 配置Telnet用户的远端RADIUS认证
# 进入系统视图。
<Sysname> system-view
# 配置Telnet用户采用AAA认证方式。
[Sysname] user-interface vty 0 4
[Sysname-ui-vty0-4] authentication-mode scheme
# 配置domain。
[Sysname] domain cams
[Sysname-isp-cams] access-limit enable 10
[Sysname-isp-cams] quit
# 配置RADIUS方案。
[Sysname] radius scheme cams
[Sysname-radius-cams] accounting optional
[Sysname-radius-cams] primary authentication 10.110.91.164 1812
[Sysname-radius-cams] key authentication aabbcc
[Sysname-radius-cams] server-type extended
[Sysname-radius-cams] user-name-format with-domain
[Sysname-radius-cams] quit
# 配置domain和RADIUS的关联。
[Sysname] domain cams
[Sysname-isp-cams] scheme radius-scheme cams
Telnet用户登录时输入用户名userid @cams,以使用cams域进行认证。
FTP用户与Telnet用户通过本地认证的配置方法类似,下面描述仅以Telnet用户为例。
如下图所示的环境中,现需要通过配置交换机实现对登录交换机的Telnet用户进行本地认证。
图2-2 配置Telnet用户的本地认证
(1) 方法一:使用本地认证方案。
# 进入系统视图。
<Sysname> system-view
# 配置Telnet用户采用AAA认证方式。
[Sysname] user-interface vty 0 4
[Sysname-ui-vty0-4] authentication-mode scheme
[Sysname-ui-vty0-4] quit
# 创建本地用户telnet。
[Sysname] local-user telnet
[Sysname-luser-telnet] service-type telnet
[Sysname-luser-telnet] password simple aabbcc
[Sysname-luser-telnet] quit
# 配置缺省system域采用的认证方式。
[Sysname] domain system
[Sysname-isp-system] scheme local
使用Telnet登录时输入用户名为telnet@system,以使用system域进行认证。
(2) 方法二:使用本地RADIUS服务器
这种方法与2.5.1 节中的远端RADIUS认证方法类似,不同之处在于:
l 需要将2.5.1 节中“配置RADIUS方案”中的服务器IP地址修改为127.0.0.1,认证服务的UDP端口号修改为1645。
l 配置开启本地RADIUS服务器,设置网络接入服务器IP地址为127.0.0.1,共享密钥为aabbcc。
通过配置交换机实现TACACS服务器对登录交换机的Telnet用户进行认证、授权。
一台TACACS服务器(其担当认证、授权、计费服务器的职责)与交换机相连,服务器IP地址为10.110.91.164,设置交换机与认证、授权、计费TACACS服务器交互报文时的共享密钥均为“expert”,设置交换机除去用户名中的域名后再将之传给TACACS服务器。
在TACACS服务器上设置与交换机交互报文时的共享密钥为aabbcc。
图2-3 配置Telnet用户的远端TACACS认证和授权
# 添加Telnet用户。
此处略。
# 配置HWTACACS方案。
<Sysname> system-view
[Sysname] hwtacacs scheme hwtac
[Sysname-hwtacacs-hwtac] primary authentication 10.110.91.164 49
[Sysname-hwtacacs-hwtac] primary authorization 10.110.91.164 49
[Sysname-hwtacacs-hwtac] key authentication aabbcc
[Sysname-hwtacacs-hwtac] key authorization aabbcc
[Sysname-hwtacacs-hwtac] user-name-format without-domain
[Sysname-hwtacacs-hwtac] quit
# 配置domain引用名为hwtac的HWTACACS方案。
[Sysname] domain hwtacacs
[Sysname-isp-hwtacacs] scheme hwtacacs-scheme hwtac
RADIUS协议在TCP/IP协议族中处于应用层,它主要规定交换机与ISP的RADIUS服务器间如何交互用户信息,因此它失效的可能性比较大。
(1) 错误之一:用户认证/授权总是失败
错误排除:
l 用户名不是“userid@isp-name”或“userid.isp-name”的形式,或设备没有指定缺省的ISP域——请使用正确形式的用户名或在设备中设定缺省的ISP域。
l RADIUS服务器的数据库中没有配置该用户——检查RADIUS服务器的数据库以保证该用户的配置信息确实存在。
l 用户侧输入的密码不正确——请保证接入用户输入正确的密码。
l RADIUS服务器和设备的报文共享密钥不同——请仔细比较两端的共享密钥,确保它们相同。
l 设备与RADIUS服务器之间存在通信故障(可以通过在设备上ping RADIUS服务器来检查)——请保证设备与RADIUS服务器之间能够正常通信。
(2) 错误之二:RADIUS报文无法传送到RADIUS服务器
错误排除:
l 设备与RADIUS服务器之间的通信线路不通(物理层/链路层)——请保证线路通畅。
l 设备上没有设置相应的RADIUS服务器IP地址——请保证正确设置RADIUS服务器的IP地址。
l 认证/授权和计费服务的UDP端口设置得不正确——请保证与RADIUS服务器提供的端口号一致。
(3) 错误之三:用户认证通过并获得授权,但是不能向RADIUS服务器传送计费话单。
错误排除:
l 计费端口号设置得不正确——请正确设置RADIUS计费端口号。
l 计费服务器和认证/授权服务器不是同一台机器,设备却要求认证/授权和计费在同一个服务器(IP地址相同)——请保证设备的认证/授权和计费服务器的设置与实际情况相同。
HWTACACS的常见配置错误举例与RADIUS基本相似,可以参考上面内容。
EAD(Endpoint Admission Defense,端点准入防御)方案通过对接入的数据进行监控,能够增强网络终端的主动防御能力,控制病毒和蠕虫在网络内部的蔓延。同时,通过限制不符合安全要求的终端的访问权限,防止不安全终端对整个网络的安全造成危害。
EAD方案的实施需要交换机、AAA服务器、安全策略服务器和安全客户端联合操作、相互配合,从而实现对终端用户的安全状态评估和访问权限的动态控制。
EAD方案启动后,交换机根据接收到的会话控制报文的源IP地址判断该报文是否合法:
l 只有从认证服务器以及安全策略服务器发送过来的会话控制报文才被交换机认为是合法的。
l 交换机根据会话控制报文的指令,动态地调整用户终端的VLAN、速率、报文调度优先级以及ACL(Access Control List,访问控制列表),从而动态控制用户的访问权限。
EAD方案在用户接入网络前,通过强制检查用户终端的安全状态,并根据对用户终端安全状态的检查结果,强制实施用户接入控制策略,从而实现对不符合安全标准的用户进行“隔离”并强制用户进行病毒库升级、系统补丁安装等操作。其典型组网应用如图3-1所示。
图3-1 EAD典型组网应用
当客户端通过认证服务器的身份验证以后,安全客户端(安装在客户端PC上的软件)对客户端的安全状况进行检测,并与安全策略服务器交互,如果不符合安全认证的标准,安全策略服务器下发ACL控制报文到交换机,交换机只允许客户端访问病毒补丁服务器。
只有当客户端安装了补丁,并且客户端的安全标准满足了安全认证的标准以后,安全客户端将客户端的安全状态传递到安全策略服务器,安全策略服务器将再次下发ACL,使交换机打开客户端的访问权限,使之能够访问更多的网络资源。
EAD功能的配置如下:
l 配置接入用户的属性,例如用户名、用户类型、密码等。如果配置本地认证,需要在交换机上配置接入用户的属性;如果远程认证,需要在AAA服务器上配置接入用户的属性
l 配置RADIUS方案
l 配置安全策略服务器IP地址
l 配置ISP域和RADIUS方案的关联
EAD主要应用在RADIUS认证场合。
本节主要介绍配置安全策略服务器IP地址,其他相关的配置过程描述请参见2 AAA配置。
表3-1 EAD配置过程
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
配置RADIUS服务器的类型为extended |
server-type extended |
必选 |
配置安全策略服务器IP地址 |
security-policy-server ip-address |
必选 每个RADIUS方案中最多允许配置8个不同IP的安全策略服务器地址 |
在如图3-2所示的环境中,
l 某用户的工作站与以太网交换机的端口Ethernet 1/0/1相连接。
l 用户的工作站采用支持EAD扩展功能的802.1X客户端。
l 通过对交换机的配置,实现RADIUS服务器对接入用户的远端认证和安全策略服务器对用户的EAD操作控制。
配置任务如下:
l RADIUS认证服务器与交换机相连,服务器IP地址为10.110.91.164,交换机使用端口号1812与认证服务器通信。
l 认证服务器的类型为extended。
l 设置交换机与认证RADIUS服务器交互报文时的加密密码为expert。
l 配置安全策略服务器,IP地址为:10.110.91.166。
图3-2 EAD典型配置组网图
# 在交换机上完成802.1x配置,具体配置过程描述请参见“802.1x及System-Guard”中的配置802.1x基本功能部分。
# 配置domain。
<Sysname> system-view
[Sysname] domain system
[Sysname-isp-system] quit
# 配置RADIUS方案。
[Sysname] radius scheme cams
[Sysname-radius-cams] primary authentication 10.110.91.164 1812
[Sysname-radius-cams] accounting optional
[Sysname-radius-cams] key authentication expert
[Sysname-radius-cams] server-type extended
# 配置安全策略服务器地址。
[Sysname-radius-cams] security-policy-server 10.110.91.166
# 配置domain和RADIUS方案的关联。
[Sysname-radius-cams] quit
[Sysname] domain system
[Sysname-isp-system] radius-scheme cams
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!