RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)是一种基于C/S结构的分布式AAA协议,与AAA功能配合来为用户提供AAA安全服务。
在提供AAA安全服务时,网络设备作为RADIUS客户端向RADIUS服务端提供用户信息,发起安全服务请求;远程RADIUS服务器作为RADIUS服务端,存放用户信息和网络服务信息,通过响应RADIUS客户端的请求来为用户提供安全服务。
RADIUS常应用于安全性要求较高,同时又允许远程用户访问的网络环境。作为一种完全开放的协议,诸多系统(UNIX、WINDOWS 2000、WINDOWS 2008等)均将RADIUS协议作为系统组件安装,也因此,RADIUS服务器成为目前应用最广泛的安全服务器。
客户端/服务器模式
RADIUS协议使用客户端/服务器模式,分为RADIUS客户端和RADIUS服务器两部分。
RADIUS客户端作为RADIUS请求的发起端,通常运行在网络访问服务器(NAS)上,负责向RADIUS服务器提供用户信息,并接收处理RADIUS服务器的应答信息(接受用户接入、拒绝用户接入、要求继续提供用户特定信息等)。
RADIUS服务器维护RADIUS客户端的IP、共享密钥、认证用户信息等,通过应答RADIUS客户端的请求信息提供认证、授权、记账等服务。通常一个RADIUS服务器对应多个RADIUS客户端。
共享密钥
共享密钥是一串RADIUS客户端和服务器共享的字符串,用于在RADIUS报文传输过程中对用户密码进行加解密,生成报文校验字段等,保证RADIUS通信安全。
RADIUS服务器组
AAA安全服务中的安全方法以服务器组为单位。RADIUS协议同样以RADIUS服务器组为单位提供AAA安全服务。一个安全方法对应一个RADIUS服务器组,每个RADIUS服务器组可配置一至多台RADIUS服务器。
如果在一个RADIUS服务器组中配置了多台RADIUS服务器,当设备与第一台RADIUS服务器通信失败或第一台RADIUS服务器处于不可达状态时,设备将自动尝试与第二台RADIUS服务器通信,以此类推,直到通信成功或者与所有RADIUS服务器都通信失败为止。
报文结构
图1-1RADIUS报文结构图中各个字段含义见表1-1。
字段 |
长度 |
含义 |
说明 |
---|---|---|---|
Code |
1字节 |
标识报文类型 |
常用报文类型对应数值和含义如下: 1:Access-Request,认证请求报文 2:Access-Accept,认证接受报文 3:Access-Reject,认证拒绝报文 4:Accounting-Request,记账请求报文 5:Accounting-Response,记账应答报文 11:Access-Challenge,认证质询报文 |
Identifier |
1字节 |
匹配请求和响应报文 |
同一类型的请求报文和响应报文的Identifier值相同 |
Length |
2字节 |
RADIUS报文的长度 |
值为Code、Identifier、Length、Authenticator、Attributes五个字段之和 若实际收到的报文长度大于Length值,则超过Length值的部分内容将被作为填充值忽略掉;若实际收到的报文长度小于Length值,则丢弃该报文 |
Authenticator |
16字节 |
验证报文和 用户密码加解密 |
无 |
Attributes |
变长 |
携带认证、授权、记账信息 |
通常包含多个属性,属性采用TLV(Type、Length、Value)三元组结构表示 |
RADIUS属性
RADIUS属性用于携带认证、授权、记账信息,采用TLV(Type、Length、Value)三元组结构表示,如表1-2。
字段 |
长度 |
含义 |
---|---|---|
Type |
1字节 |
属性类型 |
Length |
1字节 |
属性(TLV)总长度 |
Value |
变长 |
属性信息的详细描述 |
RADIUS属性对照表
属性号 |
属性名 |
属性号 |
属性名 |
---|---|---|---|
1 |
User-Name |
43 |
Acct-Output-Octets |
2 |
User-Password |
44 |
Acct-Session-Id |
3 |
CHAP-Password |
45 |
Acct-Authentic |
4 |
NAS-IP-Address |
46 |
Acct-Session-Time |
5 |
NAS-Port |
47 |
Acct-Input-Packets |
6 |
Service-Type |
48 |
Acct-Output-Packets |
7 |
Framed-Protocol |
49 |
Acct-Terminate-Cause |
8 |
Framed-IP-Address |
50 |
Acct-Multi-Session-Id |
9 |
Framed-IP-Netmask |
51 |
Acct-Link-Count |
10 |
Framed-Routing |
52 |
Acct-Input-Gigawords |
11 |
Filter-ID |
53 |
Acct-Output-Gigawords |
12 |
Framed-MTU |
55 |
Event-Timestamp |
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 |
18 |
Reply-Message |
64 |
Tunnel-Type |
19 |
Callback-Number |
65 |
Tunnel-Medium-Type |
20 |
Callback-ID |
66 |
Tunnel-Client-Endpoint |
22 |
Framed-Route |
67 |
Tunnel-Server-Endpoint |
23 |
Framed-IPX-Network |
68 |
Acct-Tunnel-Connection |
24 |
State |
69 |
Tunnel-Password |
25 |
Class |
70 |
ARAP-Password |
26 |
Vendor-Specific |
71 |
ARAP-Features |
27 |
Session-Timeout |
72 |
ARAP-Zone-Access |
28 |
Idle-Timeout |
73 |
ARAP-Security |
29 |
Termination-Action |
74 |
ARAP-Security-Data |
30 |
Called-Station-Id |
75 |
Password-Retry |
31 |
Calling-Station-Id |
76 |
Prompt |
32 |
NAS-Identifier |
77 |
Connect-Info |
33 |
Proxy-State |
78 |
Configuration-Token |
34 |
Login-LAT-Service |
79 |
EAP-Message |
35 |
Login-LAT-Node |
80 |
Message-Authenticator |
36 |
Login-LAT-Group |
81 |
Tunnel-Private-Group-id |
37 |
Framed-AppleTalk-Link |
82 |
Tunnel-Assignment-id |
38 |
Framed-AppleTalk-Network |
83 |
Tunnel-Preference |
39 |
Framed-AppleTalk-Zone |
84 |
ARAP-Challenge-Response |
40 |
Acct-Status-Type |
85 |
Acct-Interim-Interval |
41 |
Acct-Delay-Time |
86 |
Acct-Tunnel-Packets-Lost |
42 |
Acct-Input-Octets |
87 |
NAS-Port-Id |
RADIUS属性介绍
该小节用于对部分重要属性进行说明。
31号属性
RADIUS客户端向RADIUS服务器发送请求报文时,在31号属(Calling-Station-ID)中填充内容用于标识认证用户的身份,常使用用户的MAC作为属性内容。例:在IEEE 802.1x认证中,设备使用IEEE 802.1x客户端所在设备的MAC地址作为属性内容。
由于不同RADIUS服务器对31号属性中MAC地址格式的要求不同,因此要保持RADIUS客户端使用的格式与服务器一致。目前支持配置以下三种MAC地址格式。
31号属性MAC地址格式表
MAC地址格式 |
说明 |
---|---|
ietf |
IETF(RFC3580)规定的标准格式,使用‘-’作为分隔符,如00-D0-F8-33-22-AC |
normal |
点分十六进制格式,使用“.”作为分隔符,如00d0.f833.22ac |
unformatted |
无分隔符(默认格式),如00d0f83322ac |
26号属性
26号属性(Vendor-Specific)也称私有属性,用于支持设备厂商自定义属性。设备厂商可在26号属性中封装多个自定义的TLV格式的属性。表1-5为锐捷公司支持的私有属性列表。
ID |
功能 |
TYPE |
扩展TYPE |
---|---|---|---|
1 |
max-down-rate |
1 |
76 |
2 |
port-priority |
2 |
77 |
3 |
user-ip |
3 |
3 |
4 |
VLAN-id |
4 |
4 |
5 |
last-supplicant-version |
5 |
5 |
6 |
net-ip |
6 |
6 |
7 |
user-name |
7 |
7 |
8 |
password |
8 |
8 |
9 |
file-directory |
9 |
9 |
10 |
file-count |
10 |
10 |
11 |
file-name-0 |
11 |
11 |
12 |
file-name-1 |
12 |
12 |
13 |
file-name-2 |
13 |
13 |
14 |
file-name-3 |
14 |
14 |
15 |
file-name-4 |
15 |
15 |
16 |
max-up-rate |
16 |
16 |
17 |
current-supplicant-version |
17 |
17 |
18 |
flux-max-high32 |
18 |
18 |
19 |
flux-max-low32 |
19 |
19 |
20 |
proxy-avoid |
20 |
20 |
21 |
dailup-avoid |
21 |
21 |
22 |
ip-privilege |
22 |
22 |
23 |
login-privilege |
42 |
42 |
26 |
IPv6-multicast-address |
79 |
79 |
27 |
IPv4-multicast-address |
87 |
87 |
62 |
sdg-type |
62 |
62 |
85 |
sdg-zone-name |
85 |
85 |
103 |
sdg-group-name |
103 |
103 |
RADIUS用于为用户提供认证、授权和记账,交互流程如图1-2所示。
RADIUS的认证和授权流程
用户输入用户名、密码等身份信息,并将其发送给RADIUS客户端。
RADIUS客户端接收用户的用户名、密码信息,并向RADIUS服务器发送认证请求报文。认证请求报文中的密码为加密形式。
RADIUS服务器收到认证请求后,验证用户名、密码信息是否合法。若合法则接受认证请求,并同时下发该用户的授权信息;若不合法,则拒绝该认证请求。
RADIUS的记账流程
若用户发起认证流程中,RADIUS服务器返回认证成功,则RADIUS客户端继续发送记账开始请求报文。
RADIUS服务器回应记账开始响应报文,开始记账。
若用户需要结束访问网络资源,则向RADIUS客户端申请断开连接。
RADIUS客户端发送记账结束请求报文。
RADIUS服务器返回记账结束响应报文,并停止记账。
用户断开连接,无法再访问网络资源。
RADIUS客户端向RADIUS服务器传送报文后,使用定时器检测RADIUS服务器是否应答。若在预期时间内RADIUS服务器未响应,则RADIUS客户端重传报文。主要有以下三种超时重传参数需要配置:
RADIUS服务器超时时间
RADIUS服务器的响应时间与其自身的性能、网络环境有关,需要根据实际情况配置合适的超时时间。
重传次数
记账更新是否重传
除了用户主动下线外,也可以通过RADIUS服务器下发消息强制认证用户下线。
RADIUS强制下线功能是一种基于RADIUS动态授权扩展协议中定义的用户下线管理方法,设备和RADIUS服务器通过DM消息(Disconnect-Messages)交互将认证通过的用户下线。RADIUS动态授权扩展协议使得不同厂商的设备和RADIUS服务器在用户下线的处理上能够互相兼容。
RADIUS服务器和设备之间的DM消息交互如下:
(1)RADIUS服务器主动向NAS设备的UDP3799端口发送Disconnect-Request消息,发起用户下线请求。
(2)NAS设备根据Disconnect-Request消息中携带的用户会话、用户名等信息来匹配用户,对其进行下线处理。
(3)NAS设备将处理结果通过Disconnect-Response消息发送给RADIUS服务器。
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 3576:Dynamic Authorization Extensions to Remote Authentication Dial In User Service (RADIUS)
配置RADIUS基本功能
配置RADIUS服务器组
(可选)配置RADIUS属性。以下配置任务请至少选择其中一项进行配置。
配置属性格式
配置锐捷私有属性
配置兼容其他厂商
(可选)配置RADIUS可达性检测
(可选)配置RADIUS报文的DSCP优先级
(可选)配置发送给RADIUS服务器的数据流和数据包的单位
(可选)配置accounting-on功能
(可选)配置记账报文复制功能
配置网络设备与RADIUS服务器的通信参数,保证设备与服务器之间通信正常,能够正确向RADIUS服务器发起AAA认证、授权、记账等功能的申请和应答。
配置RADIUS前应确保设备与RADIUS服务器间网络通信良好。
配置RADIUS IPv6认证前,应确保RADIUS服务器支持RADIUS IPv6认证。
进入特权模式。
enable
进入全局配置模式。
configure terminal
配置RADIUS远程服务器。
radius-server host { ipv4-address | ipv6-address } [ auth-port auth-port-number | acct-port acct-port-number ] * [ test username username [ ignore-acct-port ] [ ignore-auth-port ] [ idle-time idle-time ] ] [ key [ 0 | 7 ] text-string ]
缺省情况下,未配置RADIUS远程服务器。
若未把RADIUS安全服务器配置在某个RADIUS服务器组中,则设备与RADIUS服务器通信时使用全局路由表,否则使用该RADIUS服务器组所对应的VRF路由表。
配置设备和RADIUS服务器通信的共享密钥。
radius-server key [ 0 | 7 ] key
缺省情况下,未配置设备和RADIUS服务器通信的共享密钥。
共享密钥是设备和RADIUS安全服务器正确通信的基础,为使设备和RADIUS安全服务器能正常通信,必须在设备和RADIUS安全服务器上配置相同的共享密钥。
(可选)配置RADIUS报文的源地址。
ip radius source-interface interface-type interface-number
缺省情况下,RADIUS报文的源地址由网络层设置。
配置该命令后,设备使用该接口上的第一个IP地址作为RADIUS报文的源地址,应保证所配置的地址与RADIUS服务器通信正常。通过指定发往RADIUS服务器报文的源IP地址,能够减轻RADIUS服务器维护NAS信息的工作量。
(可选)配置设备发送RADIUS报文的源UDP端口。
radius-server source-port source-port
缺省情况下,设备发送RADIUS报文的源UDP端口为随机端口。
(可选)配置设备重发RADIUS报文请求前等待的时间。
radius-server timeout timeout
缺省情况下,设备重发RADIUS报文请求前等待的时间为5秒。
(可选)配置Web认证用户的记账更新报文重传的功能。
radius-server account update retransmit
缺省情况下,Web认证用户的记账更新报文重传的功能处于开启状态。
本配置不影响其他认证类型的用户。
(可选)配置RADIUS记帐报文复制并发往指定服务器组中的服务器。
radius-server accounting-copy group
缺省情况下,RADIUS记帐报文不会复制发往指定服务器组中的服务器。
该命令配置在接口下是指,将所在接口的用户的记账报文复制并发往指定服务器组中的服务器功能。
(可选)配置兼容用户名分装格式。
radius user-name compatible
缺省情况下,兼容用户名分装格式的功能处于关闭状态。
功能开启后,RADIUS报文中的用户名将按照客户端发来的格式封装,而不是UTF-8格式。
(可选)配置RADIUS报文中的NAS-IP-Address字段的值。
radius-server nas-ip-address key { ipv4-address | ipv6-address }
缺省情况下,配设置NAS-IP-Address字段的值。
每个RADIUS服务器组可添加一台或多台RADIUS服务器,整个服务器组作为一个整体为用户提供AAA服务。
RADIUS安全服务是AAA服务的一种,需要结合AAA功能使用,作为AAA方法列表中的一个方法为用户提供安全服务。
配置认证和记账方法列表时,可以分别指定不同的服务器组。
在自定义服务器组中,只能指定并应用默认服务器组中的服务器。
RADIUS服务器组支持指定VRF,在使用指定VRF的服务器组时,设备与远程服务器通信使用的源地址要在对应VRF中查找获取。但若使用命令ip radius source-interface指定请求报文的源接口时,则从该源接口获取到的IP地址优先于在VRF中查找得到的IP地址。
服务器组名不能使用预定义的关键字radius。
进入特权模式。
enable
进入全局配置模式。
configure terminal
配置RADIUS服务器组。
aaa group server radius group-name
缺省情况下,未配置RADIUS服务器组。
通过对RADIUS服务器进行分组,认证、计帐可以使用不同的服务器组来完成。
配置RADIUS服务器组引用服务器。
server { ipv4-address | ipv6-address }
缺省情况下,未配置AAA服务器组的服务器。
(可选)配置RADIUS服务器组的VRF。
ip vrf forwarding vrf-name
缺省情况下,未配置RADIUS服务器组使用的VRF。
RADIUS服务器组中配置的VRF,必须是在全局配置模式下通过vrf definition命令配置的合法VRF名字。
RADIUS属性用于携带报文交互过程中的认证、授权、记账信息,支持对属性的格式、私有属性处理方法、厂商兼容性等进行配置。
以下所有配置任务均为可选配置,请根据实际情况选择配置。
配置属性格式
配置锐捷私有属性
配置兼容其他厂商
该功能用于配置属性内容在封装和解析时的格式。
进入特权模式。
enable
进入全局配置模式。
configure terminal
配置RADIUS属性。请至少选择其中一项进行配置。
配置31号属性(Calling-Stationg-ID)的MAC地址格式。
radius-server attribute 31 mac format { 3hyphen | ietf | normal | unformatted | { { colon-split | dot-split | hyphen-split } { mode1 | mode2 } [ lowercase | uppercase ] } }
缺省情况下,31号属性使用unformatted格式。
存在部分RADIUS服务器(主要用于802.1x认证)只识别IETF的格式,该情况下需要将31号属性配置为IETF格式类型。
配置NAS-Port-ID属性封装格式。
radius-server attribute nas-port-id format { mode1 | normal | port-vid | qinq }
缺省情况下,NAS-Port-ID属性封装格式为normal格式。
使用该命令配置封装适合于qinq场景或非qinq场景的nas-port-id的格式。
配置Class属性的解析方式。
radius-server attribute class user-flow-control { format-16bytes | format-32bytes | unit bit/s | unit byte/s }
缺省情况下,从RADIUS的Class属性中解析限速配置的功能处于关闭状态。
如果服务器通过Class属性下发限速值,则需要配置该命令。
配置RADIUS认证请求报文中是否携带指定属性。
radius-server authentication attribute type { package | unpackage }
缺省情况下,RFC强制规定认证请求必须携带的属性默认为携带,规定不需携带的属性默认为不携带,其它属性默认为未设置状态。
配置RADIUS记帐请求报文中是否携带指定属性。
radius-server account attribute type { package | unpackage }
缺省情况下,RFC强制规定记帐请求必须携带的属性默认为携带,规定不需携带的属性默认为不携带,其它属性默认为未设置状态。
不同厂商可以定义私有属性用于实现多个标准RADIUS协议未支持的功能,可根据实际环境配置设备对私有属性的处理方法。本节配置的私有属性皆为锐捷私有属性。
进入特权模式。
enable
进入全局配置模式。
configure terminal
配置锐捷私有属性。请至少选择其中一项进行配置。
配置设备处理服务器下发的私有属性port-priority为接口的cos值。
radius set qos cos
缺省情况下,设备处理服务器下发的私有属性port-priority为DSCP值。
配置设备支持cui属性。
radius support cui
缺省情况下,RADIUS支持cui属性的功能处于关闭状态。
在实际部署环境时,存在设备与其他厂商的RADIUS服务器对接的场景,由于不同厂商定义的私有属性不尽相同,因此需要开启兼容其他厂商的配置。
进入特权模式。
enable
进入全局配置模式。
configure terminal
配置兼容其他厂商。请至少选择其中一项进行配置。
配置RADIUS认证请求报文中是否携带指定厂商的私有属性。
radius-server authentication vendor { cisco | cmcc | microsoft } package
缺省情况下,认证请求报文中不携带其它厂商的私有属性。
配置RADIUS记帐请求报文中是否携带指定厂商的私有属性。
radius-server account vendor { cisco | cmcc | microsoft } package
缺省情况下,记帐请求报文中不携带其它厂商的私有属性。
配置RADIUS支持解析报文中思科、华为、微软的私有属性。
radius vendor-specific attribute support { cisco | huawei | ms }
缺省情况下,RADIUS支持解析报文中思科、华为、微软的私有属性。
在RADIUS解析报文时,开启不区分私有厂商ID的功能。
radius vendor-specific extend
缺省情况下,在RADIUS解析报文时只识别锐捷私有厂商ID。
配置设备解析私有属性的方式。
radius vendor-specific attribute support { cisco | huawei | ms }
缺省情况下,RADIUS支持解析报文中思科、华为、微软的私有属性。
若服务器为锐捷公司的应用服务器,则需要配置RADIUS私有属性类型来兼容。
RADIUS服务器的可达性状态只有可达或者不可达两种,设备不会向处于不可达状态的RADIUS服务器发送接入用户的认证、授权和记账请求,除非该RADIUS服务器所在RADIUS服务器组的所有服务器均为不可达状态。
设备上维护着各个RADIUS服务器的可达性状态。在进行业务处理时,设备优先选择状态为可达的服务器,以提高RADIUS业务的处理性能。
设备支持主动探测指定RADIUS服务是否可达。若配置主动探测功能,设备将定期向该RADIUS服务器发送探测请求(认证请求或者记账请求),可达状态下主动探测间隔为60分钟,不可达状态下主动探测间隔为1分钟。
若要为指定的RADIUS服务器开启主动探测功能,在配置RADIUS服务器时需要做以下配置:
配置该RADIUS服务器的测试用户名。
至少配置一个该RADIUS服务器的被测端口(认证端口或者记账端口)。
判定RADIUS服务器不可达的标准需要同时满足以下两个条件:
设备在不可达标准的超时时间内未收到来自RADIUS服务器的正确响应报文。
设备连续向同一个RADIUS服务器发送的请求报文次数达到不可达标准的超时次数。
对处于不可达状态的RADIUS服务器,满足以下任一条件,则认为该RADIUS服务器进入可达状态。
设备收到来自该RADIUS服务器的正确响应。
该RADIUS服务器处于不可达状态超过radius-server deadtime配置的时间,并且该RADIUS服务器没有启用主动探测功能。
在设备上更新该RADIUS服务器的认证端口或者记账端口。
进入特权模式。
enable
进入全局配置模式。
configure terminal
配置设备判定RADIUS安全服务器不可达的标准。
radius-server dead-criteria { time timeout | tries tries-number | time timeout tries tries-number }
缺省情况下,判定RADIUS安全服务器不可达的标准为超时时间60秒,连续超时10次。
如果一台RADIUS安全服务器同时满足时间条件和请求连续超时次数条件,则设备认为该RADIUS安全服务器不可达。
配置主动探测功能,指定远程RADIUS安全服务器的IP地址,认证端口或记帐端口。
radius-server host { ipv4-address | ipv6-address } [ auth-port auth-port-number | acct-port acct-port-number ] *
缺省情况下,未配置主动探测功能。
(可选)配置设备在确认RADIUS服务器无效以前发送请求的次数。
radius-server retransmit retransmit-times
缺省情况下,设备在确认RADIUS服务器无效以前发送3次请求。
(可选)配置设备停止向不可达状态的RADIUS服务器发送请求报文的时长。
radius-server deadtime deadtime
缺省情况下,即使RADIUS安全服务器不可达,设备仍然往该RADIUS服务器发送请求。
如果设备对一台RADIUS安全服务器启用了主动探测功能,那么radius-server deadtime的时间参数对该RADIUS安全服务器不起作用。
DSCP(Differentiated Services Code Point,差分服务代码点)位于IP报文头的ToS字段中,用于标识报文传输的优先级。
DSCP的数值越大,则代表报文优先级越高。RADIUS报文的默认DSCP值为0,可通过配置RADISU报文的DSCP值来改变RADIUS报文传输的优先级。
进入特权模式。
enable
进入全局配置模式。
configure terminal
配置RADIUS报文的DSCP优先级。
radius dscp dscp-value
缺省情况下,RADIU报文的DSCP优先级为0。
缺省情况下,发送给RADIUS服务器的数据流单位为字节,数据包单位为包。根据实际网络情况,可以配置发送给RADIUS服务器的数据流和数据包的单位。
进入特权模式。
enable
进入全局配置模式。
configure terminal
配置发送给RADIUS服务器的数据流和数据包的单位。
radius data-flow-format { { data byte | data giga-byte | data kilo-byte | data mega-byte } | { packet giga-packet | packet kilo-packet | packet mega-packet | packet one-packet } } *
缺省情况下,发送给RADIUS服务器的数据流的单位为字节,数据包的单位为包。
accounting-on功能用于通知RADIUS服务器设备重启的消息。设备重启后,原在线用户会被下线,但是由于RADIUS服务器未感知设备重启,在服务器上未将其下线,导致这部分用户在重新认证时会出现异常,因此需要开启accounting-on功能。
进入特权模式。
enable
进入全局配置模式。
configure terminal
配置设备重启发送accounting-on报文功能。
radius-server accounting-on enable
缺省情况下,设备重启发送accounting-on报文的功能处于开启状态。
RADIUS的记账报文默认只发送给一个根据记账方法列表选择的服务器。开启此功能后,设备将复制记账报文,并发往服务器组下的所有服务器。
进入特权模式。
enable
进入全局配置模式。
configure terminal
进入接口配置模式。
进入二层以太网接口配置模式。
interface ethernet-type interface-number
进入二层聚合接口配置模式。
interface aggregateport interface-number
配置记账报文复制发送给指定组中的服务器。
radius-sever accounting-copy group
缺省情况下,RADIUS记账报文不进行复制发送。
可以通过show命令行查看功能配置后的运行情况以验证配置效果。
可以通过执行clear命令来清除各类信息。
可以通过执行debug命令来查看调试信息。
注意
在设备运行过程中执行clear命令,可能因为重要信息丢失而导致业务中断。
debug命令会输出调试信息,占用系统资源。使用完毕后,请立即关闭调试开关。
RADIUS监视与维护
作用 |
命令 |
---|---|
查看RADIUS服务器全局参数 |
show radius parameter |
查看RADIUS服务器配置情况 |
show radius server |
查看RADIUS私有属性类型配置 |
show radius vendor-specific |
查看RADIUS认证相关统计信息 |
show radius auth statistics |
查看RADIUS计费相关统计信息 |
show radius radius acct statistics |
查看RADIUS服务器组的配置 |
show radius group |
查看RADIUS标准属性 |
show radius attribute |
查看RADIUS记帐报文复制发送功能的配置 |
show radius-server accounting-copy |
打开RADIUS报文打印的调试开关 |
debug radius detail |
打开RADIUS动态授权扩展功能的调试开关 |
debug radius extend event |
打开RADIUS动态授权扩展报文打印的调试开关 |
debug radius extend detail |
打开RADIUS动态授权扩展报文打印的调试开关 |
debug radius extend error |
Login用户通过RADIUS服务器实现认证、授权和记账。
RADIUS认证、授权、记账组网图
在RADIUS server上配置设备信息、添加Login用户等。
在设备上开启AAA安全服务。
在设备上配置RADIUS服务器信息。
配置RADIUS的认证方法列表、授权方法列表、记账方法列表。
在特定线路上应用RADIUS认证、授权、记账方法。
在RADIUS服务器上配置设备信息、添加Login用户(配置略,具体参见对应RADIUS服务器的配置手册)。
开启AAA安全服务。
Device> enable
Device# configure terminal
Device(config)# aaa new-model
配置RADIUS服务器(此处RADIUS服务器地址为192.168.1.3,共享密钥为sharekey)。
Device(config)# radius-server host 192.168.1.3 key sharekey
配置认证、授权和记账方法列表。
Device(config)# aaa authentication login radius-method group radius
Device(config)# aaa authorization exec radius-method group radius
Device(config)# aaa accounting exec radius-method start-stop group radius
在线路上应用认证、授权和记账方法。
Device(config)# line vty 0 4
Device(config-line)# login authentication radius-method
Device(config-line)# authorization exec radius-method
Device(config-line)# accounting exec radius-method
# 用户输入正确的用户名密码后,能够成功登录设备。
User Access Verification
Username:hostname1
Password:password1
Device#
# 登录设备后,用户只拥有服务器授予的权限级别,仅能运行该权限级别下的命令。
# 用户退出登录后,在RAIDUS上能够查看到该用户的记账信息。如何查看记账信息请参见对应RADIUS服务器的配置手册。
!
aaa new-model
!
aaa accounting exec radius-method start-stop group radius
aaa authorization exec radius-method group radius
aaa authentication login radius-method group radius
!
radius-server host 192.168.1.3 key 7 $10$275$g8oXDDIPVeA=$
!
line console 0
line vty 0 4
accounting exec radius-method
authorization exec radius-method
login authentication radius-method
!
设备配置的共享密钥与RADIUS服务器使用的共享密钥不一致。
配置RADIUS可达性检测,用于发现处于不可达状态的RADIUS服务器。
RADIUS可达性检测组网图
配置全局RADIUS服务器不可达的判定标准。
配置RADIUS服务器的IP地址,指定主动探测的相关参数。
# 配置全局RADIUS服务器不可达的判定标准为连续5次探测超时,超时时间为120秒。
Device> enable
Device# configure terminal
Device(config)# radius-server dead-criteria time 120 tries 5
# 配置RADIUS服务器的IP地址为192.168.1.3,探测用户名为test,探测间隔为90分钟,并关闭对服务器认证端口的检测。
Device(config)# radius-server host 192.168.1.3 test username test ignore-acct-port idle-time 90
使设备与192.168.1.3服务器网络通讯断开。通过设备进行RADIUS认证。120秒后,使用命令show radius server命令查看服务器状态为Dead。
Hostname# show radius server
Server IP: 192.168.1.3
Accounting Port: 1813
Authen Port: 1812
mom flag: 1
Test Username: test
Test Idle Time: 1 Minutes
Test Ports: Authen and Accounting
Server State: Dead
Current duration 1254s, previous duration 2918s
Dead: total time 1257s, count 1
Statistics:
Authen: request 22, timeouts 81
Author: request 22, timeouts 81
Account: request 23, timeouts 83
!
radius-server host 192.168.1.3 test username test ignore-acct-port idle-time 90 key 7 $10$275$g8oXDDIPVeA=$
radius-server dead-criteria time 120 tries 5
!