01-AAA配置
本章节下载: 01-AAA配置 (2 MB)
1.10.1 Telnet用户通过HWTACACS服务器认证和授权的应用配置
1.10.2 Telnet用户通过local认证、HWTACACS授权的应用配置
1.10.3 无线用户通过RADIUS服务器认证、授权、计费的应用配置
1.10.5 Portal用户的RADIUS认证、授权和计费配置
1.10.6 802.1X用户的RADIUS认证、授权和计费配置
1.10.8 802.1X用户的RADIUS Offload认证、授权、计费配置
1.10.9 Telnet用户通过HWTACACS服务器进行用户级别切换认证的应用配置
1.10.10 配置使用LDAP身份验证方式的本地EAP认证
AAA是Authentication、Authorization、Accounting(认证、授权、计费)的简称,是网络安全的一种管理机制,提供了认证、授权、计费三种安全功能。
· 认证:确认访问网络的远程用户的身份,判断访问者是否为合法的网络用户。
· 授权:对不同用户赋予不同的权限,限制用户可以使用的服务。例如用户成功登录服务器后,管理员可以授权用户对服务器中的文件进行访问和打印操作。
· 计费:记录用户使用网络服务中的所有操作,包括使用的服务类型、起始时间、数据流量等,它不仅是一种计费手段,也对网络安全起到了监视作用。
AAA一般采用客户机/服务器结构,客户端运行于NAS(Network Access Server,网络接入服务器)上,服务器上则集中管理用户信息。NAS对于用户来讲是服务器端,对于服务器来说是客户端。AAA的基本组网结构如图1-1。
图1-1 AAA基本组网结构示意图
当用户想要通过某网络与NAS建立连接,从而获得访问其它网络的权利或取得某些网络资源的权利时,NAS起到了验证用户的作用。NAS负责把用户的认证、授权、计费信息透传给服务器(RADIUS服务器或HWTACACS服务器),RADIUS协议或HWTACACS协议规定了NAS与服务器之间如何传递用户信息。
图1-1的AAA基本组网结构中有两台服务器,用户可以根据实际组网需求来决定认证、授权、计费功能分别由使用哪种协议类型的服务器来承担。例如,可以选择HWTACACS服务器实现认证和授权,RADIUS服务器实现计费。
当然,用户也可以只使用AAA提供的一种或两种安全服务。例如,公司仅仅想让员工在访问某些特定资源的时候进行身份认证,那么网络管理员只要配置认证服务器就可以了。但是若希望对员工使用网络的情况进行记录,那么还需要配置计费服务器。
AAA可以通过多种协议来实现,目前设备支持基于RADIUS协议、HWTACACS协议或LDAP协议来实现AAA,在实际应用中,最常使用RADIUS协议。
RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)是一种分布式的、客户端/服务器结构的信息交互协议,能保护网络不受未授权访问的干扰,常应用在既要求较高安全性、又允许远程用户访问的各种网络环境中。该协议定义了RADIUS的报文格式及其消息传输机制,并规定使用UDP作为封装RADIUS报文的传输层协议(UDP端口1812、1813分别作为认证、计费端口)。
RADIUS最初仅是针对拨号用户的AAA协议,后来随着用户接入方式的多样化发展,RADIUS也适应多种用户接入方式,如以太网接入、ADSL接入。它通过认证授权来提供接入服务,通过计费来收集、记录用户对网络资源的使用。
· 客户端:RADIUS客户端一般位于NAS上,可以遍布整个网络,负责传输用户信息到指定的RADIUS服务器,然后根据从服务器返回的信息进行相应处理(如接受/拒绝用户接入)。
· 服务器:RADIUS服务器一般运行在中心计算机或工作站上,维护相关的用户认证和网络服务访问信息,负责接收用户连接请求并认证用户,然后给客户端返回所有需要的信息(如接受/拒绝认证请求)。
RADIUS服务器通常要维护三个数据库,如图1-2所示:
图1-2 RADIUS服务器的组成
· “Users”:用于存储用户信息(如用户名、口令以及使用的协议、IP地址等配置信息)。
· “Clients”:用于存储RADIUS客户端的信息(如NAS的共享密钥、IP地址等)。
· “Dictionary”:用于存储RADIUS协议中的属性和属性值含义的信息。
RADIUS客户端和RADIUS服务器之间认证消息的交互是通过共享密钥的参与来完成的,并且共享密钥不能通过网络来传输,增强了信息交互的安全性。另外,为防止用户密码在不安全的网络上传递时被窃取,在传输过程中对密码进行了加密。
RADIUS服务器支持多种方法来认证用户,如基于PPP的PAP、CHAP认证。另外,RADIUS服务器还可以作为一个代理,以RADIUS客户端的身份与其它的RADIUS认证服务器进行通信,负责转发RADIUS认证和计费报文。
用户、RADIUS客户端和RADIUS服务器之间的交互流程如图1-3所示。
图1-3 RADIUS的基本消息交互流程
消息交互流程如下:
(1) 用户发起连接请求,向RADIUS客户端发送用户名和密码。
(2) RADIUS客户端根据获取的用户名和密码,向RADIUS服务器发送认证请求包(Access-Request),其中的密码在共享密钥的参与下由MD5算法进行加密处理。
(3) RADIUS服务器对用户名和密码进行认证。如果认证成功,RADIUS服务器向RADIUS客户端发送认证接受包(Access-Accept);如果认证失败,则返回认证拒绝包(Access-Reject)。由于RADIUS协议合并了认证和授权的过程,因此认证接受包中也包含了用户的授权信息。
(4) RADIUS客户端根据接收到的认证结果接入/拒绝用户。如果允许用户接入,则RADIUS客户端向RADIUS服务器发送计费开始请求包(Accounting-Request)。
(5) RADIUS服务器返回计费开始响应包(Accounting-Response),并开始计费。
(6) 用户开始访问网络资源;
(7) 用户请求断开连接,RADIUS客户端向RADIUS服务器发送计费停止请求包(Accounting-Request)。
(8) RADIUS服务器返回计费结束响应包(Accounting-Response),并停止计费。
(9) 用户结束访问网络资源。
RADIUS采用UDP报文来传输消息,通过定时器管理机制、重传机制、备用服务器机制,确保RADIUS服务器和客户端之间交互消息的正确收发。RADIUS报文结构如图1-4所示。
图1-4 RADIUS报文结构
各字段的解释如下:
(1) Code域
长度为1个字节,用于说明RADIUS报文的类型,如表1-1所示。
表1-1 Code域的主要取值说明
Code |
报文类型 |
报文说明 |
1 |
Access-Request认证请求包 |
方向Client->Server,Client将用户信息传输到Server,由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属性区分计费开始请求和计费结束请求 |
5 |
Accounting-Response计费响应包 |
方向Server->Client,Server通知Client已经收到Accounting-Request报文,并且已经正确记录计费信息 |
(2) Identifier域
长度为1个字节,用于匹配请求包和响应包,以及检测在一段时间内重发的请求包。类型一致的请求包和响应包的Identifier值相同。
(3) Length域
长度为2个字节,表示RADIUS数据包(包括Code、Identifier、Length、Authenticator和Attribute)的长度,范围从20~4096。超过Length域的字节将作为填充字符被忽略。如果接收到的包的实际长度小于Length域的值时,则包会被丢弃。
(4) Authenticator域
长度为16个字节,用于验证RADIUS服务器的应答报文,另外还用于用户密码的加密。Authenticator包括两种类型:Request Authenticator和Response Authenticator。
(5) Attribute域
不定长度,用于携带专门的认证、授权和计费信息,提供请求和响应报文的配置细节。Attribute可包括多个属性,每一个属性都采用(Type、Length、Value)三元组的结构来表示。
· 类型(Type),1个字节,取值为1~255,用于表示属性的类型,表1-2列出了RADIUS认证、授权、计费常用的属性。
· 长度(Length),表示该属性(包括类型、长度和属性)的长度,单位为字节。
· 属性值(Value),表示该属性的信息,其格式和内容由类型和长度决定,最大长度为253字节。
属性编号 |
属性名称 |
属性编号 |
属性名称 |
1 |
User-Name |
45 |
Acct-Authentic |
2 |
User-Password |
46 |
Acct-Session-Time |
3 |
CHAP-Password |
47 |
Acct-Input-Packets |
4 |
NAS-IP-Address |
48 |
Acct-Output-Packets |
5 |
NAS-Port |
49 |
Acct-Terminate-Cause |
6 |
Service-Type |
50 |
Acct-Multi-Session-Id |
7 |
Framed-Protocol |
51 |
Acct-Link-Count |
8 |
Framed-IP-Address |
52 |
Acct-Input-Gigawords |
9 |
Framed-IP-Netmask |
53 |
Acct-Output-Gigawords |
10 |
Framed-Routing |
54 |
(unassigned) |
11 |
Filter-ID |
55 |
Event-Timestamp |
12 |
Framed-MTU |
56-59 |
(unassigned) |
13 |
Framed-Compression |
60 |
CHAP-Challenge |
14 |
Login-IP-Host |
61 |
NAS-Port-Type |
15 |
Login-Service |
62 |
Port-Limit |
16 |
Login-TCP-Port |
63 |
Login-LAT-Port |
17 |
(unassigned) |
64 |
Tunnel-Type |
18 |
Reply-Message |
65 |
Tunnel-Medium-Type |
19 |
Callback-Number |
66 |
Tunnel-Client-Endpoint |
20 |
Callback-ID |
67 |
Tunnel-Server-Endpoint |
21 |
(unassigned) |
68 |
Acct-Tunnel-Connection |
22 |
Framed-Route |
69 |
Tunnel-Password |
23 |
Framed-IPX-Network |
70 |
ARAP-Password |
24 |
State |
71 |
ARAP-Features |
25 |
Class |
72 |
ARAP-Zone-Access |
26 |
Vendor-Specific |
73 |
ARAP-Security |
27 |
Session-Timeout |
74 |
ARAP-Security-Data |
28 |
Idle-Timeout |
75 |
Password-Retry |
29 |
Termination-Action |
76 |
Prompt |
30 |
Called-Station-Id |
77 |
Connect-Info |
31 |
Calling-Station-Id |
78 |
Configuration-Token |
32 |
NAS-Identifier |
79 |
EAP-Message |
33 |
Proxy-State |
80 |
Message-Authenticator |
34 |
Login-LAT-Service |
81 |
Tunnel-Private-Group-id |
35 |
Login-LAT-Node |
82 |
Tunnel-Assignment-id |
36 |
Login-LAT-Group |
83 |
Tunnel-Preference |
37 |
Framed-AppleTalk-Link |
84 |
ARAP-Challenge-Response |
38 |
Framed-AppleTalk-Network |
85 |
Acct-Interim-Interval |
39 |
Framed-AppleTalk-Zone |
86 |
Acct-Tunnel-Packets-Lost |
40 |
Acct-Status-Type |
87 |
NAS-Port-Id |
41 |
Acct-Delay-Time |
88 |
Framed-Pool |
42 |
Acct-Input-Octets |
89 |
(unassigned) |
43 |
Acct-Output-Octets |
90 |
Tunnel-Client-Auth-id |
44 |
Acct-Session-Id |
91 |
Tunnel-Server-Auth-id |
· 表1-2中所列的属性由RFC 2865、RFC 2866、RFC 2867和RFC 2868所定义。
· 常用RADIUS标准属性的介绍请参见“1.1.7 1. 常用RADIUS标准属性”。
RADIUS协议具有良好的可扩展性,RFC 2865中定义的26号属性(Vendor-Specific)用于设备厂商对RADIUS进行扩展,以实现标准RADIUS没有定义的功能。
设备厂商可以封装多个自定义的“(Type、Length、Value)”子属性来扩展RADIUS。如图1-5所示,26号属性报文内封装的子属性包括以下四个部分:
· Vendor-ID,表示厂商代号,最高字节为0,其余3字节的编码见RFC 1700。H3C公司的Vendor-ID是25506。H3C RADIUS扩展属性的介绍请参见“1.1.7 2. H3C RADIUS扩展属性”。
· Vendor-Type,表示子属性类型。
· Vendor-Length,表示子属性长度。
· Vendor-Data,表示子属性的内容。
HWTACACS(HW Terminal Access Controller Access Control System,HW终端访问控制器控制系统协议)是在TACACS(RFC 1492)基础上进行了功能增强的安全协议。该协议与RADIUS协议类似,采用客户端/服务器模式实现NAS与HWTACACS服务器之间的通信。
HWTACACS协议主要用于PPP(Point-to-Point Protocol,点对点协议)和VPDN(Virtual Private Dial-up Network,虚拟私有拨号网络)接入用户及终端用户的认证、授权和计费。其典型应用是对需要登录到设备上进行操作的终端用户进行认证、授权以及对终端用户执行的操作进行记录。设备作为HWTACACS的客户端,将用户名和密码发给HWTACACS服务器进行验证,用户验证通过并得到授权之后可以登录到设备上进行操作,HWTACACS服务器上会记录用户对设备执行过的命令。
HWTACACS协议与RADIUS协议都实现了认证、授权、计费的功能,它们有很多相似点:结构上都采用客户端/服务器模式;都使用公共密钥对传输的用户信息进行加密;都有较好的灵活性和可扩展性。两者之间存在的主要区别如表1-3所示。
表1-3 HWTACACS协议和RADIUS协议区别
HWTACACS协议 |
RADIUS协议 |
使用TCP,网络传输更可靠 |
使用UDP,网络传输效率更高 |
除了HWTACACS报文头,对报文主体全部进行加密 |
只对验证报文中的密码字段进行加密 |
协议报文较为复杂,认证和授权分离,使得认证、授权服务可以分离在不同的安全服务器上实现。例如,可以用一个HWTACACS服务器进行认证,另外一个HWTACACS服务器进行授权 |
协议报文比较简单,认证和授权结合,难以分离 |
支持对设备的配置命令进行授权使用。用户可使用的命令行受到用户级别和AAA授权的双重限制,某一级别的用户输入的每一条命令都需要通过HWTACACS服务器授权,如果授权通过,命令就可以被执行 |
不支持对设备的配置命令进行授权使用 用户登录设备后可以使用的命令行由用户级别决定,用户只能使用缺省级别等于/低于用户级别的命令行 |
下面以Telnet用户为例,说明使用HWTACACS对用户进行认证、授权和计费的过程。基本消息交互流程图如图1-6所示。
图1-6 Telnet用户认证、授权和计费流程图
在整个过程中的基本消息交互流程如下:
(1) Telnet用户请求登录设备。
(2) HWTACACS客户端收到请求之后,向HWTACACS服务器发送认证开始报文。
(3) HWTACACS服务器发送认证回应报文,请求用户名。
(4) HWTACACS客户端收到回应报文后,向用户询问用户名。
(5) 用户输入用户名。
(6) HWTACACS客户端收到用户名后,向HWTACACS服务器发送认证持续报文,其中包括了用户名。
(7) HWTACACS服务器发送认证回应报文,请求登录密码。
(8) HWTACACS客户端收到回应报文,向用户询问登录密码。
(9) 用户输入密码。
(10) HWTACACS客户端收到登录密码后,向HWTACACS服务器发送认证持续报文,其中包括了登录密码。
(11) HWTACACS服务器发送认证回应报文,指示用户通过认证。
(12) HWTACACS客户端向HWTACACS服务器发送授权请求报文。
(13) HWTACACS服务器发送授权回应报文,指示用户通过授权。
(14) HWTACACS客户端收到授权回应成功报文,向用户输出设备的配置界面。
(15) HWTACACS客户端向HWTACACS服务器发送计费开始报文。
(16) HWTACACS服务器发送计费回应报文,指示计费开始报文已经收到。
(17) 用户请求断开连接。
(18) HWTACACS客户端向HWTACACS服务器发送计费结束报文。
(19) HWTACACS服务器发送计费结束报文,指示计费结束报文已经收到。
LDAP(Lightweight Directory Access Protocol,轻量级目录访问协议)是一种基于TCP/IP的目录访问协议,用于提供跨平台的、基于标准的目录服务。它是在继承了X.500协议优点的基础上发展起来的,并对X.500在读取、浏览和查询操作方面进行了改进,适合于存储那些不经常改变的数据。
LDAP协议的典型应用是用来保存系统中的用户信息,如Microsoft的Windows操作系统就使用了Active Directory Server来保存操作系统的用户、用户组等信息,用于用户登录Windows时的认证和授权。
LDAP中使用目录记录并管理系统中的组织信息、人员信息以及资源信息,目录是按照树型结构组织,由多个条目(Entry)组成的。条目是具有DN(Distinguished Name,可区别名)的属性(Attribute)集合。
LDAP的目录服务功能建立在Client/Server的基础之上,所有的目录信息数据存储在LDAP服务器上。目前,Microsoft的Active Directory Server、IBM的Tivoli Directory Server和Sun的Sun ONE Directory Server都是常用的LDAP服务器软件。
LDAP协议中定义了多种操作来实现LDAP的各种功能,用于认证和授权的操作主要为绑定和查询。
· 绑定操作的作用有两个:一是与LDAP服务器建立连接并获取LDAP服务器的访问权限。二是用于检查用户信息的合法性。
· 查询操作就是构造查询条件,并获取LDAP服务器的目录资源信息的过程。
使用LDAP协议进行认证时,其基本的工作流程如下:
(1) LDAP客户端使用LDAP服务器管理员DN与LDAP服务器进行绑定,与LDAP服务器建立连接并获得查询权限。
(2) LDAP客户端使用认证信息中的用户名构造查询条件,在LDAP服务器指定根目录下查询此用户,得到用户的DN。
(3) LDAP客户端使用用户DN和用户密码与LDAP服务器进行绑定,检查用户密码是否正确。
使用LDAP协议进行授权的过程与认证过程相似,首先必须通过与LDAP服务器进行绑定,建立与服务器的连接,然后在此连接的基础上通过查询操作得到用户的授权信息。与认证过程稍有不同的是,在查询用户DN时,除能够获得用户DN外,还可以获得用户信息中的授权信息。如果查询用户DN时便能够获得相应的授权信息,则授权过程与认证过程相同;否则还需要再次以LDAP服务器管理员身份与LDAP服务器进行绑定,并在获得相应的目录查询权限后,使用查询到的用户DN构造查询条件,继续对该用户的其它授权信息进行查询。
下面以Telnet用户登录设备为例,说明如何使用LDAP来对用户进行的认证和授权。基本消息交互流程如图1-7所示。
图1-7 LDAP认证的基本消息交互流程
在整个过程中的基本消息交互流程如下:
(1) 用户发起连接请求,向LDAP客户端发送用户名和密码。
(2) LDAP客户端收到请求之后,与LDAP服务器建立TCP连接。
(3) LDAP客户端以管理员DN和管理员DN密码为参数向LDAP服务器发送管理员绑定请求报文(Administrator Bind Request)获得查询权限。
(4) LDAP服务器进行绑定请求报文的处理。如果绑定成功,则向LDAP客户端发送绑定成功的回应报文。
(5) LDAP客户端以输入的用户名为参数,向LDAP服务器发送用户DN查询请求报文(User DN Search Request)。
(6) LDAP服务器收到查询请求报文后,根据报文中的查询起始地址、查询范围、以及过滤条件,对用户DN进行查找。如果查询成功,则向LDAP客户端发送查询成功的回应报文。查询得到的用户DN可以是一或多个。
(7) LDAP客户端以查询得到的用户DN和用户输入的密码为参数,向LDAP服务器发送用户DN绑定请求报文(User DN Bind Request),检查用户密码是否正确。
(8) LDAP服务器进行绑定请求报文的处理。
· 如果绑定成功,则向LDAP客户端发送绑定成功的回应报文。
· 如果绑定失败,则向LDAP客户端发送绑定失败的回应报文。LDAP客户端以下一个查询到的用户DN(如果存在的话)为参数,继续向服务器发送绑定请求,直至有一个DN绑定成功,或者所有DN均绑定失败。如果所有用户DN都绑定失败,则LDAP客户端通知用户登录失败并拒绝用户接入。
(9) LDAP客户端与LDAP服务器进行授权报文的交互。如果需要使用其它方案(如HWTACACS等)继续进行授权,则与对应服务器进行授权报文的交互。
(10) 授权成功之后,LDAP客户端通知用户登录成功。
目前设备暂不支持使用LDAP进行授权,可以配置HWTACACS作为授权方案配合LDAP认证方案,具体配置请参考“1.3.3 配置HWTACACS方案”。
一个ISP(Internet Service Provider,Internet服务提供者)域是由属于同一个ISP的用户构成的群体。
NAS对用户的管理是基于ISP域的,每个接入用户都属于一个ISP域。用户所属的ISP域是由用户登录时提供的用户名决定的,如图1-8所示。
用户的认证、授权、计费都是在相应的ISP域视图下应用预先配置的认证、授权、计费方案来实现的。AAA有缺省的认证、授权、计费方案,分别为本地认证、本地授权、本地计费。如果用户所属的ISP域下未应用任何认证、授权、计费方案,系统将使用缺省的认证、授权、计费方案。
为便于对不同接入方式的用户进行区分管理,AAA将用户划分为以下几个类型:
· lan-access用户:LAN接入用户,如802.1X认证、MAC地址认证用户。
· login用户:登录设备用户,如SSH、Telnet、Web、FTP、终端接入用户。
· Portal接入用户。
· PPP接入用户。
· WAPI接入用户。
PPP用户、WAPI用户的支持情况与设备的型号有关,请参见“配置指导导读”中的“特性差异情况”部分的介绍。
用户登录设备后,AAA还可以对其提供以下服务,用于提高用户登录后对设备操作的安全性:
· 命令行授权:用户执行的每一条命令都需要接受授权服务器的检查,只有授权成功的命令才被允许执行。关于命令行授权的详细介绍请参考“基础配置指导”中的“配置用户通过CLI登录设备”。
· 命令行计费:用户执行过的所有命令或被成功授权执行的命令,会被计费服务器进行记录。关于命令行计费的详细介绍请参考“基础配置指导”中的“配置用户通过CLI登录设备”。
· 级别切换认证:在不退出当前登录、不断开当前连接的前提下,用户将自身的用户级别由低向高切换的时候,需要通过服务器的认证,级别切换操作才被允许。关于用户级别切换的详细介绍请参考“基础配置指导”中的“CLI”。
AAA支持在ISP域视图下针对不同的接入方式配置不同的认证、授权、计费的方法(一组不同的认证/授权/计费方案),具体的配置步骤请参见“1.4 在ISP域中配置实现AAA的方法”。
与AAA、RADIUS、HWTACACS、LDAP相关的协议规范有:
· RFC 2865:Remote Authentication Dial In User Service (RADIUS)
· RFC 2866:RADIUS Accounting
· RFC 2867:RADIUS Accounting Modifications for Tunnel Protocol Support
· RFC 2868:RADIUS Attributes for Tunnel Protocol Support
· RFC 2869:RADIUS Extensions
· RFC 1492:An Access Control Protocol, Sometimes Called TACACS
· RFC 1777:Lightweight Directory Access Protocol
· RFC 2251:Lightweight Directory Access Protocol (v3)
表1-4 常用RADIUS标准属性
属性编号 |
属性名称 |
描述 |
1 |
User-Name |
需要进行认证的用户名称 |
2 |
User-Password |
需要进行PAP方式认证的用户密码,在采用PAP认证方式时,该属性仅出现在Access-Request报文中 |
3 |
CHAP-Password |
需要进行CHAP方式认证的用户密码的消息摘要。在采用CHAP认证方式时,该属性出现在Access-Request报文中 |
4 |
NAS-IP-Address |
Server通过不同的IP地址来标识不同的Client,通常Client采用本地一个接口的IP地址来唯一的标识自己,这就是NAS-IP-Address。该属性指示当前发起请求的Client的NAS-IP-Address。该字段仅出现在Access-Request报文中 |
5 |
NAS-Port |
用户接入NAS的物理端口号 |
6 |
Service-Type |
用户申请认证的业务类型 |
7 |
Framed-Protocol |
用户Frame类型业务的封装协议 |
8 |
Framed-IP-Address |
为用户所配置的IP地址 |
11 |
Filter-ID |
访问控制列表的名称 |
12 |
Framed-MTU |
用户与NAS之间数据链路的MTU值。例如在802.1X的EAP方式认证中,NAS通过Framed-MTU值指示Server发送EAP报文的最大长度,防止EAP报文大于数据链路MTU导致的报文丢失 |
14 |
Login-IP-Host |
用户登录设备的接口IP地址 |
15 |
Login-Service |
用户登录设备时采用的业务类型 |
18 |
Reply-Message |
服务器反馈给用户的纯文本描述,可用于向用户显示认证失败的原因 |
26 |
Vendor-Specific |
厂商自定义的私有属性。一个报文中可以有一个或者多个私有属性,每个私有属性中可以有一个或者多个子属性 |
27 |
Session-Timeout |
会话结束之前,给用户提供服务的最大时间,即用户的最大可用时长 |
28 |
Idle-Timeout |
会话结束之前,允许用户持续空闲的最大时间,即用户的限制切断时间 |
31 |
Calling-Station-Id |
NAS用于向Server告知标识用户的号码,在我司设备提供的lan-access业务中,该字段填充的是用户的MAC地址,采用的“HHHH-HHHH-HHHH”格式封装 |
32 |
NAS-Identifier |
NAS用来向Server标识自己的名称 |
40 |
Acct-Status-Type |
计费请求报文的类型 · 1:Start · 2:Stop · 3:Interim-Update · 4:Reset-Charge · 7:Accounting-On(3GPP中有定义) · 8:Accounting-Off (3GPP中有定义) · 9-14:Reserved for Tunnel Accounting · 15:Reserved for Failed |
45 |
Acct-Authentic |
用户采用的认证方式,包括RADIUS,Local以及Remote |
60 |
CHAP-Challenge |
在CHAP认证中,由NAS生成的用于MD5计算的随机序列 |
61 |
NAS-Port-Type |
NAS认证用户的端口的物理类型 · 15:以太网 · 16:所有种类的ADSL · 17:Cable(有线电视电缆) · 19:Wireless-IEEE 802.11 · 201:VLAN · 202:ATM 如果在ATM或以太网端口上还划分VLAN,则该属性值为201 |
79 |
EAP-Message |
用于封装EAP报文,实现RADIUS协议对EAP认证方式的支持 |
80 |
Message-Authenticator |
用于对认证报文进行认证和校验,防止非法报文欺骗。该属性在RADIUS协议支持EAP认证方式被使用 |
87 |
NAS-Port-Id |
用字符串来描述的认证端口信息 |
表1-5 H3C RADIUS扩展属性
子属性编号 |
子属性名称 |
描述 |
1 |
Input-Peak-Rate |
用户接入到NAS的峰值速率,以bps为单位 |
2 |
Input-Average-Rate |
用户接入到NAS的平均速率,以bps为单位 |
3 |
Input-Basic-Rate |
用户接入到NAS的基本速率,以bps为单位 |
4 |
Output-Peak-Rate |
从NAS到用户的峰值速率,以bps为单位 |
5 |
Output-Average-Rate |
从NAS到用户的平均速率,以bps为单位 |
6 |
Output-Basic-Rate |
从NAS到用户的基本速率,以bps为单位 |
15 |
Remanent_Volume |
表示该连接的剩余可用总流量。对于不同的服务器类型,此属性的单位不同 |
20 |
Command |
用于会话控制,表示对会话进行操作,此属性有五种取值 · 1:Trigger-Request · 2:Terminate-Request · 3:SetPolicy · 4:Result · 5:PortalClear |
24 |
Control_Identifier |
服务器重发报文的标识符,对于同一会话中的重发报文,本属性必须相同。不同的会话的报文携带的该属性值可能相同。相应的客户端响应报文必须携带该属性,其值不变 在开始、停止或中间上报流量的Accounting-Request 报文中,若带有Control-Identifier属性,此时的Control-Identifier属性无实际意义 |
25 |
Result_Code |
表示Trigger-Request或SetPolicy的结果,0表示成功,非0表示失败 |
26 |
Connect_ID |
用户连接索引 |
28 |
Ftp_Directory |
FTP用户工作目录 对于FTP用户,当RADIUS客户端作为FTP服务器的时候,该属性用于设置RADIUS客户端上的FTP目录 |
29 |
Exec_Privilege |
EXEC用户优先级 |
59 |
NAS_Startup_Timestamp |
NAS系统启动时刻,以秒为单位,表示从1970年1月1日UTC 00:00:00以来的秒数 |
60 |
Ip_Host_Addr |
认证请求和计费请求报文中携带的用户IP地址和MAC地址,格式为“A.B.C.D hh:hh:hh:hh:hh:hh”,IP地址和MAC地址之间以空格分开 |
61 |
User_Notify |
服务器需要透传到客户端的信息 |
62 |
User_HeartBeat |
802.1X用户认证成功后下发的32字节的Hash字符串,该属性值被保存在设备的用户列表中,用于校验802.1X客户端的握手报文 该属性仅出现在Access-Accept和Accounting-Request报文中 |
140 |
User_Group |
SSL VPN用户认证成功后下发的用户组,一个用户可以属于多个用户组,多个用户组之间使用分号格开。本属性用于SSL VPN设备的配合 |
141 |
Security_Level |
SSL VPN用户安全认证之后下发的安全级别 |
201 |
Input-Interval-Octets |
两次实时计费间隔的输入的字节差,以Byte为单位 |
202 |
Output-Interval-Octets |
两次实时计费间隔的输出的字节差,以Byte为单位 |
203 |
Input-Interval-Packets |
两次计费间隔的输入的包数,单位由设备上的配置决定 |
204 |
Output-Interval-Packets |
两次计费间隔的输出的包数,单位由设备上的配置决定 |
205 |
Input-Interval-Gigawords |
两次计费间隔的输入的字节差是4G字节的多少倍 |
206 |
Output-Interval-Gigawords |
两次计费间隔的输出的字节差是4G字节的多少倍 |
207 |
Backup-NAS-IP |
NAS发送RADIUS报文的备份源IP地址 |
255 |
Product_ID |
产品名称 |
在作为AAA客户端的接入设备(实现NAS功能的网络设备)上,AAA的基本配置思路如下:
(1) 配置AAA方案:根据需要配置本地或远程认证方案。
· 本地认证:需要配置本地用户,即local user的相关属性,包括手动添加认证的用户名和密码等;
· 远程认证:需要配置RADIUS、HWTACACS或LDAP方案,并在服务器上配置相应的用户属性。
(2) 配置实现AAA的方法:在用户所属的ISP域中分别指定实现认证、授权、计费的方法。
· 认证方法:可选择不认证(none)、本地认证(local)或远程认证(scheme);
· 授权方法:可选择不授权(none)、本地授权(local)或远程授权(scheme);
· 计费方法:可选择不计费(none)、本地计费(local)或远程计费(scheme)。
图1-9 AAA基本配置思路流程图
表1-6 AAA配置任务简介
配置任务 |
说明 |
详细配置 |
|
配置AAA方案 |
配置本地用户 |
至少选其一 |
|
配置RADIUS方案 |
|||
配置HWTACACS方案 |
|||
配置LDAP方案 |
|||
在ISP域中配置实现AAA的方法 |
创建ISP域 |
必选 |
|
配置ISP域的属性 |
可选 |
||
配置ISP域的AAA认证方法 |
至少选其一 |
||
配置ISP域的AAA授权方法 |
|||
配置ISP域的AAA计费方法 |
|||
配置强制切断用户 |
可选 |
||
配置本地EAP认证 |
可选 |
||
配置NAS-ID与VLAN的绑定 |
可选 |
||
配置双机热备模式下的设备ID |
可选 |
||
AAA显示和维护 |
可选 |
对于Login用户,只有配置登录用户界面的认证方式为scheme,也就是AAA认证时,这类用户登录设备才会采用AAA处理。有关登录用户界面认证方式的相关介绍请参见“基础配置指导”中的“登录设备配置”。
当选择使用本地认证、本地授权、本地计费方法对用户进行认证、授权或计费时,应在设备上创建本地用户并配置相关属性。
所谓本地用户,是指在本地设备上设置的一组用户属性的集合。该集合以用户名为用户的唯一标识。为使某个请求网络服务的用户可以通过本地认证,需要在设备上的本地用户数据库中添加相应的表项。具体步骤是,创建一个本地用户并进入本地用户视图,然后在本地用户视图下配置相应的用户属性,可配置的用户属性包括:
· 服务类型
用户可使用的网络服务类型。该属性是本地认证的检测项,如果没有用户可以使用的服务类型,则该用户无法通过认证。
可支持的服务类型包括:FTP、lan-access、Portal、PPP、SSH、Telnet、Terminal、Web。
· 用户状态
用于指示是否允许该用户请求网络服务器,包括active和block两种状态。active表示允许该用户请求网络服务,block表示禁止该用户请求网络服务。
· 最大用户数
使用当前用户名接入设备的最大用户数目。若当前该用户名的接入用户数已达最大值,则使用该用户名的新用户将被禁止接入。
· 生效时间及有效期
用户帐户开始生效的时间以及有效期截止的时间。接入设备仅允许帐户处于有效期内的的用户通过认证。有用户临时需要接入网络时,可以通过建立有一定有效期的来宾帐户控制用户的临时访问。
· 所属的用户组
每一个本地用户都属于一个本地用户组,并继承组中的所有属性(密码管理属性和用户授权属性)。关于本地用户组的介绍和配置请参见“1.3.1 3. 配置用户组属性”。
· 密码管理属性
用户密码的安全属性,可用于对用户的认证密码进行管理和控制。可设置的策略包括:密码老化时间、密码最小长度、密码组合策略。
本地用户的密码管理属性在系统视图(具有全局性)、用户组视图和本地用户视图下都可以配置,其生效的优先级顺序由高到底依次为本地用户、用户组、全局。全局配置对所有本地用户生效,用户组的配置对组内所有本地用户生效。有关密码管理以及全局密码配置的详细介绍请参见“安全配置指导”中的“Password Control配置”。
· 绑定属性
用户认证时需要检测的属性,用于限制接入用户的范围。若用户的实际属性与设置的绑定属性不匹配,则不能通过认证,因此在配置绑定属性时要考虑该用户是否需要绑定某些属性。可绑定的属性包括:用户IP地址、用户接入端口、用户MAC地址、用户所属VLAN。各属性的使用及支持情况请见表1-8。
· 用户授权属性
本地用户的授权属性在用户组和本地用户视图下都可以配置,且本地用户视图下的配置优先级高于用户组视图下的配置。用户组的配置对组内所有本地用户生效。
用户认证通过后,接入设备下发给用户的权限。可支持的授权属性包括:ACL、PPP回呼号码、闲置切换功能、用户级别、用户角色、User Profile、VLAN、FTP/SFTP工作目录。各属性的支持情况请见表1-8。由于可配置的授权属性都有其明确的使用环境和用途,因此配置授权属性时要考虑该用户是否需要某些属性。例如,PPP接入用户不需要授权的目录,因此就不要设置PPP用户的工作目录属性。
表1-7 本地用户配置任务简介
配置任务 |
说明 |
详细配置 |
配置本地用户属性 |
必选 |
|
配置用户组属性 |
可选 |
|
本地用户及本地用户组显示与维护 |
可选 |
表1-8 配置本地用户的属性
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
设置本地用户密码的显示方式 |
local-user password-display-mode { auto | cipher-force } |
可选 缺省情况下,所有接入用户的密码显示方式为auto,表示按照用户设置密码时指定的密码显示方式显示 |
|
添加本地用户,并进入本地用户视图 |
local-user user-name |
必选 缺省情况下,系统中没有任何本地用户 |
|
设置本地用户的密码 |
password [ { cipher | simple } password ] |
可选 若不设置密码,则本地用户认证时无需输入密码,只要用户名有效且其它属性验证通过即可认证成功,因此为提高用户帐户的安全性,建议设置本地用户密码 |
|
设置本地用户可以使用的服务类型 |
service-type { ftp | lan-access | { ssh | telnet | terminal } * | portal | ppp | web } |
必选 缺省情况下,系统不对本地用户授权任何服务 |
|
设置本地用户的状态 |
state { active | block } |
可选 缺省情况下,当一个本地用户被创建以后,其状态为active,允许该用户请求网络服务 |
|
设置本地用户名可容纳的最大接入用户数 |
access-limit max-user-number |
可选 缺省情况下,不限制当前本地用户名可容纳的接入用户数 FTP用户不受此属性限制 |
|
设置本地用户的密码管理属性 |
老化时间 |
password-control aging aging-time |
可选 缺省情况下,采用本地用户所属用户组的密码老化时间,若用户组未配置该值,则采用全局配置(缺省90天) |
密码最小长度 |
password-control length length |
可选 缺省情况下,采用本地用户所属用户组的密码最小长度,若用户组未配置该值,则采用全局配置(缺省10个字符) |
|
密码组合策略 |
password-control composition type-number type-number [ type-length type-length ] |
可选 缺省情况下,采用本地用户所属用户组的密码组合策略,若用户组未配置该值,则采用全局配置(缺省至少一种密码元素,且每种密码元素至少包含一个字符) |
|
设置本地用户的绑定属性 |
bind-attribute { call-number call-number [ : subcall-number ] | ip ip-address | location port slot-number subslot-number port-number | mac mac-address | vlan vlan-id } * |
可选 缺省情况下,未设置本地用户的任何绑定属性 ppp用户支持绑定属性call-number; lan-access用户支持绑定属性ip、location、mac和vlan; 其它类型的本地用户不支持绑定属性 |
|
设置本地用户的授权属性 |
authorization-attribute { acl acl-number | callback-number callback-number | idle-cut minute | level level | user-profile profile-name | user-role { guest | guest-manager | security-audit } | vlan vlan-id | work-directory directory-name } * |
可选 缺省情况下,未设置本地用户的任何授权属性 对于ppp用户,仅授权属性acl、callback-number、idle-cut和user-profile有效; 对于lan-access、portal用户,仅授权属性acl、idle-cut、user-profile和vlan有效; 对于ssh、terminal、web用户,仅授权属性level有效; 对于ftp用户,仅授权属性level和work-directory有效; 对于telnet用户,仅授权属性level和user-role有效; 对于其它类型的本地用户,所有授权属性均无效 |
|
设置本地用户的生效时间 |
validity-date time |
可选 缺省情况下,未设置本地用户的生效时间 |
|
设置本地用户的有效期 |
expiration-date time |
可选 缺省情况下,未设置本地用户的有效期 设置本地用户有效期特性的支持情况与设备的型号有关,请参见“配置指导导读”中的“特性差异情况”部分的介绍。 |
|
设置本地用户所属的用户组 |
group group-name |
可选 缺省情况下,本地用户属于系统默认用户组system |
· 支持Password Control特性的设备上不显示本地用户密码,而且local-user password-display-mode命令也不生效。
· 若使用local-user password-display-mode cipher-force命令强制用户密码密文显示并使用save命令保存当前配置,在重启设备后,即使恢复为auto方式,重启前配置为明文显示的密码仍然显示为密文,但重启后新配置的密码显示依然遵循当前配置的本地用户的密码显示方式。
· 本地用户的access-limit命令只在该用户采用了本地计费方法的情况下生效。
· 如果登录设备的认证方式(通过命令authentication-mode设置)为AAA(scheme),则用户登录系统后所能访问的命令级别由用户被授权的级别确定;如果配置登录设备的认证方式为不认证(none)或采用密码认证(password),则用户登录系统后所能访问的命令级别由用户界面所能访问的命令级别确定。对于SSH用户,使用公钥认证时,其所能使用的命令以用户界面上设置的级别为准。关于登录设备的认证方式与用户界面所能访问的命令级别的详细介绍请参见“基础配置指导”中的“配置用户通过CLI登录设备”。
· 除本地用户视图下可以配置授权User Profile之外,ISP域中也可以配置授权User Profile。如果当前ISP域的用户通过本地认证,则本地用户视图下配置的授权User Profile优先生效,若本地用户视图下没有配置授权User Profile,则该用户所在的ISP域中配置的缺省User Profile生效。关于User Profile的详细介绍请参见“安全配置指导”中的“User Profile配置”。
为了简化本地用户的配置,增强本地用户的可管理性,引入了用户组的概念。用户组是一个本地用户属性的集合,某些需要集中管理的属性可在用户组中统一配置和管理,用户组内的所有本地用户都可以继承这些属性。目前,用户组中可以管理的内容包括本地用户的密码管理属性和授权属性。
每个新增的本地用户都默认属于一个系统自动创建的用户组system,且继承该组的所有属性。本地用户所属的用户组可以通过使用本地用户视图下的group命令来修改。
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
创建用户组,并进入用户组视图 |
user-group group-name |
必选 |
|
设置用户组的密码控制属性 |
老化时间 |
password-control aging aging-time |
可选 缺省情况下,采用全局老化时间(缺省90天) |
密码最小长度 |
password-control length length |
可选 缺省情况下,采用全局密码长度(缺省10个字符) |
|
密码组合策略 |
password-control composition type-number type-number [ type-length type-length ] |
可选 缺省情况下,采用全局密码组合策略(缺省至少一种密码元素,且每种密码元素至少包含一个字符) |
|
设置用户组的授权属性 |
authorization-attribute { acl acl-number | callback-number callback-number | idle-cut minute | level level | user-profile profile-name | vlan vlan-id | work-directory directory-name } * |
可选 缺省情况下,未设置用户组的授权属性 |
|
设置用户组的来宾可选属性 |
group-attribute allow-guest |
可选 缺省情况下,用户组不具有来宾可选属性,来宾用户管理员在Web界面上创建的来宾用户不能加入该用户组 |
完成上述配置后,在任意视图下执行display命令可以显示配置后本地用户及本地用户组的运行情况,通过查看显示信息验证配置的效果。
表1-10 本地用户及本地用户组显示和维护
操作 |
命令 |
显示本地用户相关信息 |
display local-user [ idle-cut { disable | enable } | service-type { ftp | lan-access | portal | ppp | ssh | telnet | terminal | web } | state { active | block } | user-name user-name | vlan vlan-id ] [ | { begin | exclude | include } regular-expression ] |
显示本地用户组的相关信息 |
display user-group [ group-name ] [ | { begin | exclude | include } regular-expression ] |
RADIUS方案中定义了设备和RADIUS服务器之间进行信息交互所必须的一些参数。当创建一个新的RADIUS方案之后,需要对属于此方案的RADIUS服务器的IP地址、UDP端口号和报文共享密钥进行设置,这些服务器包括认证/授权和计费服务器,而每种服务器又有主服务器和从服务器的区别。每个RADIUS方案的属性包括:主服务器的IP地址、从服务器的IP地址、共享密钥以及RADIUS服务器类型等。
表1-11 RADIUS配置任务简介
配置任务 |
说明 |
详细配置 |
创建RADIUS方案 |
必选 |
|
配置RADIUS认证/授权服务器 |
必选 |
|
配置RADIUS计费服务器及相关参数 |
可选 |
|
配置RADIUS报文的共享密钥 |
可选 |
|
配置支持的RADIUS服务器的类型 |
可选 |
|
配置发送RADIUS报文的最大尝试次数 |
可选 |
|
配置RADIUS服务器的状态 |
可选 |
|
配置发送给RADIUS服务器的用户名格式和数据统计单位 |
可选 |
|
配置发送RADIUS报文使用的源地址 |
可选 |
|
配置发送RADIUS报文使用的备份源地址 |
可选 |
|
配置RADIUS服务器的定时器 |
可选 |
|
配置RADIUS的accounting-on功能 |
可选 |
|
配置RADIUS服务器的安全策略服务器 |
可选 |
|
使能RADIUS Offload功能 |
可选 |
|
配置RADIUS Attribute 25的CAR参数解析功能 |
可选 |
|
配置RADIUS的Trap功能 |
可选 |
|
配置RADIUS报文信息的日志开关 |
可选 |
|
使能RADIUS客户端的监听端口 |
可选 |
|
RADIUS显示和维护 |
可选 |
在进行RADIUS的其它配置之前,必须先创建RADIUS方案并进入其视图。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建RADIUS方案并进入其视图 |
radius scheme radius-scheme-name |
必选 缺省情况下,未定义RADIUS方案 |
一个RADIUS方案可以同时被多个ISP域引用。
通过在RADIUS方案中配置RADIUS认证/授权服务器,指定设备对用户进行RADIUS认证/授权时与哪些服务器进行通信。由于RADIUS服务器的授权信息是随认证应答报文发送给RADIUS客户端的,故不能也不需要单独配置RADIUS授权服务器。若在RADIUS方案中同时配置了主认证/授权服务器和从认证/授权服务器,则当设备判断主认证/授权服务器不可达时,将使用从认证/授权服务器进行认证、授权。建议在不需要备份的情况下,只配置主RADIUS认证/授权服务器即可。
表1-13 配置RADIUS认证/授权服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
配置主RADIUS认证/授权服务器 |
primary authentication { ip-address | ipv6 ipv6-address } [ port-number | key [ cipher | simple ] key | probe username name [ interval interval ] ] * |
二者至少选其一 缺省情况下,未配置主认证/授权服务器和从认证/授权服务器 |
配置从RADIUS认证/授权服务器 |
secondary authentication { ip-address | ipv6 ipv6-address } [ port-number | key [ cipher | simple ] key | probe username name [ interval interval ] ] * |
· 在实际组网环境中,可以指定一台RADIUS服务器作为主认证/授权服务器,并指定多台(最多16台)RADIUS服务器作为从认证/授权服务器;也可以指定一台服务器既作为某个方案的主认证/授权服务器,又作为另一个方案的从认证/授权服务器。
· 在同一个方案中指定的主认证/授权服务器和从认证/授权服务器的IP地址不能相同,并且各从服务器的IP地址也不能相同,否则将提示配置不成功。
· 主服务器和从服务器的IP地址版本必须保持一致,并且各从服务器的IP地址版本也必须保持一致;认证/授权服务器和计费服务器的IP地址版本也必须保持一致。
通过在RADIUS方案中配置RADIUS计费服务器,指定设备对用户进行RADIUS计费时与哪些服务器进行通信。若在RADIUS方案中同时配置了主计费服务器和从计费服务器,则当设备判断主计费服务器不可达时,将使用从计费服务器进行计费。建议在不需要备份的情况下,只配置主RADIUS计费服务器即可。
用户上线之后,设备应该尽量与RADIUS服务器同步切断用户连接,通过在设备上配置发起实时计费请求的最大尝试次数,允许设备向RADIUS服务器发出的实时计费请求没有得到响应的次数超过指定的最大值时切断用户连接。
当用户请求断开连接或者设备强行切断用户连接的情况下,设备会向RADIUS计费服务器发送停止计费请求,通过在设备上使能停止计费报文缓存功能,将其缓存在本机上,然后发送直到RADIUS计费服务器产生响应,或者在发起停止计费请求的尝试次数达到指定的最大值后将其丢弃。
表1-14 配置RADIUS计费服务器及相关参数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
配置主RADIUS计费服务器 |
primary accounting { ip-address | ipv6 ipv6-address } [ port-number | key [ cipher | simple ] key | probe username name [ interval interval ] ] * |
二者至少选其一 缺省情况下,未配置主/从计费服务器 |
配置从RADIUS计费服务器 |
secondary accounting { ip-address | ipv6 ipv6-address } [ port-number | key [ cipher | simple ] key | probe username name [ interval interval ] ] * |
|
设置允许发起实时计费请求的最大尝试次数 |
retry realtime-accounting retry-times |
可选 缺省情况下,允许发起实时计费请求的最大尝试次数为5 |
使能停止计费报文缓存功能 |
stop-accounting-buffer enable |
可选 缺省情况下,允许设备缓存没有得到响应的停止计费请求报文 |
设置允许发起停止计费请求的最大尝试次数 |
retry stop-accounting retry-times |
可选 缺省情况下,允许发起停止计费请求的最大尝试次数为500 |
· 在实际组网环境中,可以指定一台RADIUS服务器作为主计费服务器,并指定多台(最多16台)RADIUS服务器作为从计费服务器;也可以指定一台服务器既作为某个方案的主计费服务器,又作为另一个方案的从计费服务器。
· 如果在线用户正在使用的计费服务器被删除,则设备将无法发送用户的实时计费请求和停止计费请求,且停止计费报文不会被缓存到本地。
· 主计费服务器和从计费服务器的IP地址不能相同,并且各从计费服务器的IP地址也不能相同,否则将提示配置不成功。
· 目前RADIUS不支持对FTP用户进行计费。
· 主服务器和从服务器的IP地址版本必须保持一致,并且各从服务器的IP地址版本也必须保持一致;计费服务器和认证/授权服务器的IP地址版本也必须保持一致。
RADIUS客户端与RADIUS服务器使用MD5算法来加密RADIUS报文,并在共享密钥的参与下生成验证字来验证对方报文的合法性。只有在密钥一致的情况下,彼此才能接收对方发来的报文并作出响应。
由于设备优先采用配置RADIUS认证/授权/计费服务器时指定的报文共享密钥,因此,本配置中指定的报文共享密钥仅在配置RADIUS认证/授权/计费服务器时未指定相应密钥的情况下使用。
表1-15 配置RADIUS报文的共享密钥
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
配置RADIUS认证/授权或计费报文的共享密钥 |
key { accounting | authentication } [ cipher | simple ] key |
必选 缺省情况下,无密钥 |
必须保证设备上设置的共享密钥与RADIUS服务器上的完全一致。
通过指定设备支持RADIUS服务器类型,决定设备与RADIUS服务器之间可交互的RADIUS协议类型:
· 若指定extended类型的RADIUS服务器,则设备与RADIUS服务器将按照私有RADIUS协议的规程和报文格式进行交互。
· 若指定standard类型的RADIUS服务器,则设备与RADIUS服务器将按照标准RADIUS协议(RFC 2865/2866或更新)的规程和报文格式进行交互。
使用CAMS/iMC服务器时,RADIUS服务器类型应选择extended类型。使用其它第三方RADIUS服务器时,RADIUS服务器类型可以选择standard类型或extended类型。
表1-16 配置支持的RADIUS服务器的类型
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
设置设备支持的RADIUS服务器类型 |
server-type { extended | standard } |
可选 缺省情况下,设备支持的RADIUS服务器类型为standard |
当设备支持的RADIUS服务器类型被更改时,设备会将发送到RADIUS服务器的数据流的单位(data-flow-format)恢复为缺省配置。
由于RADIUS协议采用UDP报文来承载数据,因此其通信过程是不可靠的。如果RADIUS服务器在应答超时定时器规定的时长内(由timer response-timeout命令配置)没有响应设备,则设备有必要向RADIUS服务器重传RADIUS请求报文。如果发送RADIUS请求报文的累计次数超过指定的最大尝试次数而RADIUS服务器仍旧没有响应,则设备将尝试与其它服务器通信,如果不存在状态为active的服务器,则认为本次认证或计费失败。关于RADIUS服务器状态的相关内容,请参见“1.3.2 8. 配置RADIUS服务器的状态”。
表1-17 配置发送RADIUS报文的最大尝试次数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
设置发送RADIUS报文的最大尝试次数 |
retry retry-times |
可选 缺省情况下,发送RADIUS报文的最大尝试次数为3次 |
· 发送RADIUS报文的最大尝试次数与RADIUS服务器应答超时时间的乘积不能超过75秒。
· RADIUS服务器应答超时时间的配置请参考命令“12. 配置RADIUS服务器的定时器”。
RADIUS方案中各服务器的状态(active、block)决定了设备向哪个服务器发送请求报文,以及设备在与当前服务器通信中断的情况下,如何转而与另外一个服务器进行交互。在实际组网环境中,可指定一个主RADIUS服务器和多个从RADIUS服务器,由从服务器作为主服务器的备份。通常情况下,设备上主从服务器的切换遵从以下原则:
· 当主服务器状态为active时,设备首先尝试与主服务器通信,若主服务器不可达,设备更改主服务器的状态为block,并启动该服务器的timer quiet定时器,然后按照从服务器的配置先后顺序依次查找状态为active的从服务器进行认证或者计费。如果状态为active的从服务器也不可达,则将该从服务器的状态置为block,同时启动该服务器的timer quiet定时器,并继续查找状态为active的从服务器。当服务器的timer quiet定时器超时,或者设备收到该服务器的认证/计费应答报文时,该服务器将恢复为active状态。在一次认证或计费过程中,如果设备在尝试与从服务器通信时,主服务器状态由block恢复为active,则设备并不会立即恢复与主服务器的通信,而是继续查找从服务器。如果所有已配置的服务器都不可达,则认为本次认证或计费失败。
· 一个用户的计费流程开始之后,设备就不会再与其它的计费服务器通信,即该用户的实时计费报文和停止计费报文只会发往当前使用的计费服务器。如果当前使用的计费服务器被删除,则实时计费和停止计费报文都将无法发送。
· 如果在认证或计费过程中删除了服务器,则设备在与当前服务器通信超时后,将会重新从主服务器开始依次查找状态为active的服务器进行通信。
· 当主/从服务器的状态均为block时,设备仅与主服务器通信,若主服务器可达,则主服务器状态变为active,否则保持不变。
· 只要存在状态为active的服务器,设备就仅与状态为active的服务器通信,即使该服务器不可达,设备也不会尝试与状态为block的服务器通信。
· 设备收到服务器的认证或计费应答报文后会将与报文源IP地址相同且状态为block的认证或计费服务器的状态更改为active。
缺省情况下,设备将配置了IP地址的各RADIUS服务器的状态均置为active,认为所有的服务器均处于正常工作状态,但有些情况下用户可能需要通过以下配置手工改变RADIUS服务器的当前状态。例如,已知某服务器故障,为避免设备认为其active而可能进行的无意义尝试,可暂时将该服务器状态手工置为block来满足此需求。
表1-18 配置RADIUS服务器的状态
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
设置主RADIUS认证/授权服务器的状态 |
state primary authentication { active | block } |
可选 缺省情况下,RADIUS方案中配置了IP地址的各RADIUS服务器的状态均为active |
设置主RADIUS计费服务器的状态 |
state primary accounting { active | block } |
|
设置从RADIUS认证/授权服务器的状态 |
state secondary authentication [ ip ipv4-address | ipv6 ipv6-address ] { active | block } |
|
设置从RADIUS计费服务器的状态 |
state secondary accounting [ ip ipv4-address | ipv6 ipv6-address ] { active | block } |
· state命令设置的服务器状态属于动态信息,不能被保存在配置文件中,设备重启后,配置了IP地址的服务器状态恢复为缺省状态active。
· 可通过执行display radius scheme命令查看各服务器的当前状态。
接入用户通常以“userid@isp-name”的格式命名,“@”后面的部分为ISP域名,设备通过该域名决定将用户归于哪个ISP域的。由于有些较早期的RADIUS服务器不能接受携带有ISP域名的用户名,因此就需要设备首先将用户名中携带的ISP域名去除后再传送给该类RADIUS服务器。通过设置发送给RADIUS服务器的用户名格式,就可以选择发送RADIUS服务器的用户名中是否要携带ISP域名。
设备通过周期性地发送计费更新报文,向RADIUS服务器报告在线用户的数据流量统计值,该值的单位可配,为保证RADIUS服务器计费的准确性,设备上设置的发送给RADIUS服务器的数据流或者数据包的单位应与RADUIS服务器上的流量统计单位保持一致。
表1-19 配置发送给RADIUS服务器的数据相关属性
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
设置发送给RADIUS服务器的用户名格式 |
user-name-format { keep-original | 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 } } * |
可选 缺省情况下,数据流的单位为byte,数据包的单位为one-packet |
· 如果指定某个RADIUS方案不允许用户名中携带有ISP域名,那么请不要在两个乃至两个以上的ISP域中同时设置使用该RADIUS方案,否则,会出现虽然实际用户不同(在不同的ISP域中)、但RADIUS服务器认为用户相同(因为传送到它的用户名相同)的错误。
· 对于级别切换认证,命令user-name-format keep-original与user-name-format without-domain的执行效果一样,即发送给RADIUS服务器的用户名都不携带ISP域名。
RADIUS服务器上通过IP地址来标识接入设备,并根据收到的RADIUS报文的源IP地址是否与服务器所管理的接入设备的IP地址匹配,来决定是否处理来自该接入设备的认证或计费请求。若RADIUS服务器收到的RADIUS认证或计费报文的源地址在所管理的接入设备IP地址范围内,则才会进行后续的认证或计费处理,否则直接对其做丢弃处理。因此,为保证认证和计费报文可被服务器正常接收并处理,接入设备上发送RADIUS报文使用的源地址必须与RADIUS服务器上指定的接入设备的IP地址保持一致。
通常,该地址为接入设备上与RADIUS服务器路由可达的接口IP地址,但在一些特殊的组网环境中,例如接入设备与RADIUS服务器之间存在NAT(Network Address Translation,网络地址转换)设备时,需要将该地址指定为转换后的公网IP地址;在接入设备使用VRRP(Virtual Router Redundancy Protocol,虚拟路由冗余协议)进行双机热备应用时,可以将该地址指定为VRRP上行链路所在备份组的虚拟IP地址。
设备发送RADIUS报文时,首先判断当前所使用的RADIUS方案中是否通过nas-ip命令配置了发送RADIUS报文使用源地址,若配置存在,则使用该地址作为发送RADIUS报文使用的源地址,否则,根据当前使用的服务器所属的VPN查找系统视图下通过radius nas-ip命令配置的私网源地址,对于公网服务器则直接查找该命令配置的公网源地址。若系统视图下配置了相应的源地址,则使用该地址作为发送RADIUS报文使用的源地址,否则,使用通过路由查找到的报文出接口地址作为发送RADIUS报文使用的源地址。
此配置可以在系统视图和RADIUS方案视图下进行,系统视图下的配置将对所有RADIUS方案生效,RADIUS方案视图下的配置仅对本方案有效,并且具有高于前者的优先级。
表1-20 为所有RADIUS方案配置发送RADIUS报文使用的源地址
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
设置设备发送RADIUS报文使用的源地址 |
radius nas-ip { ip-address | ipv6 ipv6-address } ] |
必选 缺省情况下,未指定源地址,即以发送报文的接口地址作为源地址 |
表1-21 为RADIUS方案配置发送RADIUS报文使用的源地址
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
设置设备发送RADIUS报文使用的源地址 |
nas-ip { ip-address | ipv6 ipv6-address } |
必选 缺省情况下,未指定源地址,即以发送报文的接口地址作为源地址 |
在双机热备的组网环境中,主设备通过与RADIUS服务器交互对Portal用户进行认证,并负责将生成的Portal在线用户数据通过备份链路同步给备用设备,而备用设备只接收和处理主设备发送的同步消息。
当主设备发生故障时,由于服务器不知道备用设备的源地址,因此不会主动向备用设备发送RADIUS报文。为解决这个问题,需要将备用设备发送RADIUS报文使用的源地址发给服务器,使得服务器也主动向备用设备发送RADIUS报文,备用设备发送RADIUS报文的源地址就是通过在主用设备上配置发送RADIUS报文使用的备份源地址告知服务器的。
设备选择发送RADIUS报文使用的备份源地址时,首先判断当前所使用的RADIUS方案中是否通过nas-backup-ip命令配置了发送RADIUS报文使用备份源地址,若配置存在,则将该地址作为对端设备发送RADIUS报文使用的源地址发给服务器,否则,根据当前使用的服务器所属的VPN查找系统视图下通过radius nas-backup-ip命令配置的私网备份源地址,对于公网服务器则直接查找该命令配置的公网备份源地址。若系统视图下配置了相应的备份源地址,则使用该地址作为备份源地址,否则,不向服务器发送备份源地址。
此配置可以在系统视图和RADIUS方案视图下进行,系统视图下的配置将对所有RADIUS方案生效,RADIUS方案视图下的配置仅对本方案有效,并且具有高于前者的优先级。
表1-22 为所有RADIUS方案配置发送RADIUS报文使用的备份源地址
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
设置设备发送RADIUS报文使用的备份源地址 |
radius nas-backup-ip ip-address |
必选 缺省情况下,未指定备份源地址 |
表1-23 为RADIUS方案配置发送RADIUS报文使用的备份源地址
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
设置设备发送RADIUS报文使用的备份源地址 |
nas-backup-ip ip-address |
必选 缺省情况下,未指定备份源地址 |
设备发送RADIUS报文使用的备份源地址仅在双机热备环境下生效,而且,此地址必须指定为对端发送RADIUS报文使用的源地址。
在与RADIUS服务器交互的过程中,设备上可启动的定时器包括以下几种:
· 服务器响应超时定时器(response-timeout):如果在RADIUS请求报文(认证/授权请求或计费请求)传送出去一段时间后,设备还没有得到RADIUS服务器的响应,则有必要重传RADIUS请求报文,以保证用户确实能够得到RADIUS服务,这段时间被称为RADIUS服务器响应超时时长。
· 服务器恢复激活状态定时器(quiet):当服务器不可达时,状态变为block,设备会与其它状态为active的服务器交互,并开启超时定时器,在设定的一定时间间隔之后,将该服务器的状态恢复为active。这段时间被称为RADIUS服务器恢复激活状态时长。
· 实时计费间隔定时器(realtime-accounting):为了对用户实施实时计费,有必要定期向服务器发送实时计费更新报文,通过设置实时计费的时间间隔,设备会每隔设定的时间向RADIUS服务器发送一次在线用户的计费信息。
表1-24 设置RADIUS服务器的定时器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
设置RADIUS服务器响应超时时间 |
timer response-timeout seconds |
可选 缺省情况下,RADIUS服务器响应超时定时器为3秒 |
设置服务器恢复激活状态的时间 |
timer quiet minutes |
可选 缺省情况下,服务器恢复激活状态前需要等待5分钟 |
设置实时计费间隔 |
timer realtime-accounting minutes |
可选 缺省情况下,实时计费间隔为12分钟 |
· 发送RADIUS报文的最大尝试次数的最大值与RADIUS服务器响应超时时间的乘积必须小于各接入类型的客户端连接超时时间,且不能超过75秒。比如对于语音类型的接入用户,因为其客户端连接超时时间为10秒,所以RADIUS服务器的响应超时时间与发送RADIUS请求报文的最大尝试次数的乘积必须小于10秒;对于Telnet接入类型的用户,其客户端连接超时时间为30秒,所以此乘积必须小于30秒。否则会造成计费停止报文不能被缓存,以及主备服务器不能切换的问题。具体接入客户端连接超时时间请参考相关接入手册。
· 要根据配置的从服务器数量合理设置发送RADIUS报文的最大尝试次数和RADIUS服务器响应超时时间,避免因为超时重传时间过长,在主服务器不可达时,出现设备在尝试与从服务器通信的过程中接入模块的客户端连接已超时的现象。但是,有些接入模块的客户端的连接超时时间较短,在配置的从服务器较多的情况下,即使将报文重传次数和RADIUS服务器响应超时时间设置的很小,也可能会出现上述客户端超时的现象,并导致初次认证或计费失败。这种情况下,由于设备会将不可达服务器的状态设置为block,在下次认证或计费时设备就不会尝试与这些状态为block的服务器通信,一定程度上缩短了查找可达服务器的时间,因此用户再次尝试认证或计费就可以成功。
· 要根据配置的从服务器数量合理设置服务器恢复激活状态的时间。如果服务器恢复激活状态时间设置的过短,就会出现设备反复尝试与状态active但实际不可达的服务器通信而导致的认证或计费频繁失败的问题。
· RADIUS各类报文重传次数的最大值配置请参考命令retry。
使能了accounting-on功能后,设备会在重启后主动向RADIUS服务器发送accounting-on报文来告知自己已经重启,并要求RADIUS服务器强制通过本设备上线的用户下线。该功能可用于解决设备重启后,重启前的原在线用户因被RADIUS服务器认为仍然在线而短时间内无法再次登录的问题。若设备发送accounting-on报文后RADIUS服务器无响应,则会在按照一定的时间间隔(interval seconds)尝试重发几次(send send-times)。
表1-25 配置RADIUS的accounting-on功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
配置accounting-on功能 |
accounting-on enable [ interval seconds | send send-times ] * |
必选 缺省情况下,accounting-on功能处于关闭状态,accounting-on报文重发时间间隔为3秒,accounting-on报文重发次数为5次 |
accounting-on功能需要和H3C CAMS或 H3C iMC网管系统配合使用。
H3C EAD方案的核心是整合与联动,其中的安全策略服务器是EAD方案中的管理与控制中心,它作为一个软件的集合,兼具用户管理、安全策略管理、安全状态评估、安全联动控制以及安全事件审计等功能。
通过配置RADIUS安全策略服务器的IP地址,接入设备可以验证iMC服务器发送给设备的控制报文的合法性。当接入设备收到iMC服务器的控制报文时,若该控制报文的源IP地址不是指定的安全策略服务器的IP地址,则接入设备认为其非法而丢弃。若iMC的配置平台、认证服务器以及安全策略服务器的IP地址相同,则不需要在接入设备上配置RADIUS安全策略服务器的IP地址。
通常,若要支持完整的EAD功能,建议在接入设备上通过本配置将RADIUS安全策略服务器的IP地址分别指定为iMC安全策略服务器的IP地址和iMC配置平台的IP地址。
表1-26 设置RADIUS的安全策略服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
设置RADIUS安全策略服务器的IP地址 |
security-policy-server ip-address |
必选 缺省情况下,未指定RADIUS安全策略服务器 |
一个RADIUS方案中可以配置多个安全策略服务器IP地址,最多不能超过8个。
由于某些RADIUS服务器不支持EAP认证,即不支持对EAP报文的处理,因此需要将客户端发送的EAP报文在接入设备上进行一些预处理,我们将这种EAP报文的预处理称之为RADIUS Offload功能。
RADIUS Offload功能需要本地EAP认证服务器来协助实现,具体如下:
(1) 设备收到客户端的EAP报文后,首先由本地EAP服务器与客户端之间进行EAP报文的交互,然后将其中的用户认证信息转换为对应的RADIUS属性(MS-CHAPv2属性),并封装在RADIUS认证请求报文中发送给RADIUS服务器进行认证。
(2) RADIUS服务器收到请求报文后,会解析其中的认证信息,并将认证结果封装在RADIUS报文中发送给接入设备上的本地EAP服务器进行后续与客户端之间的交互。
要使能RADIUS Offload功能,必须在设备上完成以下配置:
· 配置本地EAP认证服务器,并指定其中的EAP认证方式为PEAP-MSCHAPv2(目前仅支持此认证方式)。具体配置请参见“1.6 配置本地EAP认证”。
· 在RADIUS方案中使能EAP Offload功能,具体配置见表1-27。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
使能EAP Offload功能 |
eap offload method peap-mschapv2 |
必选 缺省情况下,EAP Offload功能处于关闭状态 |
RADIUS的25号属性为class属性,该属性由RADIUS服务器下发给设备,但RFC中并未定义具体的用途,仅规定了设备需要将服务器下发的class属性再原封不动地携带在计费请求报文中发送给服务器即可,同时RFC并未要求设备必须对该属性进行解析。目前,某些RADIUS服务器利用class属性来对用户下发CAR参数,为了支持这种应用,可以通过本特性来控制设备是否将RADIUS 25号属性解析为CAR参数,解析出的CAR参数可被用来进行基于用户的流量监管控制。
表1-28 配置对RADIUS Attribute 25进行CAR参数解析
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RADIUS方案视图 |
radius scheme radius-scheme-name |
- |
开启RADIUS Attribute 25的CAR参数解析功能 |
attribute 25 car |
必选 缺省情况下,RADIUS Attribute 25的CAR参数解析功能处于关闭状态 |
本功能是否需要配置与RADIUS服务器是否支持利用calss属性进行CAR参数的下发相关,请以RADIUS服务器的实际情况为准。
通过配置RADIUS的Trap功能,控制NAS触发输出相应的Trap信息,具体包括以下两种:
· RADIUS服务器可达状态改变时输出Trap信息。具体包括两种情况:当NAS向RADIUS服务器发送计费或认证请求无响应的次数达到指定的发送RADIUS报文的最大尝试次数时,NAS认为服务器不可达,会置服务器状态为block并输出Trap信息;当NAS收到状态不可达的服务器发送的报文时,则认为服务器状态可达,会置服务器状态为active并输出Trap信息。
· 认证失败次数与认证请求次数的百分比超过一定阈值时输出Trap信息。该阈值目前只能够通过MIB方式进行配置,取值范围为1%~100%,缺省为30%。由于正常情况下,认证失败的比率较小,如果NAS触发输出了该类Trap信息,则管理员可能需要确认配置是否正确或设备与服务器的通信是否正常,并通过排查配置或网络问题来保证用户认证过程的正常运行。
表1-29 配置RADIUS的Trap功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
使能RADIUS的Trap功能 |
radius trap { accounting-server-down | authentication-error-threshold | authentication-server-down } |
必选 缺省情况下,RADIUS的Trap功能处于关闭状态 |
本特性的支持情况与设备的型号有关,请参见“配置指导导读”中的“特性差异情况”部分的介绍。
通过以下配置可以关闭RADIUS报文信息的日志开关,避免在设备上启动日志功能而影响系统的性能。
表1-30 配置关闭RADIUS报文信息的日志开关
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
关闭RADIUS报文信息的日志开关 |
undo radius log packet |
必选 缺省情况下,RADIUS报文信息的日志开关处于关闭状态 |
通过以下配置可以打开RADIUS客户端的RADIUS报文监听端口,使能后的端口才可以接收和发送RADIUS报文。在不需要使用RADIUS认证功能时,为避免收到恶意的RADIUS攻击报文,建议关闭设备上RADIUS客户端的监听端口。
表1-31 使能RADIUS客户端的监听端口
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
使能RADIUS客户端的监听端口 |
radius client enable |
可选 缺省情况下,监听端口处于使能状态 |
完成上述配置后,在任意视图下执行display命令可以显示配置后RADIUS的运行情况,通过查看显示信息验证配置的效果。
在用户视图下,执行reset命令可以清除相关统计信息。
表1-32 RADIUS显示和维护
操作 |
命令 |
显示所有或指定RADIUS方案的配置信息 |
display radius scheme [ radius-scheme-name ] [ | { begin | exclude | include } regular-expression ] |
显示RADIUS报文的统计信息 |
display radius statistics [ | { begin | exclude | include } regular-expression ] |
显示缓存的没有得到响应的停止计费请求报文 |
display stop-accounting-buffer { radius-scheme radius-server-name | session-id session-id | time-range start-time stop-time | user-name user-name } [ | { begin | exclude | include } regular-expression ] |
清除RADIUS协议的统计信息 |
reset radius statistics |
清除缓存中的没有得到响应的停止计费请求报文 |
reset stop-accounting-buffer { radius-scheme radius-server-name | session-id session-id | time-range start-time stop-time | user-name user-name } |
有用户在线时,不能删除HWTACACS方案,并且不能修改HWTACACS服务器IP地址。
表1-33 HWTACACS配置任务简介
配置任务 |
说明 |
详细配置 |
创建HWTACACS方案 |
必选 |
|
配置HWTACACS认证服务器 |
必选 |
|
配置HWTACACS授权服务器 |
可选 |
|
配置HWTACACS计费服务器 |
可选 |
|
配置HWTACACS报文的共享密钥 |
必选 |
|
配置发送给HWTACACS服务器的数据相关属性 |
可选 |
|
配置发送HWTACACS报文使用的源地址 |
可选 |
|
配置HWTACACS服务器的定时器 |
可选 |
|
HWTACACS显示和维护 |
可选 |
HWTACACS的配置是以HWTACACS方案为单位进行的。在进行HWTACACS的其它相关配置之前,必须先创建HWTACACS方案并进入其视图。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建HWTACACS方案并进入其视图 |
hwtacacs scheme hwtacacs-scheme-name |
必选 缺省情况下,未定义HWTACACS方案 |
系统最多支持配置16个HWTACACS方案。只有未被引用的方案才可以被删除。
通过在HWTACACS方案中配置HWTACACS认证服务器,指定设备对用户进行HWTACACS认证时与哪个服务器进行通信。若在HWTACACS方案中同时配置了主认证服务器和从认证服务器,则当设备判断主认证服务器不可达时,将使用从认证服务器进行认证。建议在不需要备份的情况下,只配置主HWTACACS认证服务器即可。
表1-35 配置HWTACACS认证服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入HWTACACS方案视图 |
hwtacacs scheme hwtacacs-scheme-name |
- |
配置主HWTACACS认证服务器 |
primary authentication ip-address [ port-number ] |
二者至少选其一 缺省情况下,未配置主/从认证服务器 |
配置从HWTACACS认证服务器 |
secondary authentication ip-address [ port-number ] |
· 在实际组网环境中,可以指定一台HWTACACS服务器既作为某个方案的主认证服务器,又作为另一个方案的从认证服务器。
· 主认证服务器和从认证服务器的IP地址不能相同,否则将提示配置不成功。
· 只有当没有活跃的用于发送认证报文的TCP连接使用该认证服务器时,才允许删除该服务器。
通过在HWTACACS方案中配置HWTACACS授权服务器,指定设备对用户进行HWTACACS授权时与哪个服务器进行通信。若在HWTACACS方案中同时配置了主授权服务器和从授权服务器,则当设备判断主授权服务器不可达时,将使用从授权服务器进行授权。建议在不需要备份的情况下,只配置主HWTACACS授权服务器即可。
表1-36 配置HWTACACS授权服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入HWTACACS方案视图 |
hwtacacs scheme hwtacacs-scheme-name |
- |
设置主HWTACACS授权服务器 |
primary authorization ip-address [ port-number ] |
二者至少选其一 缺省情况下,未配置主/从授权服务器 |
设置从HWTACACS授权服务器 |
secondary authorization ip-address [ port-number ] |
· 在实际组网环境中,可以指定一台HWTACACS服务器既作为某个方案的主授权服务器,又作为另一个方案的从授权服务器。
· 主授权服务器和从授权服务器的IP地址不能相同,否则将提示配置不成功。
· 只有当没有活跃的用于发送授权报文的TCP连接使用该授权服务器时,才允许删除该服务器。
通过在HWTACACS方案中配置HWTACACS计费服务器,指定设备对用户进行HWTACACS计费时与哪个服务器进行通信。若在HWTACACS方案中同时配置了主计费服务器和从计费服务器,则当设备判断主计费服务器不可达时,将使用从计费服务器进行授权。建议在不需要备份的情况下,只配置主HWTACACS计费服务器即可。
当用户请求断开连接或者设备强行切断用户连接的情况下,设备会向HWTACACS计费服务器发送停止计费请求报文,通过在设备上使能停止计费报文缓存功能,将其缓存在本机上,然后发送直到HWTACACS计费服务器产生响应,或者在发送停止计费请求报文的尝试次数达到指定的最大值后将其丢弃。
表1-37 配置HWTACACS计费服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入HWTACACS方案视图 |
hwtacacs scheme hwtacacs-scheme-name |
- |
设置HWTACACS主计费服务器 |
primary accounting ip-address [ port-number ] |
二者至少选其一 缺省情况下,未配置主/从计费服务器 |
设置HWTACACS从计费服务器 |
secondary accounting ip-address [ port-number ] |
|
使能停止计费报文缓存功能 |
stop-accounting-buffer enable |
可选 缺省情况下,使能停止计费报文缓存功能 |
设置允许发送停止计费请求报文的最大尝试次数 |
retry stop-accounting retry-times |
可选 缺省情况下,允许发送停止计费请求报文的最大尝试次数为100 |
· 在实际组网环境中,可以指定一台HWTACACS服务器既作为某个方案的主计费服务器,又作为另一个方案的从计费服务器。
· 主计费服务器和从计费服务器的IP地址不能相同,否则将提示配置不成功。
· 只有当没有活跃的用于发送计费报文的TCP连接使用该计费服务器时,才允许删除该服务器。
· 目前HWTACACS不支持对FTP用户进行计费。
HWTACACS客户端与HWTACACS服务器使用MD5算法来加密HWTACACS报文,并在共享密钥的参与下生成验证字来验证对方报文的合法性。只有在密钥一致的情况下,彼此才能接收对方发来的报文并作出响应。
表1-38 配置HWTACACS报文的共享密钥
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入HWTACACS方案视图 |
hwtacacs scheme hwtacacs-scheme-name |
- |
配置HWTACACS认证、授权、计费报文的共享密钥 |
key { accounting | authentication | authorization } [ cipher | simple ] key |
必选 缺省情况下,无密钥 |
必须保证设备上设置的共享密钥与HWTACACS服务器上的完全一致。
接入用户通常以“userid@isp-name”的格式命名,“@”后面的部分为ISP域名,设备通过该域名决定将用户归于哪个ISP域的。由于有些HWTACACS服务器不能接受携带有ISP域名的用户名,因此就需要设备首先将用户名中携带的ISP域名去除后再传送给该类HWTACACS服务器。通过设置发送给HWTACACS服务器的用户名格式,就可以选择发送HWTACACS服务器的用户名中是否要携带ISP域名。
设备通过周期性地发送计费更新报文,向HWTACACS服务器报告在线用户的数据流量统计值,该值的单位可配,为保证HWTACACS服务器计费的准确性,设备上设置的发送给HWTACACS服务器的数据流或者数据包的单位应与HWTACACS服务器上的流量统计单位保持一致。
表1-39 配置发送给HWTACACS服务器的数据相关属性
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入HWTACACS方案视图 |
hwtacacs scheme hwtacacs-scheme-name |
- |
设置发送给HWTACACS服务器的用户名格式 |
user-name-format { keep-original | with-domain | without-domain } |
可选 缺省情况下,发往HWTACACS服务器的用户名带域名 |
设置发送给HWTACACS服务器的数据流或者数据包的单位 |
data-flow-format { data { byte | giga-byte | kilo-byte | mega-byte } | packet { giga-packet | kilo-packet | mega-packet | one-packet } } * |
可选 缺省情况下,数据流的单位为byte,数据包的单位为one-packet |
· 如果HWTACACS服务器不接受带域名的用户名,可以配置将用户名的域名去除后再传送给HWTACACS服务器。
· 对于级别切换认证,命令user-name-format keep-original与user-name-format without-domain的效果一样,发送给HWTACACS服务器的用户名都不携带ISP域名。
HWTACACS服务器上通过IP地址来标识接入设备,并根据收到的HWTACACS报文的源IP地址是否与服务器所管理的接入设备的IP地址匹配,来决定是否处理来自该接入设备的认证或计费请求。若HWTACACS服务器收到的HWTACACS认证或计费报文的源地址在所管理的接入设备IP地址范围内,则才会进行后续的认证或计费处理,否则直接对其做丢弃处理。因此,为保证认证和计费报文可被服务器正常接收并处理,接入设备上发送HWTACACS报文使用的源地址必须与HWTACACS服务器上指定的接入设备的IP地址保持一致。
通常,该地址为接入设备上与HWTACACS服务器路由可达的接口IP地址,但在一些特殊的组网环境中,例如接入设备与HWTACACS服务器之间存在NAT设备时,需要将该地址指定为转换后的公网IP地址;在接入设备使用VRRP进行双机热备应用时,可以将该地址指定为VRRP上行链路所在备份组的虚拟IP地址。
设备发送HWTACACS报文时,首先判断当前所使用的HWTACACS方案中是否通过nas-ip命令配置了发送HWTACACS报文使用源地址,若配置存在,则使用该地址作为发送HWTACACS报文使用的源地址,否则,根据当前使用的服务器所属的VPN查找系统视图下通过hwtacacs nas-ip命令配置的私网源地址,对于公网服务器则直接查找该命令配置的公网源地址。若系统视图下配置了相应的源地址,则使用该地址作为发送HWTACACS报文使用的源地址,否则,使用通过路由查找到的报文出接口地址作为发送HWTACACS报文使用的源地址。
此配置可以在系统视图和HWTACACS方案视图下进行,系统视图下的配置将对所有HWTACACS方案生效,HWTACACS方案视图下的配置仅对本方案有效,并且具有高于前者的优先级。
表1-40 为所有HWTACACS方案配置发送HWTACACS报文使用的源地址
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
设置设备发送HWTACACS报文使用的源地址 |
hwtacacs nas-ip ip-address |
必选 缺省情况下,未指定源地址,即以发送报文的接口地址作为源地址 |
表1-41 为HWTACACS方案配置发送HWTACACS报文使用的源地址
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入HWTACACS方案视图 |
hwtacacs scheme hwtacacs-scheme-name |
- |
设置设备发送HWTACACS报文使用的源地址 |
nas-ip ip-address |
必选 缺省情况下,未指定源地址,即以发送报文的接口地址作为源地址 |
在与HWTACACS服务器交互的过程中,设备上可启动的定时器包括以下几种:
· 服务器响应超时定时器(response-timeout):如果在HWTACACS请求报文(认证/授权请求或计费请求)传送出去一段时间后,设备还没有得到HWTACACS服务器的响应,则有必要重传HWTACACS请求报文,以保证用户确实能够得到HWTACACS服务,这段时间被称为HWTACACS服务器响应超时时长。
· 主服务器恢复激活状态定时器(quiet):当主服务器不可达时,状态变为block,设备会与状态为active的从服务器交互,并开启超时定时器,在设定的一定时间间隔之后,将主服务器的状态恢复为active。这段时间被称为主服务器恢复激活状态时长。
· 实时计费间隔定时器(realtime-accounting):为了对用户实施实时计费,有必要定期向服务器发送用户的实时计费信息,通过设置实时计费的时间间隔,设备会每隔设定的时间向HWTACACS服务器发送一次在线用户的计费信息。如果服务器对实时计费报文没有正常响应,设备也不会强制切断在线用户。
表1-42 配置HWTACACS服务器的定时器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入HWTACACS方案视图 |
hwtacacs scheme hwtacacs-scheme-name |
- |
设置HWTACACS服务器响应超时时间 |
timer response-timeout seconds |
可选 缺省情况下,服务器响应超时时间为5秒 |
设置主服务器恢复激活状态的时间 |
timer quiet minutes |
可选 缺省情况下,主服务器恢复激活状态前需要等待5分钟 |
设置实时计费的时间间隔 |
timer realtime-accounting minutes |
可选 缺省情况下,实时计费间隔为12分钟 |
实时计费间隔的取值对设备和HWTACACS服务器的性能有一定的相关性要求,取值越小,对设备和HWTACACS服务器的性能要求越高。
完成上述配置后,在任意视图下执行display命令可以显示配置后HWTACACS的运行情况,通过查看显示信息验证配置的效果。
在用户视图下,执行reset命令可以清除相关统计信息。
表1-43 HWTACACS协议显示和维护
操作 |
命令 |
查看所有或指定HWTACACS方案的配置信息或统计信息 |
display hwtacacs [ hwtacacs-server-name [ statistics ] ] [ | { begin | exclude | include } regular-expression ] |
显示缓存的没有得到响应的停止计费请求报文 |
display stop-accounting-buffer hwtacacs-scheme hwtacacs-scheme-name [ | { begin | exclude | include } regular-expression ] |
清除HWTACACS协议的统计信息 |
reset hwtacacs statistics { accounting | all | authentication | authorization } |
清除缓存中的没有得到响应的停止计费请求报文 |
reset stop-accounting-buffer hwtacacs-scheme hwtacacs-scheme-name |
配置LDAP方案的支持情况与设备的型号有关,请参见“配置指导导读”中的“特性差异情况”部分的介绍。
表1-44 LDAP配置任务简介
配置任务 |
说明 |
详细配置 |
创建LDAP方案 |
必选 |
|
配置LDAP认证服务器 |
必选 |
|
配置LDAP授权服务器 |
可选 |
|
配置LDAP版本号 |
可选 |
|
配置LDAP服务器类型 |
可选 |
|
配置LDAP服务器的连接超时时间 |
可选 |
|
配置具有管理员权限的用户属性 |
必选 |
|
配置LDAP用户属性参数 |
必选 |
|
配置LDAP组属性参数 |
可选 |
|
LDAP显示和维护 |
可选 |
在进行LDAP的其它配置之前,必须先创建LDAP方案并进入其视图。
表1-45 创建LDAP方案
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建LDAP方案并进入其视图 |
ldap scheme ldap-scheme-name |
必选 缺省情况下,未定义LDAP方案 |
· 一个LDAP方案可以同时被多个ISP域引用。
· 系统最多支持配置16个LDAP方案。只有未被引用的方案才可以被删除。
表1-46 配置LDAP认证服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入LDAP方案视图 |
ldap scheme ldap-scheme-name |
- |
配置LDAP认证服务器 |
authentication-server ip-address [ port-number ] |
必选 缺省情况下,未配置LDAP认证服务器 |
更改后的认证服务器IP地址和端口号,不影响已经进行的LDAP认证,只对更改之后发起的LDAP认证生效。
表1-47 配置LDAP授权服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入LDAP方案视图 |
ldap scheme ldap-scheme-name |
- |
配置LDAP授权服务器 |
authorization-server ip-address [ port-number ] |
必选 缺省情况下,未配置LDAP授权服务器 |
更改后的授权服务器IP地址和端口号,不影响已经进行的LDAP认证,只对更改之后发起的LDAP授权生效。
配置LDAP认证中所支持的LDAP协议的版本号,目前设备支持LDAPv2和LDAPv3两个协议版本。设备上配置的LDAP版本号需要与服务器支持的版本号保持一致。
表1-48 配置LDAP版本号
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入LDAP方案视图 |
ldap scheme ldap-scheme-name |
- |
配置LDAP版本号 |
protocol-version { v2 | v3 } |
可选 缺省情况下,LDAP版本号为LDAPv3 |
Microsoft的LDAP服务器只支持LDAPv3。
配置LDAP认证中所使用的LDAP服务器类型,目前设备支持IBM、Microsoft和Sun公司的LDAP服务器。
表1-49 配置LDAP服务器类型
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入LDAP方案视图 |
ldap scheme ldap-scheme-name |
- |
配置LDAP服务器类型 |
server-type { ibm | microsoft | sun } |
可选 缺省情况下,LDAP服务器类型为Microsoft |
设备向LDAP服务器发送绑定请求、查询请求,如果经过指定的时间后未收到LDAP服务器的回应,则认为本次认证、授权请求超时。若设备上配置了备份的认证、授权方案,则设备会继续尝试进行其他方式的认证、授权处理,否则本次认证、授权失败。
表1-50 配置LDAP服务器的连接超时时间
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入LDAP方案视图 |
ldap scheme ldap-scheme-name |
- |
配置LDAP服务器的连接超时时间 |
server-timeout time-interval |
可选 缺省情况下,LDAP服务器的连接超时时间为10秒 |
配置LDAP认证过程中绑定服务器所使用的用户DN和用户密码,该用户具有管理员权限。
表1-51 配置具有管理员权限的用户属性
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入LDAP方案视图 |
ldap scheme ldap-scheme-name |
- |
配置具有管理员权限的用户DN |
login-dn dn-string |
必选 缺省情况下,未配置具有管理员权限的用户DN |
配置具有管理员权限的用户密码 |
login-password [ ciper | simple ] password |
必选 缺省情况下,未配置具有管理权限的用户密码 |
设备上的管理员DN必须与LDAP服务器上管理员的DN一致。
要对用户进行身份认证,就需要以用户DN及密码为参数与LDAP服务器进行绑定,因此需要首先获取用户DN。LDAP提供了一套DN查询机制,在与LDAP服务器建立连接的基础上,按照一定的查询策略向服务器发送查询请求。该查询策略由设备上指定的LDAP用户属性定义,具体包括以下几项:
· 用户DN查询的起始节点(search-base-dn)
· 用户DN查询的范围(search-scope)
· 用户所在组属性(user-group-attribute)
· 用户名称属性(user-name-attribute)
· 用户名称格式(user-name-format)
· 用户对象类型(user-object-class)
其中,若LDAP服务器上定义了用户所在组属性,则设备上的配置要与LDAP服务器上定义的属性值保持一致。
表1-52 配置LDAP用户属性参数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入LDAP方案视图 |
ldap scheme ldap-scheme-name |
- |
配置用户查询的起始DN |
user-parameters search-base-dn base-dn |
必选 缺省情况下,未指定用户查询的起始DN |
配置用户查询的范围 |
user-parameters search-scope { all-level | single-level } |
可选 缺省情况下,用户查询的范围为all-level |
配置用户查询返回的自定义用户组属性 |
user-parameters user-group-attribute attribute-name |
可选 缺省情况下,未指定自定义用户组属性,采用LDAP服务器上定义的缺省用户组属性 |
配置用户查询的用户名属性 |
user-parameters user-name-attribute { name-attribute | cn | uid } |
可选 缺省情况下,用户查询的用户名属性为cn |
配置用户查询的用户名格式 |
user-parameters user-name-format { with-domain | without-domain } |
可选 缺省情况下,用户查询的用户名格式为without-domain |
配置用户查询的自定义用户对象类型 |
user-parameters user-object-class object-class-name |
可选 缺省情况下,未指定自定义用户对象类型,根据使用的LDAP服务器的类型使用各服务器缺省的用户对象类型 |
· LDAP服务器上的目录结构可能具有很深的层次,如果从根目录进行用户DN的查找,耗费的时间将会较长,因此有必要对查找的起始点search-base-dn进行配置,以提高查找效率。
· 如果LDAP服务器上的用户名不包含域名,必须配置user-name-format为without-domain,将用户名的域名去除后再传送给LDAP服务器;如果包含域名则须配置user-name-format为with-domain。
· Microsoft类型的LDAP服务器上定义了缺省的用户组属性(属性名为memberOf),IBM和Sun类型的LDAP服务器上未定义缺省的用户组属性,但可以通过修改LDAP服务器上的schema配置用户组属性。因此,若使用Microsoft类型的LDAP服务器,则是通过查询用户DN来获得用户所在的组;若使用IBM和Sun类型的LDAP服务器,且未配置自定义的用户组属性,则使用查询组中是否含有用户DN的方法来获得用户所在组,具体配置请参见“1.3.4 10. 配置LDAP组属性参数”。
用户的授权处理是通过查询用户组,从而获得授权信息来实现的。在用户组的查询中,需要指定相应的查询方式及查询条件,即配置相关LDAP组属性参数。由于Microsoft服务器的用户对象类型(user-object-class)中已经包含了用户组属性,所以组属性参数的配置对Microsoft服务器不是必须的,但对于IBM和Sun服务器则是必须的。
可配置的LDAP组属性参数包括:
· 组名称属性类型(group-name-attribute)
· 组对象类型(group-object-class)
· 组成员属性(member-name-attribute)
· 用户组查询起始节点(search-base-dn)
· 用户组查询范围(search-scope)
其中,对于组对象类型和组成员属性,一般情况下系统使用服务器厂商定义的缺省属性值,若厂商未定义缺省值或用户需要使用自定义的值,则可以通过命令行进行配置。
表1-53 配置LDAP组属性参数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入LDAP方案视图 |
ldap scheme ldap-scheme-name |
- |
配置组查询的起始DN |
group-parameters search-base-dn base-dn |
必选 缺省情况下,未指定组查询的起始DN |
配置组查询的范围 |
group-parameters search-scope { all-level | single-level } |
可选 缺省情况下,组查询的范围为all-level |
配置组查询的自定义组对象类型 |
group-parameters group-object-class object-class-name |
可选 缺省情况下,未指定自定义组对象类型 |
配置组查询的自定义组成员属性 |
group-parameters member-name-attribute attribute-name |
可选 缺省情况下,未指定自定义组成员属性 |
配置组查询返回的组名属性 |
group-parameters group-name-attribute { name-attribute | cn | uid } |
可选 缺省情况下,组查询返回的组名属性为cn |
· LDAP服务器上的目录结构可能具有很深的层次,如果从根目录进行用户组DN的查找,耗费的时间将会较长,因此有必要对查找的起始点search-base-dn进行配置,以提高查找效率。
· 各厂商对缺省组对象类型和组成员类型的支持情况不同,只有IBM和Sun的服务器支持缺省的组对象类型和组成员类型,Microsoft服务器的此属性无缺省配置。
完成上述配置后,在任意视图下执行display命令可以显示配置后LDAP的运行情况,通过查看显示信息验证配置的效果。
表1-54 LDAP协议显示和维护
操作 |
命令 |
查看所有或指定LDAP方案的配置信息 |
display ldap scheme [ scheme-name ] [ | { begin | exclude | include } regular-expression ] |
通过在ISP域视图下引用预先配置的认证、授权、计费方案来实现对用户的认证、授权和计费。每个ISP域中都有缺省的认证、授权、计费方法,分别为本地认证、本地授权、本地计费,如果用户所属的ISP域下未应用任何认证、授权、计费方法,系统将使用缺省的认证、授权、计费方法。
· 若采用本地认证方案,则请保证完成本地用户的配置。有关本地用户的配置请参见“1.3.1 配置本地用户”。
· 若采用远端认证、授权或计费方案,则请提前创建RADIUS方案、HWTACACS方案或LDAP方案。有关RADIUS方案的配置请参见“1.3.2 配置RADIUS方案”。有关HWTACACS方案的配置请参见“1.3.3 配置HWTACACS方案”。有关LDAP方案的配置请参见“1.3.4 配置LDAP方案”。
在多ISP的应用环境中,不同ISP域的用户有可能接入同一台设备。而且各ISP用户的用户属性(例如用户名及密码构成、服务类型/权限等)有可能不相同,因此有必要通过设置ISP域把它们区分开,并为每个ISP域单独配置一套AAA方法及ISP域的相关属性。
对于设备来说,每个接入用户都属于一个ISP域。系统中最多可以配置16个ISP域,包括一个系统缺省存在的名称为system的ISP域。如果某个用户在登录时没有提供ISP域名,系统将把它归于缺省的ISP域。
设备将按照如下先后顺序选择认证域:接入模块指定的认证域-->用户名中指定的ISP域-->系统缺省的ISP域。其中,仅部分接入模块支持指定认证域,例如802.1X、Portal、MAC地址认证。
如果根据以上原则决定的认证域在设备上不存在,但设备上为未知域名的用户指定了ISP域,则最终使用该指定的ISP域认证,否则,用户将无法认证。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建ISP域并进入其视图 |
domain isp-name |
必选 |
返回系统视图 |
quit |
- |
手工配置缺省的ISP域 |
domain default enable isp-name |
可选 缺省情况下,系统缺省的ISP域为system |
为未知域名的用户指定ISP域 |
domain if-unknown isp-name |
可选 缺省情况下,没有为未知域名的用户指定ISP域 |
· 配置为缺省的ISP域不能够被删除,除非首先使用命令undo domain default enable将其修改为非缺省ISP域。
· 从指定接口上接入的用户将按照先后顺序选择认证域:接口上配置的强制ISP域->用户名中指定的ISP域->系统缺省的ISP域。对于不支持或未指定强制ISP域的用户,若登录时输入的用户名未携带ISP域名,则使用缺省ISP域下的认证方案。
表1-56 配置ISP域的属性
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入ISP域视图 |
domain isp-name |
- |
设置ISP域的状态 |
state { active | block } |
可选 缺省情况下,当一个ISP域被创建以后,其状态为active,即允许任何属于该域的用户请求网络服务 |
设置当前ISP域可容纳接入用户数的限制 |
access-limit enable max-user-number |
可选 缺省情况下,不对当前ISP域可容纳的接入用户数作限制 |
设置用户闲置切断功能 |
idle-cut enable minute [ flow ] |
可选 缺省情况下,用户闲置切断功能处于关闭状态 此命令目前只对lan-access、Portal和PPP服务类型的用户有效 在Portal双机热备情况下,闲置检测时间建议配置为5分钟以上,以确保已经上线的Portal用户数据进行了相互备份 |
设置自助服务器定位功能 |
self-service-url enable url-string |
可选 缺省情况下,自助服务器定位功能处于关闭状态 |
定义为PPP用户分配IP地址的地址池 |
ip pool pool-number low-ip-address [ high-ip-address ] |
可选 缺省情况下,没有定义为PPP用户分配IP地址的IP地址池 |
配置当前ISP域的缺省授权User Profile |
authorization-attribute user-profile profile-name |
可选 缺省情况下,当前ISP域无缺省授权User Profile |
配置设备上传到服务器的用户在线时间中保留闲置切断时间 |
session-time include-idle-time |
可选 缺省情况下,设备上传到服务器的用户在线时间中扣除闲置切换时间 |
· 如果当前ISP域的用户认证成功,但认证服务器(包括本地认证下的接入设备)未对该ISP域下发授权User Profile,则系统会将当前ISP域的缺省User Profile下发给该域用户,当用户通过认证上线后,其访问行为将受到User Profile中预设配置的限制。关于User Profile的详细介绍请参见“安全配置指导”中的“User Profile配置”。
· 自助服务器定位功能需要与支持自助服务的RADIUS服务器配合使用,如CAMS/iMC。
在AAA中,认证、授权和计费是三个独立的业务流程。认证的职责是完成各接入或服务请求的用户名/密码/用户信息的交互认证过程,它不会下发授权信息给请求用户,也不会触动计费的流程。
AAA支持以下认证方法:
· 不认证(none):对用户非常信任,不对其进行合法性检查,一般情况下不采用这种方法。
· 本地认证(local):认证过程在接入设备上完成,用户信息(包括用户名、密码和各种属性)配置在接入设备上。优点是速度快,可以降低运营成本;缺点是存储信息量受设备硬件条件限制。
· 远端认证(scheme):认证过程在接入设备和远端的服务器之间完成,接入设备和远端服务器之间通过RADIUS、HWTACACS或LDAP协议通信。优点是用户信息集中在服务器上统一管理,可实现大容量、高可靠性、支持多设备的集中式统一认证。当远端服务器无效时,可配置本地认证或者不认证作为备选认证方式完成认证。目前,仅lan-access用户的远端认证可支持不认证作为备选认证方法。
在AAA中,可以只使用认证,而不使用授权或计费。如果用户没有进行任何配置,则ISP域的缺省认证方法为local。
配置前的准备工作:
(1) 如果用户使用RADIUS、HWTACACS或LDAP认证,则需要先配置要引用的RADIUS、HWTACACS或LDAP方案;如果使用local或none认证,则不需要配置方案。
(2) 确定要配置的接入方式或者服务类型。AAA可以对不同的接入方式和服务类型配置不同的认证方案,并且从配置上限制了用户接入时使用的认证协议。
(3) 确定是否为所有的接入方式或服务类型配置认证方法。
表1-57 配置ISP域的AAA认证方法
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入ISP域视图 |
domain isp-name |
- |
为当前ISP域配置缺省的认证方法 |
authentication default { hwtacacs-scheme hwtacacs-scheme-name [ local ] | ldap-scheme ldap-scheme-name [ local ] | local | none | radius-scheme radius-scheme-name [ local ] } |
可选 缺省情况下,当前ISP域的缺省认证方法为local |
为lan-access用户配置认证方法 |
authentication lan-access { local | none | radius-scheme radius-scheme-name [ local | none ] } |
可选 缺省情况下,lan-access用户采用缺省的认证方法 |
为login用户配置认证方法 |
authentication login { hwtacacs-scheme hwtacacs-scheme-name [ local ] | local | ldap-scheme ldap-scheme-name [ local ] | none | radius-scheme radius-scheme-name [ local ] } |
可选 缺省情况下,login用户采用缺省的认证方法 |
为Portal用户配置认证方法 |
authentication portal { ldap-scheme ldap-scheme-name [ local ] | local | none | radius-scheme radius-scheme-name [ local ] } |
可选 缺省情况下,Portal用户采用缺省的认证方法 |
为PPP用户配置认证方法 |
authentication ppp { hwtacacs-scheme hwtacacs-scheme-name [ local ] | local | none | radius-scheme radius-scheme-name [ local ] } |
可选 缺省情况下,PPP用户采用缺省的认证方法 本特性的支持情况与设备的型号有关,请参见“配置指导导读”中的“特性差异情况”部分的介绍。 |
配置级别切换认证方法 |
authentication super { hwtacacs-scheme hwtacacs-scheme-name | radius-scheme radius-scheme-name } |
可选 缺省情况下,级别切换认证采用缺省的认证方法 |
为WAPI用户配置认证方法 |
authentication wapi { none | radius-scheme radius-scheme-name } |
可选 缺省情况下,WAPI用户采用缺省的认证方法 本特性的支持情况与设备的型号有关,请参见“配置指导导读”中的“特性差异情况”部分的介绍。 |
· authentication default命令配置的认证方法不区分用户类型,即对所有类型的用户都起作用。此配置的优先级低于具体接入方式的配置。
· 当选择RADIUS认证方案时,AAA只接受RADIUS服务器的认证结果,RADIUS授权的信息虽然在认证成功回应的报文中携带,但在认证回应的处理流程中不会被处理。
· 如果配置AAA认证方法时指定了参数radius-scheme radius-scheme-name local、hwtacacs-scheme hwtacacs-scheme-name local或ldap-scheme ldap-scheme-name local,则local为远端服务器没有正常响应后的备选认证方法。
· 如果local或者none作为第一认证方法,那么只能采用本地认证或者不进行认证,不能同时采用远程认证方法。
· 当使用HWTACACS方案进行级别切换认证时,系统默认使用登录用户名进行用户级别切换认证;当使用RADIUS方案进行级别切换认证时,系统使用RADIUS服务器上配置的“$enab+level$”形式的用户名替换登录用户名进行用户级别切换认证,其中level为用户希望切换到的级别。例如,用户希望切换到级别3,输入的用户名为“user1”,在要求携带域名认证的情况下,系统使用用户名“$enab3@domain_name$”进行用户级别切换认证,否则使用“$enab3$”进行用户级别切换认证。
在AAA中,授权是一个和认证、计费同级别的独立流程,其职责是发送授权请求给所配置的授权服务器,授权通过后向用户下发授权信息。在ISP域的AAA配置中,授权方法为可选配置。
AAA支持以下授权方法:
· 不授权(none):接入设备不请求授权信息,不对用户可以使用的操作以及用户允许使用的网络服务进行授权。此时,认证通过的Login用户(通过Console/aux或者Telnet、FTP访问设备的用户)只有系统所给予的0级别的命令行访问权限,其中FTP用户可访问设备的根目录;认证通过的非Login用户,可直接访问网络。
· 本地授权(local):授权过程在接入设备上进行,根据接入设备上为本地用户配置的相关属性进行授权。
· 远端授权(scheme):授权过程在接入设备和远端服务器之间完成。RADIUS协议的认证和授权是绑定在一起的,不能单独使用RADIUS进行授权。RADIUS认证成功后,才能进行授权,RADIUS授权信息携带在认证回应报文中下发给用户。HWTACACS和LDAP协议的授权与认证相分离,在认证成功后,HWTACACS授权信息通过授权报文进行交互。当远端服务器无效时,可配置本地授权或直接授权作为备选授权方式完成授权。
如果用户没有进行任何配置,则ISP域的缺省授权方法为local。
配置前的准备工作:
(1) 如果用户要使用HWTACACS或LDAP授权,则需要先配置要引用的HWTACACS或LDAP方案;如果是RADIUS授权,只有在认证和授权方法中引用相同的RADIUS方案,授权才起作用。
(2) 确定要配置的接入方式或者服务类型,AAA可以按照不同的接入方式和服务类型进行AAA授权的配置,并且从配置上正确限制了接入所能使用的授权协议。
(3) 确定是否为所有的接入方式或服务类型配置授权方法。
表1-58 配置ISP域的AAA授权方法
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入ISP域视图 |
domain isp-name |
- |
为当前ISP域配置缺省的授权方法 |
authorization default { hwtacacs-scheme hwtacacs-scheme-name [ local ] | local | ldap-scheme ldap-scheme-name [ local ] | none | radius-scheme radius-scheme-name [ local ] } |
可选 缺省情况下,当前ISP域的缺省授权方法为local |
配置命令行授权方法 |
authorization command { hwtacacs-scheme hwtacacs-scheme-name [ local | none ] | local | none } |
可选 缺省情况下,命令行授权采用缺省的授权方法 |
为lan-access用户配置授权方法 |
authorization lan-access { local | none | radius-scheme radius-scheme-name [ local | none ] } |
可选 缺省情况下,lan-access用户采用缺省的授权方法 |
为login用户配置授权方法 |
authorization login { hwtacacs-scheme hwtacacs-scheme-name [ local ] | local | ldap-scheme ldap-scheme-name [ local ] | none | radius-scheme radius-scheme-name [ local ] } |
可选 缺省情况下,login用户采用缺省的授权方法 |
为Portal用户配置授权方法 |
authorization portal { local | none | radius-scheme radius-scheme-name [ local ] } |
可选 缺省情况下,Portal用户采用缺省的授权方法 |
为PPP用户配置授权方法 |
authorization ppp { hwtacacs-scheme hwtacacs-scheme-name [ local ] | local | none | radius-scheme radius-scheme-name [ local ] } |
可选 缺省情况下,PPP用户采用缺省的授权方法 本特性的支持情况与设备的型号有关,请参见“配置指导导读”中的“特性差异情况”部分的介绍。 |
为WAPI用户配置授权方法 |
authorization wapi { none | radius-scheme radius-scheme-name } |
可选 缺省情况下,WAPI用户采用缺省的授权方法 本特性的支持情况与设备的型号有关,请参见“配置指导导读”中的“特性差异情况”部分的介绍。 |
· authorization default命令配置的授权方法不区分用户类型,即对所有类型的用户都起作用。此配置的优先级低于具体接入方式的配置。
· 在一个ISP域中,只有RADIUS授权方法和RADIUS认证方法引用了相同的RADIUS方案,RADIUS授权才能生效。若RADIUS授权未生效或者RADIUS授权失败,则用户认证会失败。对于所有RADIUS授权失败的情况,RADIUS服务器返回给NAS的原因为服务器没有响应。
· 如果配置AAA授权方法时指定了参数radius-scheme radius-scheme-name local、hwtacacs-scheme hwtacacs-scheme-name [ local | none ]或ldap-scheme ldap-scheme-name local,则local或none为远端服务器没有正常响应后的备选授权方法。
· local或者none作为第一授权方法时,没有备选授权方式,只能采用本地授权或者直接授权。
在AAA中,计费是一个和认证、授权同级别的独立流程,其职责为发送计费开始/更新/结束请求给所配置的计费服务器。计费不是必须使用的。在ISP域的AAA配置中,允许不配置计费方法。如果不配置计费方法,则ISP域的缺省计费方法为local。
AAA支持以下计费方法:
· 不计费(none):不对用户计费。
· 本地计费(local):计费过程在接入设备上完成,实现了本地用户连接数的统计和限制,并没有实际的费用统计功能。本地计费仅用于配合本地用户视图下的access-limit命令来实现对本地用户连接数的限制功能。
· 远端计费(scheme):计费过程在接入设备和远端的服务器之间完成。当远端服务器无效时,可配置本地计费或不计费作为备选计费方式完成计费。
配置前的准备工作:
(1) 如果用户要使用RADIUS或HWTACACS计费,则需要先配置要引用的RADIUS方案或HWTACACS方案;如果要使用local或none计费,则不需要配置方案。
(2) 确定要配置的接入方式或者服务类型,AAA可以支持为按照不同的接入方式和服务类型进行AAA计费的配置,并且从配置上正确限制了接入所能使用的计费协议。
(3) 确定是否为所有的接入方式或服务类型配置计费方法。
表1-59 配置ISP域的AAA计费方法
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入ISP域视图 |
domain isp-name |
- |
打开计费可选开关 |
accounting optional |
可选 缺省情况下,ISP域的计费可选开关处于关闭状态 对用户进行计费时,若发现没有可用的计费服务器或与计费服务器通信失败,在计费开关打开的情况下,用户可继续使用网络资源,否则用户会被强制下线 |
为当前ISP域配置缺省的计费方法 |
accounting default { hwtacacs-scheme hwtacacs-scheme-name [ local ] | local | none | radius-scheme radius-scheme-name [ local ] } |
可选 缺省情况下,当前ISP域的缺省计费方法为local |
配置命令行计费方法 |
accounting command hwtacacs-scheme hwtacacs-scheme-name |
可选 缺省情况下,命令行计费采用缺省的计费方法 |
为lan-access用户配置计费方法 |
accounting lan-access { local | none | radius-scheme radius-scheme-name [ local | none ] } |
可选 缺省情况下,lan-access用户采用缺省的计费方法 |
为login用户配置计费方法 |
accounting login { hwtacacs-scheme hwtacacs-scheme-name [ local ] | local | none | radius-scheme radius-scheme-name [ local ] } |
可选 缺省情况下,login用户采用缺省的计费方法 |
为Portal用户配置计费方法 |
accounting portal { local | none | radius-scheme radius-scheme-name [ local ] } |
可选 缺省情况下,Portal用户采用缺省的计费方法 |
为PPP用户配置计费方法 |
accounting ppp { hwtacacs-scheme hwtacacs-scheme-name [ local ] | local | none | radius-scheme radius-scheme-name [ local ] } |
可选 缺省情况下,PPP用户采用缺省的计费方法 本特性的支持情况与设备的型号有关,请参见“配置指导导读”中的“特性差异情况”部分的介绍。 |
为WAPI用户配置计费方法 |
accounting wapi { none | radius-scheme radius-scheme-name } |
可选 缺省情况下,WAPI用户采用缺省的计费方法 本特性的支持情况与设备的型号有关,请参见“配置指导导读”中的“特性差异情况”部分的介绍。 |
· 在计费可选开关打开的情况下,本地用户的连接数限制功能不生效。
· accounting default命令配置的计费方法不区分用户类型,即对所有类型的用户都起作用。此配置的优先级低于具体接入方式的配置。
· 如果配置AAA计费方法时指定了参数radius-scheme radius-scheme-name local或hwtacacs-scheme hwtacacs-scheme-name local,则local为远端服务器没有正常响应后的备选计费方法。
· 如果local或者none作为第一计费方法,那么只能采用本地认证或者不进行计费,不能同时采用远程计费方法。
· login类型的接入中FTP方式不支持计费流程。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
强制切断指定AAA用户的连接 |
cut connection { access-type { dot1x | mac-authentication | portal } | all | domain isp-name | interface interface-type interface-number | ip ip-address | mac mac-address | ucibindex ucib-index | user-name user-name | vlan vlan-id } |
必选 此命令目前只对lan-access、Portal和PPP服务类型的用户有效 |
802.1X协议用来对接入用户进行认证,它使用EAP(Extensible Authentication Protocol,可扩展认证协议)协议完成客户端与接入设备之间的认证交互。在一些简单的应用环境下,用户不希望或者未部署AAA服务器来进行EAP认证,而是希望直接采用接入设备来进行本地EAP认证。在这种组网需求下,就要求接入设备来充当EAP认证服务器的角色。
另外,当远程RADIUS服务器不支持EAP认证时,本地EAP认证服务器还可以协助实现RADIUS的Offload功能,关于该功能的详细介绍请参见“1.3.2 15. 使能RADIUS Offload功能”。
本地EAP认证过程中对用户身份的验证可采用两种方式:查询本地数据库和查询LDAP数据库。缺省情况下,系统默认采用本地用户数据库来验证用户身份。本地数据库是在接入设备上通过配置本地用户生成并保存的;LDAP数据库在远程LDAP服务器上生成并维护。本地用户数据库受设备硬件资源的限制不能保存数量过多的用户信息,且在多接入设备的组网环境中不易进行用户信息的统一管理。因此,在具备LDAP服务器资源的情况下,利用独立的LDAP数据库验证用户身份则是一种更为合适的配置方式。
接入设备需要通过以下配置步骤来实现对接入用户的本地EAP认证:
(1) 配置本地EAP认证服务器,具体配置请参考“配置本地EAP认证服务器”。
(2) 配置对lan-access用户采用Local认证方法(授权和计费可选,请根据实际情况配置),具体配置请参考“配置ISP域的AAA认证方法”。
(3) 根据采用的用户身份查询方式,选择以下配置:
· 若采用查询本地数据库的方式,则需配置本地用户,具体配置请参考“配置本地用户”。
· 若采用查询LDAP数据库的方式,则需配置LDAP方案,具体配置请参考“配置LDAP方案”。除此之外,还需要在所使用的LDAP服务器上添加用户帐户,详情请参考相关的LDAP服务器使用说明。
(4) 配置802.1X功能,具体配置请参考“安全配置指导”中的“802.1X”。
为使本地EAP认证服务器生效,必须完成以下配置:
(1) 配置EAP Profile
EAP Profile是一个本地EAP认证选项的配置集合,用于设置EAP认证方法、身份查询方式以及某些EAP认证方法需要引用的SSL服务器策略。
本地EAP认证支持的EAP认证方法包括以下几种:
· MD5质询认证
· PEAP-GTC(Protected Extensible Authentication Protocol-Microsoft Generic Token Card,受保护的扩展认证协议-通用令牌卡)
· PEAP-MSCHAPv2(Protected Extensible Authentication Protocol-Microsoft Challenge Handshake Authentication Protocol v2,受保护的扩展认证协议- Microsoft质询握手身份验证协议版本2)
· TLS(Transport Layer Security,传输层安全)。
目前,设备支持三种本地EAP认证的用户身份查询机制:local查询、LDAP查询和LDAP+local查询。其中,LDAP+local查询是指,在LDAP服务器不可达、指定的LDAP scheme不存在或者LDAP服务器不支持该查询方式时,接入设备转而进行本地查询。
(2) 在系统视图下指定本地认证服务器使用的EAP Profile
表1-61 配置本地EAP认证服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建EAP Profile,并进入EAP-Profile视图 |
eap-profile profile-name |
必选 |
设置EAP认证方法 |
method { md5 | peap-gtc | peap-mschapv2 | tls } |
必选 缺省情况下,未设置任何EAP认证方法 可通过多次执行本命令设置多个EAP认证方法,先设置的认证方法在本地EAP认证时优先选用 peap-gtc和peap-mschapv2两种认证方法不能同时配置 |
设置本地EAP认证的用户身份查询方式 |
user-credentials { ldap-scheme ldap-scheme-name [ local ] | local } |
可选 缺省情况下,使用本地用户数据库查询用户身份 |
设置用于EAP认证的SSL服务器端策略 |
ssl-server-policy policy-name |
仅当EAP认证方法为peap-gtc、peap-mschapv2或tls时,本配置必选 缺省情况下,未设置任何SSL服务器端策略 |
退回系统视图 |
quit |
- |
设置本地认证服务器使用的EAP Profile |
local-server authentication eap-profile profile-name |
必选 |
· 不能删除或修改已经被本地认证服务器引用的EAP profile。
· SSL服务器端策略的具体配置请参考“安全配置指导”中的“SSL”。
用户的接入VLAN可标识用户的接入位置,而在某些应用环境中,网络运营商需要使用接入设备发送给RADIUS服务器的NAS-Identifier属性值来标识用户的接入位置,因此接入设备上需要建立用户接入VLAN与指定的NAS-ID之间的绑定关系。这样,当用户上线时,设备会将与用户接入VLAN匹配的NAS-ID填充在RADIUS请求报文中的NAS-Identifier属性中发送给RADIUS服务器。
表1-62 配置NAS-ID与VLAN的绑定
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建NAS-ID Profile,并进入NAS-ID-Profile视图 |
aaa nas-id profile profile-name |
必选 本NAS-ID Profile将被使能Portal的接口进行引用,具体应用请参见“安全配置指导”中的“Portal配置” |
设置NAS-ID 与VLAN的绑定关系 |
nas-id nas-identifier bind vlan vlan-id |
必选 缺省情况下,未设置任何绑定关系 |
本特性的支持情况与设备的型号有关,请参见“配置指导导读”中的“特性差异情况”部分的介绍。
设备ID是设备工作在双机热备环境中的一个标志,为保证设备上的Portal业务备份可以正常工作,互为备份的两台设备上必须配置不同编号的设备ID。目前,设备ID的编号取值只能为1和2。关于Portal双机热备的详细介绍请参考“安全配置指导”中的“Portal”。
表1-63 配置双机热备模式下的设备ID
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置双机热备模式下的设备ID |
nas device-id device-id |
必选 缺省情况下,设备工作在单机模式下,无设备ID |
· 配置或改变设备ID后,设备上所有在线用户均会被强制下线。因此需慎重操作,并建议该配置成功执行后,保存配置并重启设备。
· 由于设备ID是设备运行在双机模式下的标志,因此单机运行的环境下不需要在设备上进行此配置。
完成上述配置后,在任意视图下执行display命令可以显示配置后AAA的运行情况,通过查看显示信息验证配置的效果。
表1-64 AAA显示和维护
操作 |
命令 |
显示所有或指定ISP域的配置信息 |
display domain [ isp-name ] [ | { begin | exclude | include } regular-expression ] |
显示AAA用户连接的相关信息 |
display connection [ access-type { dot1x | mac-authentication | portal } | domain isp-name | interface interface-type interface-number | ip ip-address | mac mac-address | ucibindex ucib-index | user-name user-name | vlan vlan-id ] [ | { begin | exclude | include } regular-expression ] |
· 通过配置无线控制器AC实现HWTACACS服务器对登录AC的用户进行认证和授权。
· 一台HWTACACS服务器(担当认证和授权服务器的职责)与AC相连,服务器IP地址为10.1.1.1/24。
· 设置AC与认证和授权HWTACACS服务器交互报文时的共享密钥均为expert,AC发送给HWTACACS服务器的用户名中不带域名。
· 在HWTACACS服务器上设置与AC交互报文时的共享密钥为expert。
图1-10 配置Telnet用户的远端HWTACACS认证、授权
# 配置各接口的IP地址(略)。
# 开启设备的Telnet服务器功能。
<AC> system-view
[AC] telnet server enable
# 配置Telnet用户登录采用AAA认证方式。
[AC] user-interface vty 0 4
[AC-ui-vty0-4] authentication-mode scheme
[AC-ui-vty0-4] quit
# 创建一个新的ISP域system,并设置为系统缺省的ISP域。
[AC] domain default enable system
# 创建HWTACACS方案hwtac。
[AC] hwtacacs scheme hwtac
# 配置主认证服务器的IP地址为10.1.1.1,认证端口号为49。
[AC-hwtacacs-hwtac] primary authentication 10.1.1.1 49
# 配置主授权服务器的IP地址为10.1.1.1,认证端口号为49。
[AC-hwtacacs-hwtac] primary authorization 10.1.1.1 49
# 配置与认证、授权服务器交互报文时的共享密钥均为expert。
[AC-hwtacacs-hwtac] key authentication expert
[AC-hwtacacs-hwtac] key authorization expert
# 配置向HWTACACS服务器发送的用户名不携带域名。
[AC-hwtacacs-hwtac] user-name-format without-domain
[AC-hwtacacs-hwtac] quit
# 配置ISP域的AAA方案。
[AC] domain system
[AC-isp-system] authentication login hwtacacs-scheme hwtac
[AC-isp-system] authorization login hwtacacs-scheme hwtac
[AC-isp-system] quit
# 或者不区分用户类型,配置缺省的AAA方案。
[AC] domain system
[AC-isp-system] authentication default hwtacacs-scheme hwtac
[AC-isp-system] authorization default hwtacacs-scheme hwtac
用户发起Telnet连接,在Telnet客户端按照提示输入正确的用户名和密码后,可成功进入AC的用户界面。在AC上可以通过通过命令display connection可以查看认证通过的用户信息。
· 通过配置无线控制器AC实现local认证,HWTACACS授权。Telnet用户的用户名和密码为telnet。
· 一台HWTACACS服务器(担当授权服务器的职责)与AC相连,服务器IP地址为10.1.1.2/24。设置AC与授权HWTACACS服务器交互报文时的共享密钥均为expert,AC发送给HWTACACS服务器的用户名中不带域名。
其他接入如果需要此类AAA应用,和Telnet在域的AAA配置上类似,只有接入的区分。
图1-11 配置Telnet用户的local认证,HWTACACS授权
配置各接口的IP地址(略)。
# 开启设备的Telnet服务器功能。
<AC> system-view
[AC] telnet server enable
# 配置Telnet用户登录采用AAA认证方式。
[AC] user-interface vty 0 4
[AC-ui-vty0-4] authentication-mode scheme
[AC-ui-vty0-4] quit
# 创建一个新的ISP域system,并设置为系统缺省的ISP域。
[AC] domain default enable system
# 创建HWTACACS方案 hwtac。
[AC] hwtacacs scheme hwtac
# 配置主认证服务器的IP地址为10.1.1.2,认证端口号为49。
[AC-hwtacacs-hwtac] primary authorization 10.1.1.2 49
# 配置与认证服务器交互报文时的共享密钥均为expert。
[AC-hwtacacs-hwtac] key authorization expert
# 配置向HWTACACS服务器发送的用户名不携带域名。
[AC-hwtacacs-hwtac] user-name-format without-domain
[AC-hwtacacs-hwtac] quit
# 创建本地用户telnet,登录密码为telnet。
[AC] local-user telnet
[AC-luser-telnet] service-type telnet
[AC-luser-telnet] password simple telnet
# 配置ISP域的AAA方案。
[AC] domain system
[AC-isp-system] authentication login local
[AC-isp-system] authorization login hwtacacs-scheme hwtac
[AC-isp-system] quit
# 或者不区分用户类型,配置缺省的AAA方案。
[AC] domain system
[AC-isp-system] authentication default local
[AC-isp-system] authorization default hwtacacs-scheme hwtac
用户发起Telnet连接,在Telnet客户端按照提示输入用户名telnet@system和正确的密码后,可成功进入AC的用户界面。在AC上可以通过display connection命令查看到AAA用户的连接信息。
· 配置无线控制器AC,实现RADIUS服务器对登录AC的无线802.1X用户进行认证、授权和计费。
· RADIUS服务器与AC路由可达,服务器IP地址为8.1.1.1/24。
· AC与认证服务器交互报文时的共享密钥为ACkey、与计费RADIUS服务器交互报文时的共享密钥为ACkey,发送给RADIUS服务器的用户名不带域名。
图1-12 无线用户的远端RADIUS认证、授权和计费
# 配置各接口的IP地址(略)。
# 开启全局的端口安全特性。
<AC> system-view
[AC] port-security enable
# 设置无线端口安全模式为userLoginSecureExt。
[AC] interface wlan-ess 1
[AC-WLAN-ESS1] port-security port-mode userlogin-secure-ext
# 使能端口的密钥协商功能。
[AC-WLAN-ESS1] port-security tx-key-type 11key
# 关闭802.1X多播触发功能。
[AC-WLAN-ESS1] undo dot1x multicast-trigger
# 关闭802.1X的在线用户握手功能。
[AC-WLAN-ESS1] undo dot1x handshake
# 配置接口的强制认证域为test。(所有从该接口接入的802.1X用户将被强制使用该认证域来进行认证、授权和计费。该配置不是必须的,可根据实际组网情况选配)
[AC-WLAN-ESS1] dot1x mandatory-domain test
[AC-WLAN-ESS1] quit
# 配置WLAN的服务模板
[AC] wlan service-template 1 crypto
[AC-wlan-st-1] ssid sectest
[AC-wlan-st-1] bind WLAN-ESS 1
[AC-wlan-st-1] authentication-method open-system
[AC-wlan-st-1] cipher-suite tkip
[AC-wlan-st-1] security-ie wpa
[AC-wlan-st-1] service-template enable
# 配置无线dot1x 用户的认证方式
[AC] dot1x authentication-method eap
# 配置RADIUS方案。
[AC] radius scheme rad
# 配置主认证/授权服务器的IP地址为8.1.1.1,认证端口号为1812。
[AC-radius-rad] primary authentication 8.1.1.1 1812
# 配置主计费服务器的IP地址为8.1.1.1,认证端口号为1813。
[AC-radius-rad] primary accounting 8.1.1.1 1813
# 配置RADIUS认证/授权和计费报文的共享密钥为Ackey。
[AC-radius-rad] key authentication ACkey
[AC-radius-rad] key accounting Ackey
# 配置设备支持的RADIUS服务器类型为extended类型。
[AC-radius-rad] server-type extended
# 配置向RADIUS服务器发送的用户名不携带域名。
[AC-radius-rad] user-name-format without-domain
[AC-radius-rad] quit
# 配置ISP域的AAA方案。
[AC] domain test
[AC-isp-test] authentication lan-access radius-scheme rad
[AC-isp-test] authorization lan-access radius-scheme rad
[AC-isp-test] accounting lan-access radius-scheme rad
[AC-isp-test] quit
# 或者不区分用户类型,配置缺省的AAA方案。
[AC] domain test
[AC-isp-test] authentication default radius-scheme rad
[AC-isp-test] authorization default radius-scheme rad
[AC-isp-test] accounting default radius-scheme rad
[AC-isp-test] quit
用户通过认证后,在AC上可以通过命令display connection可以查看认证通过的用户信息。
· 本文LDAP服务器以Microsoft Windows 2003 Server的Active Directory为例,说明该例中LDAP server的基本配置。
· 目前设备暂不支持使用LDAP进行授权,可以配置HWTACACS作为授权方案配合LDAP认证方案,具体配置请参考1.3.3 配置HWTACACS方案。
如图1-13所示,配置AC实现LDAP服务器对登录AC的Telnet用户进行认证。
· 一台LDAP认证服务器与AC相连,服务器IP地址为10.1.1.1/24。服务器域名为ldap.com。
· 在LDAP服务器上设置管理员administrator的密码为admin!123456。
· 在LDAP服务器上添加用户名为aaa的用户,密码为ldap!123456。
图1-13 Telnet用户LDAP认证配置组网图
(1) 配置LDAP服务器。
# 添加用户aaa。
· 在LDAP服务器上,选择[开始/管理工具]中的[Active Directory用户和计算机],打开Active Directory用户管理界面;
· 选择[操作/新建/用户],打开[新建对象-用户]对话框;
· 在对话框中输入用户名aaa,并单击<下一步>按钮。
图1-14 新建用户aaa
· 在弹出的对话框的“密码”区域框内输入用户密码ldap!123456,并单击<下一步>按钮。用户帐户的其它属性(密码的更改方式、密码的生存方式、是否禁用帐户)请根据实际情况选择配置,图中仅为示例。
图1-15 设置用户密码
# 将用户aaa加入Users组。
· 在Active Directory用户管理界面的左侧导航树中,点击ldap.com节点下的“Users”按钮;
· 在右侧的Users信息框中右键单击用户aaa,选择“属性”项;
· 在弹出的[aaa属性]对话框中选择“隶属于”页签,选择用户要隶属于的名称“Domain Users”,并单击<添加(D)...>按钮。
图1-16 修改用户属性
· 在弹出的[选择组]对话框中单击<确定>,完成用户aaa添加到Users组。
图1-17 添加用户aaa到用户组Users
# 完成用户aaa的添加之后,还需要配置管理员用户administrator的密码为admin!123456。
· 在右侧的Users信息框中右键单击管理员用户administrator,选择“设置密码(S)...”项;
· 在弹出的密码添加对话框中设置管理员密码,详细过程此处略。
(2) 配置AC
# 开启AC的Telnet服务器功能(该功能默认是开启的)。
<AC> system-view
[AC] telnet server enable
# 配置与LDAP服务器连接的VLAN2的IP地址为10.1.1.2/24。
[AC] vlan 2
[AC-vlan2] quit
[AC] interface Vlan-interface2
[AC-Vlan-interface2] ip address 10.1.1.2 24
[AC-Vlan-interface2] quit
# 配置Telnet用户登录采用AAA认证方式。
[AC] user-interface vty 0 4
[AC-ui-vty0-4] authentication-mode scheme
[AC-ui-vty0-4] quit
# 创建一个新的ISP域system,并设置为系统缺省的ISP域。
[AC] domain default enable system
# 配置LDAP方案。
[AC] ldap scheme ldap1
# 配置LDAP认证服务器的IP地址为10.1.1.1。
[AC-ldap-ldap1] authentication-server 10.1.1.1
# 配置具有管理员权限的用户DN。
[AC-ldap-ldap1] login-dn cn=administrator,cn=users,dc=ldap,dc=com
# 配置具有管理员权限的用户密码。
[AC-ldap-ldap1] login-password simple admin!123456
# 配置查询用户的起始目录。
[AC-ldap-ldap1] user-parameters search-base-dn dc=ldap,dc=com
[AC-ldap-ldap1] quit
# 配置ISP域的认证方案。
[AC] domain system
[AC-isp-system] authentication login ldap-scheme ldap1
[AC-isp-system] quit
# 或者不区分用户类型,配置缺省的AAA方案。
[AC] domain system
[AC-isp-system] authentication default ldap-scheme ldap1
使用Telnet登陆时输入用户名为aaa,密码为ldap!123456,可以通过缺省域system进行认证,即可进入AC用户界面。
· 无线用户Client通过AP与接入设备AC相连,采用直接方式的Portal认证。无线用户通过手工配置或DHCP获取的一个公网IP地址进行认证,在通过Portal认证前,只能访问Portal服务器;在通过Portal认证后,可以使用此IP地址访问非受限的互联网资源。
· 使用RADIUS服务器作为认证/计费服务器。(本例中,RADIUS服务器和Portal服务器位于同一台服务器主机上);
· AC与RADIUS服务器交互报文时使用的共享密钥为expert,认证/授权、计费的端口号分别为1812和1813,向RADIUS服务器发送的用户名携带域名。
· 对Portal用户进行包月方式计费,费用为120元/月,以月为周期对用户上网服务的使用量按时长进行统计,允许每月最大上网使用量为120个小时。
图1-18 Portal用户RADIUS认证、授权和计费配置组网图
按照组网图配置设备各接口的IP地址,保证启动Portal之前无线用户Client、AP、AC和服务器之间的路由可达。
(1) 配置RADIUS server(iMC PLAT 3.20)
下面以iMC为例(使用iMC版本为:iMC PLAT 3.20-R2606、iMC UAM 3.60-E6206、iMC CAMS 3.60-E6206),说明RADIUS server和Portal server的基本配置。
# 增加接入设备。
登录进入iMC管理平台,选择“业务”页签,单击导航树中的[接入业务/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击“增加”按钮,进入增加接入设备页面。
· 设置与AC交互报文时的认证、计费共享密钥为“expert”;
· 设置认证及计费的端口号分别为“1812”和“1813”;
· 选择业务类型为“LAN接入业务”;
· 选择接入设备类型为“H3C”;
· 选择或手工增加接入设备,添加IP地址为10.1.1.2的接入设备;
· 其它参数采用缺省值,并单击<确定>按钮完成操作。
添加的接入设备IP地址要与AC发送RADIUS报文的源地址保持一致。缺省情况下,设备发送RADIUS报文的源地址是发送RADIUS报文的接口IP地址。
· 若设备上通过命令nas-ip或者radius nas-ip指定了发送RADIUS报文的源地址,则此处的接入设备IP地址就需要修改并与指定源地址保持一致。
· 若设备使用缺省的发送RADIUS报文的源地址,例如,本例中为接口Vlan-interface3的IP地址10.1.1.2,则此处接入设备IP地址就选择10.1.1.2。
图1-19 增加接入设备
# 增加计费策略。
选择“业务”页签,单击导航树中的[计费业务/计费策略管理]菜单项,进入计费策略管理页面,在该页面中单击<增加>按钮,进入计费策略配置页面。
· 输入计费策略名称“UserAcct”;
· 选择计费策略模板为“包月类型”;
· 设置包月基本信息:计费方式为“按时长”、计费周期为“月”、周期内固定费用为“120元”;
· 设置包月使用量限制:允许每月最大上网使用量为120个小时。
· 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-20 增加计费策略
# 增加服务配置。
选择“业务”页签,单击导航树中的[接入业务/服务配置管理]菜单项,进入服务器配置管理页面,在该页面中单击<增加>按钮,进入增加服务配置页面。
· 输入服务名为“Portal-auth/acct”、服务后缀为“dm1”,此服务后缀为Portal用户使用的认证域。指定服务后缀的情况下,RADIUS方案中必须指定向服务器发送的用户名中携带域名;
· 选择计费策略为“UserAcct”;
· 本配置页面中还有其它服务配置选项,请根据实际情况选择配置;
· 单击<确定>按钮完成操作。
图1-21 增加服务配置
# 增加接入用户。
选择“用户”页签,单击导航树中的[接入用户视图/所有接入用户]菜单项,进入接入用户列表页面,在该页面中单击<增加>按钮,进入增加接入用户页面。
· 选择或者手工增加用户姓名为“hello”;
· 输入帐号名“portal”和密码;
· 选择该用户所关联的接入服务为“Portal-auth/acct”;
· 本配置页面中还有其它服务配置选项,请根据实际情况选择配置;
· 单击<确定>按钮完成操作。
图1-22 增加接入用户
(2) 配置RADIUS server(iMC PLAT 5.0)
下面以iMC为例(使用iMC版本为:iMC PLAT 5.0(E0101)、iMC UAM 5.0(E0101)、iMC CAMS 5.0(E0101)),说明RADIUS server和Portal server的基本配置。
# 增加接入设备。
登录进入iMC管理平台,选择“业务”页签,单击导航树中的[接入业务/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击“增加”按钮,进入增加接入设备页面。
· 设置与AC交互报文时的认证、计费共享密钥为“expert”;
· 设置认证及计费的端口号分别为“1812”和“1813”;
· 选择业务类型为“LAN接入业务”;
· 选择接入设备类型为“H3C”;
· 选择或手工增加接入设备,添加IP地址为10.1.1.2的接入设备;
· 其它参数采用缺省值,并单击<确定>按钮完成操作。
添加的接入设备IP地址要与AC发送RADIUS报文的源地址保持一致。缺省情况下,设备发送RADIUS报文的源地址是发送RADIUS报文的接口IP地址。
· 若设备上通过命令nas-ip或者radius nas-ip指定了发送RADIUS报文的源地址,则此处的接入设备IP地址就需要修改并与指定源地址保持一致。
· 若设备使用缺省的发送RADIUS报文的源地址,例如,本例中为接口Vlan-interface3的IP地址10.1.1.2,则此处接入设备IP地址就选择10.1.1.2。
图1-23 增加接入设备
# 增加计费策略。
选择“业务”页签,单击导航树中的[计费业务/计费策略管理]菜单项,进入计费策略管理页面,在该页面中单击<增加>按钮,进入计费策略配置页面。
· 输入计费策略名称“UserAcct”;
· 选择计费策略模板为“包月类型计费”;
· 设置包月基本信息:计费方式为“按时长”、计费周期为“月”、周期内固定费用为“120元”;
· 设置包月使用量限制:允许每月最大上网使用量为120个小时。
· 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-24 增加计费策略
# 增加服务配置。
选择“业务”页签,单击导航树中的[接入业务/服务配置管理]菜单项,进入服务器配置管理页面,在该页面中单击<增加>按钮,进入增加服务配置页面。
· 输入服务名为“Portal-auth/acct”、服务后缀为“dm1”,此服务后缀为Portal用户使用的认证域。指定服务后缀的情况下,RADIUS方案中必须指定向服务器发送的用户名中携带域名;
· 选择计费策略为“UserAcct”;
· 本配置页面中还有其它服务配置选项,请根据实际情况选择配置;
· 单击<确定>按钮完成操作。
图1-25 增加服务配置
# 增加接入用户。
选择“用户”页签,单击导航树中的[接入用户视图/所有接入用户]菜单项,进入接入用户列表页面,在该页面中单击<增加>按钮,进入增加接入用户页面。
· 选择或者手工增加用户姓名为“hello”;
· 输入帐号名“portal”和密码;
· 选择该用户所关联的接入服务为“Portal-auth/acct”;
· 本配置页面中还有其它服务配置选项,请根据实际情况选择配置;
· 单击<确定>按钮完成操作。
图1-26 增加接入用户
(3) 配置Portal server(iMC PLAT 3.20)
# 配置Portal服务器。
登录进入iMC管理平台,选择“业务”页签,单击导航树中的[Portal服务管理/服务器配置]菜单项,进入服务器配置页面。
· 输入Portal认证主页地址,形式为http://ip:port/portal,其中ip和port在安装iMC UAM的时候确定,port一般使用缺省值8080即可;
· 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-27 Portal服务器配置页面
# 配置IP地址组。
单击导航树中的[Portal服务管理/Portal IP地址组配置]菜单项,进入Portal IP地址组配置页面,在该页面中单击<增加>按钮,进入增加IP地址组配置页面。
· 输入IP地址组名为“Portal_user”;
· 输入起始地址为“192.168.1.1”、终止地址为“192.168.1.255”。用户主机IP地址必须包含在该IP地址组范围内;
· 选择不进行NAT;
· 单击<确定>按钮完成操作。
图1-28 增加IP地址组配置页面
# 增加Portal设备。
单击导航树中的[Portal服务管理/Portal设备配置]菜单项,进入Portal设备配置页面,在该页面中单击<增加>按钮,进入增加设备信息配置页面。
· 输入设备名为“NAS”;
· 输入IP地址为“192.168.1.70”,该地址为与接入用户相连的设备接口IP地址;
· 输入密钥为“portal”,该密钥与接入设备AC上的配置保持一致;
· 选择是否进行二次地址分配,本例中为直接认证,因此为“否”;
· 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-29 增加设备信息配置页面
# Portal设备关联IP地址组。
在Portal设备配置页面中的设备信息列表中,点击NAS设备的<端口组信息管理>链接,进入端口组信息配置页面。
图1-30 设备信息列表
在端口组信息配置页面中点击<增加>按钮,进入增加端口组信息配置页面。
· 输入端口组名为“group”;
· 选择IP地址组为“Portal_user”,用户接入网络时使用的IP地址必须属于所选的IP地址组;
· 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-31 增加端口组信息配置页面
(4) 配置Portal server(iMC PLAT 5.0)
# 配置Portal服务器。
登录进入iMC管理平台,选择“业务”页签,单击导航树中的[Portal服务管理/服务器配置]菜单项,进入服务器配置页面。
· 输入Portal认证主页地址,形式为http://ip:port/portal,其中ip和port在安装iMC UAM的时候确定,port一般使用缺省值8080即可;
· 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-32 Portal服务器配置页面
# 配置IP地址组。
单击导航树中的[Portal服务管理/Portal IP地址组配置]菜单项,进入Portal IP地址组配置页面,在该页面中单击<增加>按钮,进入增加IP地址组配置页面。
· 输入IP地址组名为“Portal_user”;
· 输入起始地址为“192.168.1.1”、终止地址为“192.168.1.255”。用户主机IP地址必须包含在该IP地址组范围内;
· 选择类型为“普通”;
· 单击<确定>按钮完成操作。
图1-33 增加IP地址组配置页面
# 增加Portal设备。
单击导航树中的[Portal服务管理/Portal设备配置]菜单项,进入Portal设备配置页面,在该页面中单击<增加>按钮,进入增加设备信息配置页面。
· 输入设备名为“NAS”;
· 输入IP地址为“192.168.1.70”,该地址为与接入用户相连的设备接口IP地址;
· 输入密钥为“portal”,该密钥与接入设备AC的配置保持一致;
· 选择是否进行二次地址分配,本例中为直接认证,因此为“否”;
· 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-34 增加设备信息配置页面
# Portal设备关联IP地址组。
在Portal设备配置页面中的设备信息列表中,点击NAS设备的<端口组信息管理>链接,进入端口组信息配置页面。
图1-35 设备信息列表
在端口组信息配置页面中点击<增加>按钮,进入增加端口组信息配置页面。
· 输入端口组名为“group”;
· 选择IP地址组为“Portal_user”,用户接入网络时使用的IP地址必须属于所选的IP地址组;
· 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-36 增加端口组信息配置页面
# 最后单击导航树中的[业务参数配置/系统配置手工生效]菜单项,使以上Portal服务器配置生效。
(5) 配置AC
· 配置RADIUS方案
# 创建名字为rs1的RADIUS方案并进入该方案视图。
<AC> system-view
[AC] radius scheme rs1
# 配置RADIUS方案的服务器类型。使用CAMS/iMC服务器时,RADIUS服务器类型应选择extended。
[AC-radius-rs1] server-type extended
# 配置RADIUS方案的主认证和主计费服务器IP地址及通信密钥。
[AC-radius-rs1] primary authentication 10.1.1.1 1812
[AC-radius-rs1] primary accounting 10.1.1.1 1813
[AC-radius-rs1] key authentication expert
[AC-radius-rs1] key accounting expert
# 配置发送给RADIUS服务器的用户名携带ISP域名。
[AC-radius-rs1] user-name-format with-domain
[AC-radius-rs1] quit
· 配置认证域
# 创建并进入名字为dm1的ISP域。
[AC] domain dm1
# 配置ISP域的RADIUS方案rs1。
[AC-isp-dm1] authentication portal radius-scheme rs1
[AC-isp-dm1] authorization portal radius-scheme rs1
[AC-isp-dm1] accounting portal radius-scheme rs1
[AC-isp-dm1] quit
· 配置Portal认证
# 配置Portal服务器:名称为newpt,IP地址为10.1.1.1,密钥为portal,端口为50100,URL为http://10.1.1.1:8080/portal。
[AC] portal server newpt ip 10.1.1.1 key portal port 50100 url http://10.1.1.1:8080/portal
[AC] portal free-rule 0 source interface Ten-GigabitEthernet1/0/1 destination any
# 在无线用户Client接入AC的接口上使能Portal认证。
[AC] interface vlan-interface 2
[AC–Vlan-interface2] portal server newpt method direct
# 配置Portal认证域。
[AC1–Vlan-interface2] portal domain dm1
[AC–Vlan-interface2] quit
无线用户Client既可以使用iNode客户端,也可以通过网页方式进行Portal认证。用户在通过认证前,只能访问认证页面http://10.1.1.1:8080/portal,且发起的Web访问请求均被重定向到该认证页面,通过认证后,即可访问非受限的互联网资源。
认证通过后,可通过执行以下显示命令查看AC上生成的Portal在线用户信息。
[AC] display portal user interface vlan-interface 2
Index:19
State:ONLINE
SubState:NONE
ACL:NONE
Work-mode:stand-alone
MAC IP Vlan Interface
---------------------------------------------------------------------
0015-e9a6-7cfe 192.168.1.58 2 Vlan-interface2
Total 1 user(s) matched, 1 listed.
# 可以通过如下命令查看到AAA用户的连接信息。
[AC] display connection
Index=20 ,Username=portal@dm1
IP=192.168.1.58
IPv6=N/A
MAC=00-15-E9-A6-7C-FE
Total 1 connection(s) matched.
如下图所示的组网环境中,需要实现使用RADIUS服务器对通过AC接入的802.1X用户进行认证、授权和计费。
· 在无线端口WLAN-ESS上对接入用户进行802.1X认证;
· AC与RADIUS服务器交互报文时使用的共享密钥为expert,认证/授权、计费的端口号分别为1812和1813,向RADIUS服务器发送的用户名携带域名;
· 用户认证时使用的用户名为dot1x@bbb。
· 用户认证成功后,认证服务器授权下发VLAN 4,将用户所在端口加入该VLAN,允许用户访问该VLAN中的网络资源。
· 对802.1X用户进行包月方式计费,费用为120元/月,以月为周期对用户上网服务的使用量按时长进行统计,允许每月最大上网使用量为120个小时。
图1-37 802.1X用户RADIUS认证、授权和计费配置组网图
请按照组网图完成端口和VLAN的配置,并保证在用户通过认证后能够自动或者手动更新IP地址与授权VLAN中的资源互通。
(1) 配置RADIUS server(iMC PLAT 3.20)
下面以iMC为例(使用iMC版本为:iMC PLAT 3.20-R2606、iMC UAM 3.60-E6206、iMC CAMS 3.60-E6206),说明RADIUS server的基本配置。
# 增加接入设备。
登录进入iMC管理平台,选择“业务”页签,单击导航树中的[接入业务/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击“增加”按钮,进入增加接入设备页面。
· 设置与AC交互报文时的认证、计费共享密钥为“expert”;
· 设置认证及计费的端口号分别为“1812”和“1813”;
· 选择业务类型为“LAN接入业务”;
· 选择接入设备类型为“H3C”;
· 选择或手工增加接入设备,添加IP地址为10.1.1.2的接入设备;
· 其它参数采用缺省值,并单击<确定>按钮完成操作。
添加的接入设备IP地址要与AC发送RADIUS报文的源地址保持一致。缺省情况下,设备发送RADIUS报文的源地址是发送RADIUS报文的接口IP地址。
· 若设备使用缺省的发送RADIUS报文的源地址,例如,本例中为接口Vlan-interface3的IP地址10.1.1.2,则此处接入设备IP地址就选择10.1.1.2。
· 若设备上通过命令nas-ip或者radius nas-ip指定了发送RADIUS报文的源地址,则此处的接入设备IP地址就需要修改并与指定源地址保持一致。
图1-38 增加接入设备
# 增加计费策略。
选择“业务”页签,单击导航树中的[计费业务/计费策略管理]菜单项,进入计费策略管理页面,在该页面中单击<增加>按钮,进入计费策略配置页面。
· 输入计费策略名称“UserAcct”;
· 选择计费策略模板为“包月类型”;
· 设置包月基本信息:计费方式为“按时长”、计费周期为“月”、周期内固定费用为“120元”;
· 设置包月使用量限制:允许每月最大上网使用量为120个小时。
· 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-39 增加计费策略
# 增加服务配置。
选择“业务”页签,单击导航树中的[接入业务/服务配置管理]菜单项,进入服务器配置管理页面,在该页面中单击<增加>按钮,进入增加服务配置页面。
· 输入服务名为“Dot1x auth”、服务后缀为“bbb”,此服务后缀为802.1X用户使用的认证域。指定服务后缀的情况下,RADIUS方案中必须指定向服务器发送的用户名中携带域名;
· 选择计费策略为“UserAcct”;
· 证书认证为“EAP证书认证”;
· 认证证书类型为“EAP-PEAP认证”;
· 认证证书子类型为“MS-CHAPV2认证”;
· 配置授权下发的VLAN ID为“4”;
· 单击<确定>按钮完成操作。
图1-40 配置服务/授权信息
# 增加接入用户。
选择“用户”页签,单击导航树中的[接入用户视图/所有接入用户]菜单项,进入接入用户列表页面,在该页面中单击<增加>按钮,进入增加接入用户页面。
· 选择或者手工增加用户姓名为“test”;
· 输入帐号名“dot1x”和密码;
· 选择该用户所关联的接入服务为“Dot1x auth”;
· 本配置页面中还有其它服务配置选项,请根据实际情况选择配置;
· 单击<确定>按钮完成操作。
图1-41 增加接入用户
(2) 配置RADIUS server(iMC PLAT 5.0)
下面以iMC为例(使用iMC版本为:iMC PLAT 5.0(E0101)、iMC UAM 5.0(E0101)、iMC CAMS 5.0(E0101)),说明RADIUS server和Portal server的基本配置。
# 增加接入设备。
登录进入iMC管理平台,选择“业务”页签,单击导航树中的[接入业务/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击“增加”按钮,进入增加接入设备页面。
· 设置与AC交互报文时的认证、计费共享密钥为“expert”;
· 设置认证及计费的端口号分别为“1812”和“1813”;
· 选择业务类型为“LAN接入业务”;
· 选择接入设备类型为“H3C”;
· 选择或手工增加接入设备,添加IP地址为10.1.1.2的接入设备;
· 其它参数采用缺省值,并单击<确定>按钮完成操作。
· 添加的接入设备IP地址要与AC发送RADIUS报文的源地址保持一致。缺省情况下,设备发送RADIUS报文的源地址是发送RADIUS报文的接口IP地址。
· 若设备使用缺省的发送RADIUS报文的源地址,例如,本例中为接口Vlan-interface3的IP地址10.1.1.2,则此处接入设备IP地址就选择10.1.1.2。
· 若设备上通过命令nas-ip或者radius nas-ip指定了发送RADIUS报文的源地址,则此处的接入设备IP地址就需要修改并与指定源地址保持一致。
图1-42 增加接入设备
# 增加计费策略。
选择“业务”页签,单击导航树中的[计费业务/计费策略管理]菜单项,进入计费策略管理页面,在该页面中单击<增加>按钮,进入计费策略配置页面。
· 输入计费策略名称“UserAcct”;
· 选择计费策略模板为“包月类型计费”;
· 设置包月基本信息:计费方式为“按时长”、计费周期为“月”、周期内固定费用为“120元”;
· 设置包月使用量限制:允许每月最大上网使用量为120个小时。
· 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-43 增加计费策略
# 增加服务配置。
选择“业务”页签,单击导航树中的[接入业务/服务配置管理]菜单项,进入服务器配置管理页面,在该页面中单击<增加>按钮,进入增加服务配置页面。
· 输入服务名为“Dot1x auth”、服务后缀为“bbb”,此服务后缀为802.1X用户使用的认证域。指定服务后缀的情况下,RADIUS方案中必须指定向服务器发送的用户名中携带域名;
· 选择计费策略为“UserAcct”;
· 证书认证为“EAP证书认证”;
· 认证证书类型为“EAP-PEAP认证”;
· 认证证书子类型为“MS-CHAPV2认证”;
· 配置授权下发的VLAN ID为“4”;
· 本配置页面中还有其它服务配置选项,请根据实际情况选择配置;
· 单击<确定>按钮完成操作。
图1-44 增加服务配置
# 增加接入用户。
选择“用户”页签,单击导航树中的[接入用户视图/所有接入用户]菜单项,进入接入用户列表页面,在该页面中单击<增加>按钮,进入增加接入用户页面。
· 选择或者手工增加用户姓名为“test”;
· 输入帐号名“dot1x”和密码;
· 选择该用户所关联的接入服务为“Dot1x auth”;
· 本配置页面中还有其它服务配置选项,请根据实际情况选择配置;
· 单击<确定>按钮完成操作。
图1-45 增加接入用户
(3) 配置AC
· 配置RADIUS方案
# 创建名字为rad的RADIUS方案并进入该方案视图。
<AC> system-view
[AC] radius scheme rad
# 配置RADIUS方案的服务器类型。使用CAMS/iMC服务器时,RADIUS服务器类型应选择extended。
[AC-radius-rad] server-type extended
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[AC-radius-rad] primary authentication 10.1.1.1 1812
[AC-radius-rad] primary accounting 10.1.1.1 1813
[AC-radius-rad] key authentication expert
[AC-radius-rad] key accounting expert
# 配置发送给RADIUS服务器的用户名携带ISP域名。
[AC-radius-rad] user-name-format with-domain
[AC-radius-rad] quit
· 配置认证域
# 创建并进入名字为bbb的ISP域。
[AC] domain bbb
# 配置ISP域的RADIUS方案rad。
[AC-isp-bbb] authentication lan-access radius-scheme rad
[AC-isp-bbb] authorization lan-access radius-scheme rad
[AC-isp-bbb] accounting lan-access radius-scheme rad
[AC-isp-bbb] quit
· 配置802.1X认证
# 开启全局的端口安全特性。
[AC] port-security enable
# 配置无线dot1x用户的认证方式。
[AC] dot1x authentication-method eap
# 设置无线端口安全模式为userLoginSecureExt。
[AC] interface wlan-ess 1
[AC-WLAN-ESS1] port-security port-mode userlogin-secure-ext
# 使能端口的密钥协商功能。
[AC-WLAN-ESS1] port-security tx-key-type 11key
# 关闭802.1X的在线用户握手功能。
[AC-WLAN-ESS1] undo dot1x handshake
# 关闭802.1X多播触发功能。
[AC-WLAN-ESS1] undo dot1x multicast-trigger
# 配置接口的强制认证域为bbb。(所有从该接口接入的802.1X用户将被强制使用该认证域来进行认证、授权和计费。该配置不是必须的,可根据实际组网情况选配)
[AC-WLAN-ESS1] dot1x mandatory-domain bbb
[AC-WLAN-ESS1] quit
# 创建服务模板。
[AC] wlan service-template 1 crypto
[AC-wlan-st-1] ssid sectest
[AC-wlan-st-1] bind WLAN-ESS 1
[AC-wlan-st-1] authentication-method open-system
[AC-wlan-st-1] cipher-suite tkip
[AC-wlan-st-1] security-ie wpa
[AC-wlan-st-1] service-template enable
· 若使用Windows XP的802.1X客户端,则需要正确设置此连接的网络属性:在网络属性的“验证”页签中,确保选中“启用此网络的 IEEE 802.1x 验证”,并选择要用于此连接的EAP认证类型为“受保护的EAP(PEAP)”。
· 若使用iNode 802.1X客户端,则无需启用任何高级认证选项。
对于使用iNode 802.1X客户端的用户,在客户端的用户属性中输入正确的用户名“dot1x@bbb”和密码后,通过主动发起连接可成功通过认证;对于使用Windows XP 802.1X客户端的用户,在系统自动弹出的认证对话框中输入正确的用户名“dot1x@bbb”和密码后,可成功通过认证。认证通过后,服务器向该用户所在端口授权下发了VLAN 4。
# 可以通过如下命令查看到AAA用户的连接信息。
[AC] display connection
Index=22 , Username=dot1x@bbb
MAC=0015-e9a6-7cfe
IP=192.168.1.58
IPv6=N/A
Total 1 connection(s) matched.
# 可以通过如下命令查看该连接的详细信息,其中授权下发VLAN为VLAN 4。
[AC] display connection ucibindex 22
Index=22 , Username=dot1x@bbb
MAC=0015-e9a6-7cfe
IP=192.168.1.58
IPv6=N/A
Access=8021X ,AuthMethod=EAP
Port Type=Wireless-802.11,Port Name=WLAN-DBSS1:1
Initial VLAN=2, Authorization VLAN=4
ACL Group=Disable
User Profile=N/A
CAR=Disable
Priority=Disable
Start=2011-05-26 19:41:12 ,Current=2011-05-26 19:41:25 ,Online=00h00m14s
Total 1 connection matched.
如下图所示,无线Client通过AP与AC相连,需要通过802.1X认证后接入网络。由于网络中未部署专门的认证服务器,因此要求由AC对802.1X用户进行本地EAP认证和授权。具体要求如下:
· 802.1X用户采用EAP-MD5认证方式。
· AC通过用户组来管理802.1X用户,并对认证成功的802.1X用户下发授权VLAN为VLAN 100。
图1-46 802.1X用户本地EAP认证和授权配置组网图
· 若使用Windows XP的802.1X客户端,则需要正确设置此连接的网络属性:在网络属性的“验证”页签中,确保选中“启用此网络的 IEEE 802.1x 验证”,并选择要用于此连接的EAP认证类型为“MD5-质询”。
· 若使用iNode 802.1X客户端,则无需启用任何高级认证选项。
# 创建用户组dot1x,本组用户授权VLAN为VLAN 100。
<AC> system-view
[AC] user-group dot1x
[AC-ugroup-dot1x] authorization-attribute vlan 100
[AC-ugroup-dot1x] quit
# 创建本地用户usera,并加入用户组dot1x。
[AC] local-user usera
[AC-luser-usera] group dot1x
[AC-luser-usera] password simple 1234
[AC-luser-usera] service-type lan-access
[AC-luser-usera] quit
# 配置ISP域的AAA方法为本地认证、授权。
[AC] domain mydomain
[AC-isp-mydomain] authentication lan-access local
[AC-isp-mydomain] authorization lan-access local
[AC-isp-mydomain] quit
# 配置EAP-Profile,指定认证方法为EAP-MD5。
[AC] eap-profile eapsvr
[AC-eap-prof-eapsvr] method md5
[AC-eap-prof-eapsvr] quit
# 配置本地服务器,并指定使用的EAP Profile为eapsvr。
[AC] local-server authentication eap-profile eapsvr
# 开启全局的端口安全特性。
[AC] port-security enable
# 配置无线dot1x用户的认证方式。
[AC] dot1x authentication-method eap
# 设置无线端口安全模式为userLoginSecureExt。
[AC] interface wlan-ess 1
[AC-WLAN-ESS1] port-security port-mode userlogin-secure-ext
# 使能端口的密钥协商功能。
[AC-WLAN-ESS1] port-security tx-key-type 11key
# 关闭802.1X的在线用户握手功能。
[AC-WLAN-ESS1] undo dot1x handshake
# 关闭802.1X多播触发功能。
[AC-WLAN-ESS1] undo dot1x multicast-trigger
# 配置接口的强制认证域为mydomain。(所有从该接口接入的802.1X用户将被强制使用该认证域来进行认证、授权和计费。该配置不是必须的,可根据实际组网情况选配)
[AC-WLAN-ESS1] dot1x mandatory-domain mydomain
[AC-WLAN-ESS1] quit
# 创建服务模板,配置SSID为sectest,并将WLAN-ESS接口与该服务模板绑定。
[AC] wlan service-template 1 clear
[AC-wlan-st-1] ssid sectest
[AC-wlan-st-1] bind WLAN-ESS 1
[AC-wlan-st-1] authentication-method open-system
[AC-wlan-st-1] service-template enable
当用户名为usera@mydomain,密码为1234的802.1X用户成功通过EAP认证上线后,可使用命令display connection查看到上线用户的连接情况,且可使用命令display interface wlan-dbss查看到接入端口WLAN-DBSS被授权加入VLAN 100。
通过配置AC实现对登录AC的802.1X用户进行RADIUS认证、授权和计费。
· 一台RADIUS服务器(担当认证、授权、计费服务器的职责)与AC相连,服务器IP地址为10.1.1.1/24,不支持EAP认证。
· 802.1X客户端与AC之间进行PEAP-MSCHAPv2认证。
· AC与认证、计费RADIUS服务器交互报文时的共享密钥均为expert。
图1-47 802.1X用户的RADIUS offload认证、授权和计费配置组网图
· 若使用Windows XP的802.1X客户端,则需要正确设置此连接的网络属性:在网络属性对话框的“验证”页签中,确保选中“启用此网络的 IEEE 802.1x 验证”,并选择要用于此连接的EAP认证类型为“受保护的EAP (PEAP)”,其验证方法为“安全密码 (EAP MSCHAP v2)”。
· 若使用iNode的802.1X客户端,则需要启用高级认证的证书认证。
· 配置RADIUS服务器,设置与AC交互报文时的共享密钥为expert,添加用户名及密码,详细配置略。
(1) 获取CA证书和本地证书
若AC上已经保存了CA证书文件和本地证书文件,则使用离线方式将其导入本地。否则,需要在线申请AC的本地证书并获取CA证书。证书所在的PKI域为eappki。PKI的具体配置请参见“安全配置指导”中的“PKI配置”,此处略。
(2) 配置SSL服务器端策略
# 配置SSL服务器端策略eapsvr,指定使用的PKI域为eappki。
<AC> system-view
[AC] ssl server-policy eapsvr
[AC-ssl-server-policy-eapsvr] pki-domain eappki
[AC-ssl-server-policy-eapsvr] quit
(3) 配置本地EAP服务器
# 创建一个EAP-Profile。
[AC] eap-profile eapsvr
# 指定EAP认证方法为PEAP-MSCHAPv2。
[AC-eap-prof-eapsvr] method peap-mschapv2
# 配置用于EAP认证的SSL服务器端策略为eapsvr。
[AC-eap-prof-eapsvr] ssl-server-policy eapsvr
[AC-eap-prof-eapsvr] quit
# 配置本地EAP服务器,并指定使用的EAP-profile为eapsvr。
[AC] local-server authentication eap-profile eapsvr
(4) 配置AAA
# 配置RADIUS方案,并支持EAP Offload功能。
[AC] radius scheme radoff
[AC-radius-radoff] primary authentication 10.1.1.1
[AC-radius-radoff] primary accounting 10.1.1.1
[AC-radius-radoff] key authentication expert
[AC-radius-radoff] key accounting expert
[AC-radius-radoff] eap offload method peap-mschapv2
[AC-radius-radoff] quit
# 配置ISP域的AAA方法。
[AC] domain bbb
[AC-isp-bbb] authentication lan-access radius-scheme radoff
[AC-isp-bbb] authorization lan-access radius-scheme radoff
[AC-isp-bbb] accounting lan-access radius-scheme radoff
[AC-isp-bbb] quit
(5) 配置802.1X
# 开启全局的端口安全特性。
[AC] port-security enable
# 配置无线dot1x用户的认证方式。
[AC] dot1x authentication-method eap
# 设置无线端口安全模式为userLoginSecureExt。
[AC] interface wlan-ess 1
[AC-WLAN-ESS1] port-security port-mode userlogin-secure-ext
# 使能端口的密钥协商功能。
[AC-WLAN-ESS1] port-security tx-key-type 11key
# 关闭802.1X的在线用户握手功能。
[AC-WLAN-ESS1] undo dot1x handshake
# 关闭802.1X多播触发功能。
[AC-WLAN-ESS1] undo dot1x multicast-trigger
# 配置接口的强制认证域为bbb。(所有从该接口接入的802.1X用户将被强制使用该认证域来进行认证、授权和计费。该配置不是必须的,可根据实际组网情况选配)
[AC-WLAN-ESS1] dot1x mandatory-domain bbb
[AC-WLAN-ESS1] quit
# 创建服务模板。
[AC] wlan service-template 1 crypto
[AC-wlan-st-1] ssid sectest
[AC-wlan-st-1] bind WLAN-ESS 1
[AC-wlan-st-1] authentication-method open-system
[AC-wlan-st-1] cipher-suite tkip
[AC-wlan-st-1] security-ie wpa
[AC-wlan-st-1] service-template enable
使用命令display radius scheme radoff和display domain bbb可以查看AAA的配置情况,使用命令display dot1x interface wlan-ess 1可以查看802.1X的配置情况。当用户名为username@bbb形式的用户成功通过EAP认证上线后,可使用命令display connection查看到上线用户的连接情况。
如下图所示,Telnet用户主机通过AP与AC相连,AC与一台HWTACACS服务器相连,需要配置AC实现对登录AC的Telnet用户进行用户级别切换认证。
· 由一台ACS服务器担当用户级别切换HWTACACS认证服务器的职责,服务器IP地址为10.1.1.1/24。
· AC与认证HWTACACS服务器交互报文时的共享密钥为expert,发送给HWTACACS服务器的用户名不带域名。
· Telnet用户登录AC时进行本地认证,登录后所能访问的命令级别为0级,当进行由低到高的用户级别切换时,首先使用HWTACACS认证,若AAA配置无效或者HWTACACS服务器没有响应则转为local认证。
图1-48 Telnet用户远端HWTACACS用户级别切换认证配置组网图
(1) 配置HWTACACS server
下面以ACSv4.0为例,说明该例中HWTACACS server的基本配置。
在HWTACACS server上添加用户tester,对该用户的高级属性进行设置。
· 设置Use separate password为enabpass;
· 设置Max Privilege for any AAA Client为Level 3,表示用户级别切换到1~3时均使用密码enabpass进行认证。
图1-49 设置Telnet用户的高级属性
(2) 配置AC
# 配置VLAN接口2的IP地址,Telnet客户端将通过该地址连接AC。
<AC> system-view
[AC] interface vlan-interface 2
[AC-Vlan-interface2] ip address 192.168.1.70 255.255.255.0
[AC-Vlan-interface2] quit
# 配置VLAN接口3的IP地址,AC将通过该地址与服务器通信。
[AC] interface vlan-interface 3
[AC-Vlan-interface3] ip address 10.1.1.2 255.255.255.0
[AC-Vlan-interface3] quit
# 开启AC的Telnet服务器功能。
[AC] telnet server enable
# 配置Telnet用户登录采用AAA认证方式。
[AC] user-interface vty 0 4
[AC-ui-vty0-4] authentication-mode scheme
[AC-ui-vty0-4] quit
# 创建一个新的ISP域system,并设置为系统缺省的ISP域。
[AC] domain default enable system
# 配置HWTACACS方案hwtac。
[AC] hwtacacs scheme hwtac
# 配置主认证服务器的IP地址为10.1.1.1,认证端口号为49。
[AC-hwtacacs-hwtac] primary authentication 10.1.1.1 49
# 配置与认证服务器交互报文时的共享密钥为expert。
[AC-hwtacacs-hwtac] key authentication expert
# 配置向HWTACACS服务器发送的用户名不携带域名。
[AC-hwtacacs-hwtac] user-name-format without-domain
[AC-hwtacacs-hwtac] quit
# 配置ISP域system的Telnet用户登录认证方案为本地认证。
[AC] domain system
[AC-isp-system] authentication login local
# 配置ISP域bbb的用户级别切换认证方案为hwtac。
[AC-isp-system] authentication super hwtacacs-scheme hwtac
[AC-isp-system] quit
# 创建本地Telnet用户test。
[AC] local-user test
[AC-luser-test] service-type telnet
[AC-luser-test] password simple aabbcc
# 指定Telnet用户登录系统后所能访问的命令级别为0级。
[AC-luser-test] authorization-attribute level 0
[AC-luser-test] quit
# 配置用户级别切换认证方式为scheme local,即首先使用HWTACACS认证,若AAA配置无效或者ACS服务器没有响应则转为local认证。
[AC] super authentication-mode scheme local
# 配置切换用户级别的密码。
[AC] super password simple 654321
[AC] quit
(1) Telnet用户建立与AC的连接
在Telnet客户端按照提示输入用户名test@system及密码aabbcc,即可进入AC的用户界面,且所只能访问级别为0级的命令。
(2) 切换用户级别
# 在当前的用户界面下执行切换用户级别到3级的命令,按照提示输入HWTACACS级别切换认证密码enabpass,若认证成功即可将当前Telnet用户的级别切换到3级。
<AC> super 3
Password:
User privilege level is 3, and only those commands can be used
whose level is equal or less than this.
Privilege note: 0-VISIT, 1-MONITOR, 2-SYSTEM, 3-MANAGE
若ACS服务器无响应,按照提示输入本地级别切换认证密码654321,若认证成功即可将当前Telnet用户的级别切换到3级。
<AC> super 3
Password: <——此处需输入HWTACACS级别切换认证密码
Error: Invalid configuration or no response from the authentication server.
Info: Change authentication mode to local.
Password: <——此处需输入本地级别切换认证密码
User privilege level is 3, and only those commands can be used
whose level is equal or less than this.
Privilege note: 0-VISIT, 1-MONITOR, 2-SYSTEM, 3-MANAGE
如下图所示,802.1X客户端通过AP与AC相连,AC与一台LDAP服务器相连(服务器IP地址为10.1.1.1/24。服务器域名为ldap.com),需要配置AC实现对802.1X用户进行接入认证。具体要求如下:
· 对802.1X用户进行本地EAP认证。
· 采用LDAP服务器对用户身份进行验证。
图1-50 支持LDAP身份验证的802.1X本地EAP认证配置组网图
· 若使用Windows XP的802.1X客户端,则需要正确设置此连接的网络属性:在网络属性的“验证”页签中,确保选中“启用此网络的 IEEE 802.1x 验证”,并选择要用于此连接的EAP认证类型为“智能卡或其它证书”。
· 若使用iNode 802.1X客户端,则需要选中“启动高级认证”前的复选框,选择“证书认证”选项,点击<证书设置>按钮,在认证类型中选择“EAP-TLS”选项。
(1) 配置LDAP服务器
在LDAP服务器上设置管理员administrator的密码为admin!123456;并添加用户名为aaa的用户(该用户名为本地证书的DN名),密码为ldap!123456。LDAP服务器的具体配置请参见“1.10.4 Telnet用户的LDAP认证配置”。
(2) 配置AC
# 获取CA证书和本地证书。
若设备上已经保存了CA证书文件和本地证书文件,则使用离线方式将其导入本地。否则,需要在线申请设备的本地证书并获取CA证书。证书所在的PKI域为eappki。PKI的具体配置请参见“安全配置指导”中的“PKI配置”,此处略。
# 配置LDAP方案。
<AC> system-view
[AC] ldap scheme ldap1
# 配置LDAP认证服务器的IP地址。
[AC-ldap-ldap1] authentication-server 10.1.1.1
# 配置具有管理员权限的用户DN。
[AC-ldap-ldap1] login-dn cn=administrator,cn=users,dc=ldap,dc=com
# 配置具有管理员权限的用户密码。
[AC-ldap-ldap1] login-password simple admin!123456
# 配置查询用户的起始目录。
[AC-ldap-ldap1] user-parameters search-base-dn dc=ldap,dc=com
[AC-ldap-ldap1] quit
# 配置ISP域的认证方法为本地认证、本地授权。(目前设备暂不支持使用LDAP服务器进行802.1X授权,本配置中使用本地授权方法)
[AC] domain bbb
[AC-isp-bbb] authentication lan-access local
[AC-isp-bbb] authorization lan-access local
[AC-isp-bbb] quit
# 配置SSL服务器端策略sp1,指定使用的PKI域为eappki。
[AC] ssl server-policy sp1
[AC-ssl-server-policy-sp1] pki-domain eappki
[AC-ssl-server-policy-sp1] quit
# 配置EAP Profile,指定认证方法为EAP-TLS。
[AC] eap-profile eapsvr
[AC-eap-prof-eapsvr] method tls
# 配置用于EAP认证的SSL端服务器策略为sp1。
[AC-eap-prof-eapsvr] ssl-server-policy sp1
# 配置使用LDAP数据库查询用户身份,引用LDAP方案ldap1。
[AC-eap-prof-eapsvr] user-credentials ldap-scheme ldap1
[AC-eap-prof-eapsvr] quit
# 配置本地服务器认证所使用的EAP Profile为eapsvr。
[AC] local-server authentication eap-profile eapsvr
# 开启全局的端口安全特性。
[AC] port-security enable
# 配置无线dot1x用户的认证方式。
[AC] dot1x authentication-method eap
# 设置无线端口安全模式为userLoginSecureExt。
[AC] interface wlan-ess 1
[AC-WLAN-ESS1] port-security port-mode userlogin-secure-ext
# 使能端口的密钥协商功能。
[AC-WLAN-ESS1] port-security tx-key-type 11key
# 关闭802.1X的在线用户握手功能。
[AC-WLAN-ESS1] undo dot1x handshake
# 关闭802.1X多播触发功能。
[AC-WLAN-ESS1] undo dot1x multicast-trigger
# 配置接口的强制认证域为bbb。(所有从该接口接入的802.1X用户将被强制使用该认证域来进行认证、授权和计费。该配置不是必须的,可根据实际组网情况选配)
[AC-WLAN-ESS1] dot1x mandatory-domain bbb
[AC-WLAN-ESS1] quit
# 创建服务模板。
[AC] wlan service-template 1 crypto
[AC-wlan-st-1] ssid sectest
[AC-wlan-st-1] bind WLAN-ESS 1
[AC-wlan-st-1] authentication-method open-system
[AC-wlan-st-1] cipher-suite tkip
[AC-wlan-st-1] security-ie wpa
[AC-wlan-st-1] service-template enable
使用命令display dot1x interface wlan-ess 1可以查看802.1X的配置情况。当802.1X用户使用证书成功通过EAP认证上线后,可使用命令display connection查看到上线用户的连接情况。
有部分无线客户端需要临时通过AP(序列ID为210235A29G007C000020)接入网络,在AC上进行本地认证,认证方法为EAP-TLS。为简化管理,管理员在AC上为这些用户建立临时使用的来宾帐户,并做以下控制:
· 来宾帐户的有效期为2011/08/08的12:00:00。
· 仅允许SSID为aabbcc的用户使用来宾帐户登录。
图1-51 无线用户临时接入组网图
· 若使用Windows XP的802.1X客户端,则需要正确设置此连接的网络属性:在网络属性的“验证”页签中,确保选中“启用此网络的 IEEE 802.1x 验证”,并选择要用于此连接的EAP认证类型为“智能卡或其它证书”。
· 使用iNode的802.1X客户端时,则需要选中“启动高级认证”前的复选框,选择“证书认证”选项,点击<证书设置>按钮,在认证类型中选择“EAP-TLS”选项。
(1) 获取CA证书和本地证书
若AC上已经保存了CA证书文件和本地证书文件,则使用离线方式将其导入本地。否则,需要在线申请AC的本地证书并获取CA证书。证书所在的PKI域为eappki。PKI的具体配置请参见“PKI配置”,此处略。
(2) 配置SSL服务器端策略
# 配置SSL服务器端策略eapsvr,指定使用的PKI域为eappki。
<AC> system-view
[AC] ssl server-policy eapsvr
[AC-ssl-server-policy-eapsvr] pki-domain eappki
[AC-ssl-server-policy-eapsvr] quit
(3) 配置端口安全
# 全局使能端口安全。
[AC] port-security enable
# 配置802.1X的认证方法为EAP。
[AC] dot1x authentication-method eap
# 配置WLAN接口以及端口安全模式。
[AC] interface wlan-ess 1
[AC-WLAN-ESS1] port-security port-mode userlogin-secure-ext
# 关闭802.1X的组播触发功能。
[AC-WLAN-ESS1] undo dot1x multicast-trigger
# 关闭802.1X的在线用户握手功能。
[AC-WLAN-ESS1] undo dot1x handshake
# 配置接口的强制认证域为test。(所有从该接口接入的802.1X用户将被强制使用该认证域来进行认证、授权和计费。该配置不是必须的,可根据实际组网情况选配)
[AC-WLAN-ESS1] dot1x mandatory-domain test
[AC-WLAN-ESS1] quit
(4) 配置AAA方案
# 创建ISP域,并配置AAA本地认证、授权方案。
[AC] domain test
[AC-isp-test] authentication lan-access local
[AC-isp-test] authorization lan-access local
[AC-isp-test] quit
# 配置test域为缺省域。
[AC] domain default enable test
(5) 配置本地EAP服务器
# 配置EAP Profile,指定认证方法为EAP-TLS。
[AC] eap-profile eapsvr
[AC-eap-prof-eapsvr] method tls
# 配置用于EAP认证的SSL服务器端策略为eapsvr。
[AC-eap-prof-eapsvr] ssl-server-policy eapsvr
[AC-eap-prof-eapsvr] quit
# 配置本地EAP服务器,并指定使用的EAP Profile为eapsvr。
[AC] local-server authentication eap-profile eapsvr
(6) 配置WLAN服务
# 配置服务模板。
[AC] wlan service-template 1 clear
[AC-wlan-st-1] ssid aabbcc
[AC-wlan-st-1] bind WLAN-ESS 1
[AC-wlan-st-1] authentication-method open-system
[AC-wlan-st-1] service-template enable
[AC-wlan-st-1] quit
# 配置AP。
[AC] wlan ap 1 model WA2100
[AC-wlan-ap-1] serial-id 210235A29G007C000020
[AC-wlan-ap-1] radio 1 type dot11g
[AC-wlan-ap-1-radio-1] service-temple 1
[AC-wlan-ap-1-radio-1] radio enable
(7) 配置来宾帐户
# 创建名称为manager的User Profile,并设置允许接入WLAN的SSID为aabbcc。
[AC] user-profile manager
[AC-user-profile-manager] wlan permit-ssid aabbcc
[AC-user-profile-manager] quit
有关基于SSID的WLAN接入控制的详细介绍,请参见“WLAN配置指导”中的“WLAN服务配置”。
# 使能User Profile。
[AC] user-profile manager enable
# 创建来宾帐户guest,并设置密码和服务类型。
[AC] local-user guest
[AC-luser-guest] password simple guest
[AC-luser-guest] sevice-type lan-access
# 配置来宾帐户的有效期为2011/08/08的12:00:00。
[AC-luser-guest] expiration-date 12:00:00-2011/08/08
# 配置来宾帐户的授权User-Profile为manager。
[AC-luser-guest] authorization-attribute user-profile manager
[AC-luser-guest] quit
完成以上配置后,在2011/08/08的12:00:00之前,SSID为aabbcc的无线客户端可使用认证以来宾帐户的身份成功通过本地EAP认证。
用户认证/授权总是失败。
(1) 设备与RADIUS服务器之间存在通信故障。
(2) 用户名不是“userid@isp-name”的形式,或设备上没有正确配置用于认证该用户的ISP域。
(3) RADIUS服务器的数据库中没有配置该用户。
(4) 用户侧输入的密码不正确。
(5) RADIUS服务器和设备的报文共享密钥不同。
(1) 使用ping命令检查设备与RADIUS服务器是否可达。
(2) 使用正确形式的用户名或在设备上确保正确配置了用于该用户认证的ISP域。
(3) 检查RADIUS服务器的数据库以保证该用户的配置信息确实存在。
(4) 确保接入用户输入正确的密码。
(5) 检查两端的共享密钥,并确保两端一致。
RADIUS报文无法传送到RADIUS服务器。
(1) 设备与RADIUS服务器之间的存在通信故障。
(2) 设备上没有设置相应的RADIUS服务器IP地址。
(3) 认证/授权和计费服务的UDP端口设置不正确。
(4) RADIUS服务器的认证/授权和计费端口被其它应用程序占用。
(1) 确保线路通畅。
(2) 确保正确设置RADIUS服务器的IP地址。
(3) 确保与RADIUS服务器提供的端口号一致。
(4) 确保RADIUS服务器上的认证/授权和计费端口可用。
用户认证通过并获得授权,但是计费功能出现异常。
(1) 计费端口号设置不正确。
(2) 计费服务器和认证/授权服务器不是同一台机器,设备却要求认证/授权和计费功能属于同一个服务器(IP地址相同)。
(1) 正确设置RADIUS计费端口号。
(2) 确保设备的认证/授权和计费服务器的设置与实际情况相同。
HWTACACS的常见配置错误举例与RADIUS基本相似,可以参考以上内容。
用户认证/授权失败。
(1) 设备与LDAP服务器之间存在通信故障。
(2) 配置的认证/授权服务器IP地址或端口号不正确。
(3) 用户名不是“userid@isp-name”的形式,或设备上没有正确配置用于认证该用户的ISP域。
(4) LDAP服务器目录中没有配置该用户。
(5) 用户输入的密码不正确。
(6) 具有管理员权限的用户DN或密码没有配置。
(7) 设备上配置的用户参数(如用户名属性)、组参数与服务器上的配置不对应。
(8) 认证操作时,没有配置LDAP方案用户查询的起始DN。
(9) 授权操作时,没有配置LDAP方案组查询的起始DN。
(1) 使用ping命令检查设备与LDAP服务器是否可达。
(2) 确保配置的认证/授权服务器IP地址与端口号与LDAP服务器实际使用的IP地址和端口号相符。
(3) 使用正确形式的用户名或在设备上确保正确配置了用于该用户认证的ISP域。
(4) 检查LDAP服务器目录以保证该用户的配置信息确实存在。
(5) 确保输入用户密码正确。
(6) 确保配置了正确的管理员用户DN和密码。
(7) 确保设备上的用户参数(如用户名属性)、组参数配置与LDAP服务器上的配置相同。
(8) 认证操作时,确保配置了用户查询的起始DN。
(9) 授权操作时,确保配置了组查询的起始DN。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!