1.4 配置RADIUS协议
RADIUS协议配置是以RADIUS方案为单位进行的,一个RADIUS方案在实际组网环境中既可以运用于一台独立的RADIUS服务器,也可以运用于两台配置相同、但IP地址不同的主、从RADIUS服务器。当创建一个新的RADIUS方案之后,需要对属于此方案的RADIUS服务器的IP地址和UDP端口号进行设置,这些服务器包括认证/授权和计费服务器,而每种服务器又有主服务器和从服务器的区别。每个RADIUS方案的属性包括:主服务器的IP地址、从服务器的IP地址、共享密钥以及RADIUS服务器类型等。
在实际组网环境中,上述参数的设置需要根据具体需求来决定。但是必须至少设置一个认证/授权服务器和一个计费服务器(如果不配置计费服务器,则必须配置accounting optional命令)。同时,保证交换机上的RADIUS服务端口设置与RADIUS服务器上的端口设置保持一致。
说明:
实际上,RADIUS协议配置仅仅定义了交换机和RADIUS服务器之间进行信息交互所必需的一些参数。为了使这些参数能够生效,还必须在某个ISP域视图下指定该域引用配置有上述参数的RADIUS方案。具体配置命令的细节请参见1.3 配置AAA。
1.4.1 创建RADIUS方案
RADIUS协议的配置是以RADIUS方案为单位进行的。在进行其它RADIUS协议配置之前,必须先创建RADIUS方案并进入其视图。
注意:
一个RADIUS方案可以同时被多个ISP域引用。
1.4.2 配置RADIUS认证/授权服务器
注意:
RADIUS服务器的授权信息是随认证应答报文发给RADIUS客户端的,故不需要指定单独的授权服务器。
在实际组网环境中,可以指定2台RADIUS服务器分别作为主、从认证/授权服务器;也可以指定一台服务器既作为主认证/授权服务器,又作为从认证/授权服务器。
系统缺省创建的system方案使用的主认证服务器的IP为127.0.0.1,端口号为1645。
1.4.3 配置RADIUS计费服务器
注意:
在实际组网环境中,可以指定2台RADIUS服务器分别作为主、从计费服务器;也可以指定一台服务器既作为主计费服务器,又作为从计费服务器。此外,由于RADIUS协议采用不同的UDP端口来收发认证/授权和计费报文,因此必须将认证/授权端口号和计费端口号设置得不同。
如果RADIUS计费服务器对交换机发出的停止计费请求报文没有响应,且交换机使能了停止计费报文重传功能,交换机应将其缓存在本机上,然后重新发送直到RADIUS计费服务器产生响应,或者在重新发送的次数达到指定的次数限制后将其丢弃。
交换机提供对连续实时计费失败次数限制的设置——在交换机向RADIUS服务器发出的实时计费失败的次数超过所设定的限度时,交换机将切断用户连接。
系统缺省创建的system方案使用的主计费服务器的IP为127.0.0.1,端口号为1646。
目前RADIUS协议不支持对FTP用户进行计费。
1.4.4 配置RADIUS报文的共享密钥
RADIUS客户端与RADIUS服务器使用MD5算法来加密RADIUS报文,双方通过设置共享密钥来验证报文的合法性。只有在密钥一致的情况下,双方才能彼此接收对方发来的报文并作出响应。
注意:
在认证/授权服务器与计费服务器不相同且这两台服务器中的共享密钥也不同时,必须分别设置认证/授权报文和计费报文的共享密钥。
1.4.5 配置RADIUS请求报文的最大传送次数
由于RADIUS协议采用UDP报文来承载数据,因此其通信过程是不可靠的。如果RADIUS服务器在应答超时定时器规定的时长内没有响应交换机,则交换机有必要向RADIUS服务器重传RADIUS请求报文。如果累计的传送次数超过最大传送次数而RADIUS服务器仍旧没有响应,则交换机将认为本次认证失败。
1.4.6 配置支持的RADIUS服务器的类型
1.4.7 配置RADIUS服务器的状态
对于某个RADIUS方案中的主、从服务器(无论是认证/授权服务器还是计费服务器),当主服务器因故障而导致其与交换机的通信中断时,交换机会主动地与从服务器交互报文。
当主服务器变为block的状态超过timer quiet命令设定的时间后,若有RADIUS请求,交换机会尝试与主服务器通信。如果主服务器恢复正常,交换机会立即恢复与其通信,而不与从服务器通信,同时,主服务器的状态恢复为active,从服务器的状态不变。
当主服务器与从服务器的状态都为active或block时,交换机将只把报文发送到主服务器上。
1.4.8 配置发送给RADIUS服务器的数据相关属性
注意:
接入用户通常以“userid@isp-name”的格式命名,“@”后面的部分为ISP域名,设备就是通过该域名来决定将用户归于哪个ISP域的。但是,有些较早期的RADIUS服务器不能接受携带有ISP域名的用户名,在这种情况下,有必要将用户名中携带的域名去除后再传送给RADIUS服务器。因此,设备通过user-name-format命令以指定发送给RADIUS服务器的用户名是否携带有ISP域名。
如果指定某个RADIUS方案不允许用户名中携带有ISP域名,那么请不要在两个乃至两个以上的ISP域中同时设置使用该RADIUS方案,否则,会出现虽然实际用户不同(在不同的ISP域中)、但RADIUS服务器认为用户相同(因为传送到它的用户名相同)的错误。
对于802.1x用户,如果采用EAP认证方式,则交换机会把客户端输入的内容直接封装后发给服务器,这种情况下user-name-format的设置对其无效。
系统缺省创建的system方案的用户名不带域名。
1.4.9 配置本地RADIUS认证服务器
注意:
采用本地RADIUS认证服务器功能时,其认证/授权服务的UDP端口号必须为1645,计费服务的UDP端口号为1646;服务器的IP地址都设置为本地服务器的地址。
local-server命令配置的报文加密密钥(key password参数)必须与在RADIUS方案视图下用key authentication命令配置的认证/授权报文加密密钥一致。
包括系统缺省创建的本地RADIUS认证服务器在内,设备最多支持16个本地RADIUS认证服务器。
1.4.10 配置RADIUS服务器的定时器
如果在RADIUS请求报文(认证/授权请求或计费请求)传送出去一段时间后,设备还没有得到RADIUS服务器的响应,则有必要重传RADIUS请求报文,以保证用户确实能够得到RADIUS服务,这段时间被称为RADIUS服务器响应超时时长。交换机系统中用于控制这个时长的定时器就被称为RADIUS服务器响应超时定时器。
对于某个RADIUS方案中的主、从服务器(无论是认证/授权服务器还是计费服务器),当主服务器因故障而导致其与设备的通信中断时,设备会主动地与从服务器交互报文。
当主服务器变为block的状态超过timer quiet命令设定的时间后,当有RADIUS请求时,设备会尝试与主服务器通信,如果主服务器恢复正常,设备会立即恢复与其通信,而不继续与从服务器通信。同时,主服务器的状态恢复为active,从服务器的状态不变。
为了对用户实施实时计费,有必要设置实时计费的时间间隔。在设置了该属性以后,每隔设定的时间,交换机会向RADIUS服务器发送一次在线用户的计费信息。
1.4.11 配置系统发送RADIUS 服务器状态变为Down的Trap
说明:
该配置对所有的RADIUS方案都生效。
在设备向RADIUS服务器发送报文而未收到响应的次数超过配置的重试次数后,设备就认为相应的服务器状态变为Down
1.4.12 配置设备重启用户再认证功能
说明:
本功能适用于RADIUS认证/计费服务器为CAMS的情况
在交换机与CAMS配合实现认证/授权/计费的AAA方案中,限制唯一性用户(指在CAMS上设置了“在线数量限制”为1的用户)通过认证/授权、开始计费时,如果交换机发生重启,在CAMS进行用户在线检查前,当用户再次登录交换机时,交换机会提示该用户已经在线,导致该用户无法正常访问网络资源。只有在网络管理员手工删除该用户的在线信息后,该用户才可以再次登录。
解决上述问题的方法是在交换机上启动设备重启用户再认证功能。启动设备重启用户再认证功能后,交换机每次发生重启时:
交换机生成Accounting-On报文,该报文主要包括NAS-ID、NAS-IP(源IP)和会话ID信息。
交换机每隔设定的时间间隔向CAMS发送Accouting-On报文。
CAMS收到Accounting-On报文后,立即向交换机发送一个响应报文,并根据Accouting-On报文中的NAS-ID、NAS-IP和会话ID,找到并删除通过交换机接入的原用户在线信息,并按照最后一次计费更新报文结束计费。
当交换机收到CAMS的响应报文后,即停止发送Accounting-On报文。
如果交换机发送Accounting-On报文的次数已达到设定的最大发送次数,但是仍没有收到CAMS的响应报文,则交换机停止发送Accounting-On报文。
说明:
Accounting-On报文中的主要属性:NAS-ID、NAS-IP和会话ID由交换机自动生成,其中NAS-IP还可以通过命令(nas-ip)手工配置,如果手工配置,请注意配置正确、合法的IP地址;如果不配置,交换机会自动选择VLAN虚接口的IP地址作为NAS-IP地址。
1.5 配置HWTACACS协议
1.5.1 创建HWTACACS方案
HWTACACS协议的配置是以HWTACACS方案为单位进行的。在进行其它HWTACACS协议配置之前,必须先创建HWTACACS方案并进入其视图。
注意:
系统最多支持配置16个HWTACACS方案。只有当方案没有用户使用时,才能删除该方案。
如果设备已经使能Fabric功能,将不能创建HWTACACS方案,二者互斥。
1.5.2 配置HWTACACS认证服务器
注意:
主认证服务器和从认证服务器的IP地址不能相同,否则将提示配置不成功。
只有当没有活跃的用于发送认证报文的TCP连接使用该认证服务器时,才允许删除该服务器。
1.5.3 配置HWTACACS授权服务器
注意:
主授权服务器和从授权服务器的IP地址不能相同,否则将提示配置不成功。
只有当没有活跃的用于发送授权报文的TCP连接使用该授权服务器时,才允许删除该服务器。
1.5.4 配置HWTACACS计费服务器
注意:
主计费服务器和从计费服务器的IP地址不能相同,否则将提示配置不成功。
只有当没有活跃、用于发送计费报文的TCP连接使用该计费服务器时,才允许删除该服务器。
目前HWTACACS协议不支持对FTP用户进行计费。
1.5.5 配置HWTACACS报文的共享密钥
使用TACACS服务器作为AAA服务器时,可设置密钥以提高设备与TACACS服务器通信的安全性。
TACACS客户端(即设备系统)与TACACS服务器使用MD5算法来加密交互的HWTACACS报文,双方通过设置共享密钥来验证报文的合法性。只有在密钥一致的情况下,双方才能彼此接收对方发来的报文并作出响应。因此,必须保证设备上设置的共享密钥与TACACS服务器上的完全一样。
1.5.6 配置发送给TACACS服务器的数据相关属性
注意:
用户名通常采用“userid@isp-name”格式,“@”后面的部分为域名。如果TACACS服务器不接受带域名的用户名时,可以配置将用户名的域名去除后再传送给TACACS服务器。
1.5.7 配置TACACS服务器的定时器
注意:
为了对用户实施实时计费,有必要设置实时计费的时间间隔。在设置了该属性以后,每隔设定的时间,设备会向TACACS服务器发送一次在线用户的计费信息。按照协议,如果服务器对实时计费报文没有正常响应,设备也不会强制切断在线用户。
实时计费间隔时间取值必须为3的整数倍。
实时计费间隔的取值对设备和TACACS服务器的性能有一定的相关性要求—取值越小,对设备和TACACS服务器的性能要求越高。
1.6 AAA&RADIUS&HWTACACS协议显示和维护
完成上述配置后,在任意视图下执行display命令可以显示配置后AAA、RADIUS的运行情况,通过查看显示信息验证配置的效果。
在用户视图下,执行reset命令可以清除相关统计信息。
1.7 AAA&RADIUS协议典型配置举例
1.7.1 Telnet/SSH用户通过RADIUS服务器认证的应用配置
说明:
SSH用户和Telnet用户通过RADIUS服务器进行认证的配置方法类似,下面的描述以Telnet用户的远端认证为例。
1. 组网需求
在图1-7所示的环境中,需要通过配置交换机实现RADIUS服务器对登录交换机的Telnet用户进行认证。
一台RADIUS服务器(担当认证RADIUS服务器的职责)与交换机相连,服务器IP地址为10.110.91.164;
设置交换机与认证RADIUS服务器交互报文时的共享密钥为“expert”。
RADIUS服务器可使用CAMS服务器。使用第三方RADIUS服务器时,RADIUS方案中的server-type可以选择standard类型或huawei类型。
在RADIUS服务器上设置与交换机交互报文时的共享密钥为“expert”;
设置验证的端口号;
添加Telnet用户名及登录密码。
如果RADIUS方案中设置交换机不从用户名中去除用户域名而是一起传给RADIUS服务器,RADIUS服务器上添加的Telnet用户名应为“userid@isp-name”形式。
2. 组网图
3. 配置步骤
# 配置Telnet用户采用AAA认证方式。
<Quidway> system-view
[Quidway] user-interface vty 0 4
[Quidway-ui-vty0-4] authentication-mode scheme
# 配置domain。
[Quidway] domain cams
[Quidway-isp-cams] access-limit enable 10
[Quidway-isp-cams] quit
# 配置RADIUS方案。
[Quidway] radius scheme cams
[Quidway-radius-cams] accounting optional
[Quidway-radius-cams] primary authentication 10.110.91.164 1812
[Quidway-radius-cams] key authentication expert
[Quidway-radius-cams] server-type Huawei
[Quidway-radius-cams] user-name-format with-domain
[Quidway-radius-cams] quit
# 配置domain和RADIUS的关联。
[Quidway] domain cams
[Quidway-isp-cams] scheme radius-scheme cams
Telnet用户登录时输入用户名userid @cams,以使用cams域进行认证。
1.7.2 FTP/Telnet用户本地认证配置
说明:
FTP用户与Telnet用户通过本地认证的配置方法类似,下面描述仅以Telnet用户为例。
1. 组网需求
如下图所示的环境中,现需要通过配置交换机实现对登录交换机的Telnet用户进行本地认证。
2. 组网图
3. 配置步骤
(1) 方法一:使用本地认证方案。
# 进入系统视图。
<Quidway> system-view
System View: return to User View with Ctrl+Z.
[Quidway]
# 配置Telnet用户采用AAA认证方式。
[Quidway] user-interface vty 0 4
[Quidway-ui-vty0-4] authentication-mode scheme
[Quidway-ui-vty0-4] quit
# 创建本地用户telnet。
[Quidway] local-user telnet
[Quidway-luser-telnet] service-type telnet
[Quidway-luser-telnet] password simple huawei
[Quidway-luser-telnet] attribute idle-cut 300 access-limit 5
[Quidway] domain system
[Quidway-isp-system] scheme local
使用Telnet登录时输入用户名为telnet@system,以使用system域进行认证。
(2) 方法二:使用本地RADIUS服务器
这种方法与1.7.1 节中的远端RADIUS认证方法类似,只需要将1.7.1 节中“配置RADIUS方案”中的服务器IP地址修改为127.0.0.1,认证密码修改为huawei,认证服务的UDP端口号修改为1645,并配置本地用户即可(本地用户名是否带域名的设置需要与RADIUS方案中的设置一致)。
1.7.3 配置Telnet用户通过TACACS服务器进行认证和授权
1. 组网需求
通过配置交换机实现TACACS服务器对登录交换机的Telnet用户进行认证、授权。
一台TACACS服务器(其担当认证、授权、计费服务器的职责)与交换机相连,服务器IP地址为10.110.91.164,设置交换机与认证、授权、计费TACACS服务器交互报文时的共享密钥均为“expert”,设置交换机除去用户名中的域名后再将之传给TACACS服务器。
在TACACS服务器上设置与交换机交互报文时的共享密钥为“expert”。
2. 组网图
3. 配置步骤
# 添加Telnet用户。
此处略。
# 配置HWTACACS方案。
<Quidway> system-view
[Quidway] hwtacacs scheme hwtac
[Quidway-hwtacacs-hwtac] primary authentication 10.110.91.164 49
[Quidway-hwtacacs-hwtac] primary authorization 10.110.91.164 49
[Quidway-hwtacacs-hwtac] key authentication expert
[Quidway-hwtacacs-hwtac] key authorization expert
[Quidway-hwtacacs-hwtac] user-name-format without-domain
[Quidway-hwtacacs-hwtac] quit
# 配置domain引用名为hwtac的HWTACACS方案。
[Quidway] domain hwtacacs
[Quidway-isp-hwtacacs] scheme hwtacacs-scheme hwtac
1.8 AAA&RADIUS&HWTACACS常见配置错误举例
1.8.1 RADIUS常见配置错误举例
RADIUS协议在TCP/IP协议族中处于应用层,它主要规定交换机与ISP的RADIUS服务器间如何交互用户信息,因此它失效的可能性比较大。
错误之一:用户认证/授权总是失败
错误排除:
(1) 用户名不是“userid@isp-name”的形式,或设备没有指定缺省的ISP域——请使用正确形式的用户名或在设备中设定缺省的ISP域。
(2) RADIUS服务器的数据库中没有配置该用户——检查RADIUS服务器的数据库以保证该用户的配置信息确实存在。
(3) 用户侧输入的密码不正确——请保证接入用户输入正确的密码。
(4) RADIUS服务器和设备的报文共享密钥不同——请仔细比较两端的共享密钥,确保它们相同。
(5) 设备与RADIUS服务器之间存在通信故障(可以通过在设备上ping RADIUS服务器来检查)——请保证设备与RADIUS服务器之间能够正常通信。
错误之二:RADIUS报文无法传送到RADIUS服务器
错误排除:
(1) 设备与RADIUS服务器之间的通信线路不通(物理层/链路层)——请保证线路通畅。
(2) 设备上没有设置相应的RADIUS服务器IP地址——请保证正确设置RADIUS服务器的IP地址。
(3) 认证/授权和计费服务的UDP端口设置得不正确——请保证与RADIUS服务器提供的端口号一致。
错误之三:用户认证通过并获得授权,但是不能向RADIUS服务器传送计费话单。
错误排除:
(1) 计费端口号设置得不正确——请正确设置RADIUS计费端口号。
(2) 计费服务器和认证/授权服务器不是同一台机器,设备却要求认证/授权和计费在同一个服务器(IP地址相同)——请保证设备的认证/授权和计费服务器的设置与实际情况相同。
1.8.2 HWTACACS常见配置错误举例
HWTACACS的常见配置错误举例与RADIUS基本相似,可以参考上面内容。
案例配置:ACS+AAA+RADIUS:
配置步骤:
AAA服务器配置:
交换机配置:
创建radius
[Quidway] radius scheme system
[Quidway-radius-system] primary authentication 192.168.100.100 1812
[Quidway-radius-system] primary accounting 192.168.100.100 1813
[Quidway-radius-system] key authentication test@123
[Quidway-radius-system] key accounting test@123
[Quidway-radius-system] user-name-format with-domain
[Quidway-radius-system] quit
# 创建domain,配置domain和RADIUS的关联。
[Quidway] domain wj
[Quidway-isp-system] scheme radius-scheme wj
[Quidway-isp-system] accounting optional
#在全局模式下,指定domain system 为默认的缺省域。
[Quidway] domain default enable wj
# 配置Terminal用户采用AAA认证方式。
[Quidway-ui-con]user-interface vty 0 4
[Quidway-ui-con] authentication-mode scheme
配置信息查看:
在pc机上telnet验证: