RADIUS协议配置是以RADIUS方案为单位进行的,一个RADIUS方案在实际组网环境中既可以是一台独立的RADIUS服务器,也可以是两台配置相同、但IP地址不同的主、备RADIUS服务器。由于存在上述情况,因此每个RADIUS方案的属性包括:主服务器的IP地址、备服务器的IP地址、共享密钥以及RADIUS服务器类型等。
实际上,RADIUS协议配置仅仅定义了NAS和RADIUSServer之间进行信息交互所必须的一些参数。为了使这些参数能够生效,还必须在某个ISP域视图下指定该域引用配置有上述参数的RADIUS方案。RADIUS协议的配置包括:
1创建RADIUS方案
2设置RADIUS认证/授权服务器
3设置RADIUS计费服务器及相关属性
4设置RADIUS报文的共享密钥
5设置RADIUS请求报文的最大传送次数
6设置支持的RADIUS服务器的类型
7设置RADIUS服务器的状态
8设置发送给RADIUS服务器的用户名格式
9设置发送给RADIUS服务器的数据流的单位
10配置NAS发送RADIUS报文使用的源地址
11配置RADIUS服务器的定时器
12使能RADIUS服务器状态变为down时发送trap报文的功能
在以上的配置任务中,创建RADIUS方案、配置RADIUS认证/授权服务器是必需的;其余任务则是可选的,用户可以根据各自的具体需求决定是否进行这些配置。
创建RADIUS方案
如前所述,RADIUS协议的配置是以RADIUS方案为单位进行的。因此,在进行其它RADIUS协议配置之前,必须先创建RADIUS方案并进入其视图。
可以使用下面命令创建/删除RADIUS方案。
请在系统视图下进行下列配置。
表2-14创建/删除RADIUS方案
操作 | 命令 |
创建RADIUS方案并进入其视图 | radius scheme radius-scheme-name |
删除RADIUS方案 | undo radius scheme radius-scheme-name |
一个RADIUS方案可以同时被多个ISP域引用。系统最多支持配置16个RADIUS方案。
缺省情况下,系统中已创建了一个名为“system”的RADIUS方案,其各项属性均为缺省值。
注意:
FTP、Terminal、SSH不是RADIUS协议的标准属性取值,需要修改RADIUS服务器的属性,在属性login-service(标准属性15)中增加两个取值的定义:
login-service(50) = SSH
login-service(51)=FTP
login-service(52) = Terminal
修改后再启动RADIUS服务器方可。
一、配置RADIUS认证/授权服务器
可以使用下面命令设置RADIUS认证/授权服务器的IP地址和端口号。
请在RADIUS视图下进行下列配置。
表2-15设置RADIUS认证/授权服务器的IP地址和端口号
操作 | 命令 |
设置主RADIUS认证/授权服务器的IP地址和端口号 | primary authenticaiton ip-address [port-number ] |
将主RADIUS认证/授权服务器的IP地址和端口号恢复为缺省值 | undo primary authentication |
设置备RADIUS认证/授权服务器的IP地址和端口号 | secondary authentication ip-address [port-number ] |
将备RADIUS认证/授权服务器的IP地址和端口号恢复为缺省值 | undo secondary authentication |
RADIUS服务器的授权信息是随认证应答报文发给RADIUS客户端的,故不需要指定单独的授权服务器。
在实际组网环境中,可以指定2台RADIUS服务器分别作为主、备认证/授权服务器;也可以指定一台服务器既作为主认证/授权服务器,又作为备认证/授权服务器。
二、配置RADIUS计费服务器及相关属性
1. 配置RADIUS计费服务器
可以使用下面命令设置RADIUS计费服务器的IP地址和端口号。
请在RADIUS视图下进行下列配置。
表2-16设置RADIUS计费服务器的IP地址和端口号
操作 | 命令 |
设置主RADIUS计费服务器的IP地址和端口号 | primary accounting ip-address [ port-number] |
将主RADIUS计费服务器的IP地址和端口号恢复为缺省值 | undo primary accounting |
设置备RADIUS计费服务器的IP地址和端口号 | secondary accounting ip-address [port-number ] |
将备RADIUS计费服务器的IP地址和端口号恢复为缺省值 | undo secondary accounting |
在实际组网环境中,可以指定2台RADIUS服务器分别作为主、备计费服务器;也可以指定一台服务器既作为主计费服务器,又作为备计费服务器。
为了保证NAS与RADIUS服务器能够正常交互,在设置RADIUS服务器的IP地址和UDP端口之前,必须确保RADIUS服务器与NAS的路由连接正常。此外,由于RADIUS协议采用不同的UDP端口来收发认证/授权和计费报文,因此必须将认证/授权端口号和计费端口号设置得不同。RFC2138/2139中建议的认证/授权端口号为1812、计费端口号为1813,但是也可以不选用RFC建议值(尤其是比较早期的RADIUSServer,普遍采用1645作为认证/授权端口号、1646作为计费端口号)。在使用中,请保证防火墙上的RADIUS服务端口设置与RADIUS服务器上的端口设置保持一致。
可以使用命令display radiusscheme来查看RADIUS方案中主、备计费服务器的IP地址和端口号。
& 说明:
在计费成功后,计费更新以及计费停止报文都会发往计费成功时使用的服务器上,即使此服务器不可用,也不会发生主备切换。只有在最开始的认证、授权、计费过程中才会发生切换,成功后将不再切换。
2. 配置计费可选开关
在对用户实施计费时,当发现没有可用的计费服务器或与计费服务器通信失败时,只要配置了accountingoptional命令,即使无法实施计费,也不会挂断用户。
请在RADIUS视图下进行下列配置。
表2-17 配置计费可选开关
操作 | 命令 |
打开计费可选开关 | accounting optional |
关闭计费可选开关 | undo accounting optional |
缺省情况下,当一个RADIUS方案被创建以后,计费可选开关关闭。
3. 使能停止计费报文缓存及重传功能
由于停止计费请求报文涉及到话单结算、并最终影响收费多少,对用户和ISP都有比较重要的影响,因此NAS应该尽最大努力把它发送给RADIUS计费服务器。所以,如果RADIUS计费服务器对防火墙发出的停止计费请求报文没有响应,防火墙将其缓存在本机上,然后重新发送直到RADIUS计费服务器产生响应,或者在重新发送的次数达到指定的次数限制后将其丢弃。可以使用下面的命令来设置防火墙允许停止计费报文缓存功能。
请在RADIUS视图下进行下列配置。
表2-18设置使能停止计费报文缓存及重传功能
操作 | 命令 |
使能停止计费报文缓存功能 | stop-accounting-buffer enable |
关闭停止计费报文缓存功能 | undo stop-accounting-buffer enable |
使能停止计费报文重传功能,并配置停止计费报文可以传送的最大次数 | retry stop-accounting retry-times |
恢复停止计费报文最大传送次数为缺省值 | undo retry stop-accounting |
缺省情况下,使能停止计费报文缓存功能,最多可以将缓存的停止计费请求报文重发500次。
4. 设置允许实时计费请求无响应的最大次数
RADIUS服务器通常通过连接超时定时器来判断用户是否在线。如果RADIUS服务器长时间收不到NAS传来的实时计费报文,它会认为线路或设备故障并停止对用户计费。为了配合RADIUS服务器的这种特性,有必要在不可预见的故障条件下在NAS端尽量与RADIUS服务器同步切断用户连接。SecPath系列防火墙提供对连续实时计费请求无响应次数限制的设置——在NAS向RADIUS服务器发出的实时计费请求没有得到响应的次数超过所设定的限度时,NAS将切断用户连接。
可以使用下面的命令设置允许实时计费请求无响应的最大次数。
请在RADIUS视图下进行下列配置。
表2-19设置允许实时计费请求无响应的最大次数
操作 | 命令 |
设置允许实时计费请求无响应的最大次数 | retry realtime-accounting retry-times |
恢复允许实时计费请求无响应的最大次数为缺省值 | undo retry realtime-accounting |
缺省情况下,最多允许5次实时计费请求无响应。
三、设置RADIUS报文的共享密钥
RADIUS客户端(即防火墙)与RADIUS服务器使用MD5算法来加密RADIUS报文,双方通过设置共享密钥来验证报文的合法性。只有在密钥一致的情况下,双方才能彼此接收对方发来的报文并作出响应。
可以使用下面命令设置RADIUS报文的共享密钥。
请在RADIUS视图下进行下列配置。
表2-20设置RADIUS报文的共享密钥
操作 | 命令 |
设置RADIUS认证/授权报文的共享密钥 | key authentication string |
恢复RADIUS认证/授权报文共享密钥为缺省值 | undo key authentication |
设置RADIUS计费报文的共享密钥 | key accounting string |
恢复RADIUS计费报文共享密钥为缺省 | undo key accounting |
缺省情况下,RADIUS认证/授权报文和RADIUS计费报文均无共享密钥。
四、设置RADIUS请求报文的最大传送次数
由于RADIUS协议采用UDP报文来承载数据,因此其通信过程是不可靠的。如果RADIUS服务器在响应超时定时器规定的时长内没有响应NAS,则NAS有必要向RADIUS服务器重传RADIUS请求报文。如果累计的传送次数超过最大传送次数而RADIUS服务器仍旧没有响应,则NAS将认为其与当前RADIUS服务器的通信已经中断,并将转而向其它的RADIUS服务器发送请求报文。
可以使用下面命令设置RADIUS请求报文的最大传送次数。
请在RADIUS视图下进行下列配置。
表2-21设置RADIUS请求报文的最大传送次数
操作 | 命令 |
设置RADIUS请求报文的最大传送次数 | retry retry-times |
将RADIUS请求报文的最大传送次数恢复为缺省值 | undo retry |
缺省情况下,RADIUS请求报文的最大传送次数为3次。
五、设置支持的RADIUS服务器的类型
可以使用下面的命令来选择支持何种RADIUS服务器类型。
请在RADIUS视图下进行下列配置。
表2-22设置支持何种类型的RADIUS服务器
操作 | 命令 |
设置支持何种类型的RADIUS服务器 | server-type { extended | standard } |
恢复RADIUS服务器类型为standard | undo server-type |
缺省情况下,system方案中的RADIUS服务器的类型为extended,新创建的RADIUS方案中的RADIUS服务器的类型为standard。
& 说明:
当使用CAMS服务器时,只有将service-type配置为extended后,部分参数才能生效,如服务类型、EXEC优先级、FTP目录等。
六、设置RADIUS服务器的状态
对于某个RADIUS方案中的主、备服务器(无论是认证/授权服务器还是计费服务器),当主服务器因故障与NAS的通信中断时,NAS会主动地转而与备服务器交互报文。当主服务器恢复正常后,NAS却不会立即恢复与其通信,而是继续与备服务器通信;直到备服务器也出现故障后,NAS才能再转而恢复与主服务器交互报文。为了使NAS在主服务器故障排除后迅速恢复与其通信,需要通过下面的命令手工将主服务器的状态设为active。
当主服务器与备服务器的状态都为active或都为block时,NAS将只把报文发送到主服务器上。
请在RADIUS视图下进行下列配置。
表2-23设置RADIUS服务器的状态
操作 | 命令 |
设置主RADIUS认证/授权服务器的状态 | state primary authentication { block| active } |
设置主RADIUS计费服务器的状态 | state primary accounting { block |active } |
设置备RADIUS认证/授权服务器的状态 | state secondary authentication {block | active } |
设置备RADIUS计费服务器的状态 | state secondary accounting { block |active } |
可以使用命令display radius scheme来确定RADIUS方案中的服务器的状态。
七、设置发送给RADIUS服务器的用户名格式
如前所述,接入用户通常以“userid@isp-name”的格式命名,“@”后面的部分为ISP域名,防火墙就是通过该域名来决定将用户归于哪个ISP域的。但是,有些较早期的RADIUS服务器不能接受携带有ISP域名的用户名,在这种情况下,有必要将用户名中携带的域名去除后再传送给RADIUS服务器。因此,防火墙提供下面的命令以指定发送给RADIUS服务器的用户名是否携带有ISP域名。
表2-24设置发送给RADIUS服务器的用户名格式
操作 | 命令 |
设置发送给RADIUS服务器的用户名格式 | user-name-format { with-domain |without-domain } |
& 说明:
如果指定某个RADIUS方案不允许用户名中携带有ISP域名,那么请不要在两个乃至两个以上的ISP域中同时设置使用该RADIUS方案,否则,会出现虽然实际用户不同(在不同的ISP域中)、但RADIUS服务器认为用户相同(因为传送到它的用户名相同)的错误。
缺省情况下,在system方案中,NAS发送给RADIUS服务器的用户名不携带ISP域名;在新创建的RADIUS方案中,NAS发送给RADIUS服务器的用户名携带ISP域名。
八、设置发送给RADIUS服务器的数据流的单位
防火墙提供下面的命令以指定发送给RADIUS服务器的数据流的单位。
表2-25设置发送给RADIUS服务器的数据流的单位
操作 | 命令 |
设置发送给RADIUS服务器的数据流的单位 | data-flow-format data { byte | giga-byte |kilo-byte | mega-byte } packet {giga-packet | kilo-packet | mega- packet |one-packet } |
恢复发送到RADIUS服务器的数据流的单位为缺省设置 | undo data-flow-format |
缺省情况下,RADIUS方案默认的发送数据单位为byte,数据包的单位为one packet。
九、配置NAS发送RADIUS报文使用的源地址
请在相应视图下进行下列配置。
表2-26配置NAS发送RADIUS报文使用的源地址
操作 | 命令 |
配置NAS发送RADIUS报文使用的源地址(RADIUS视图) | nas-ip ip-address |
取消NAS发送RADIUS报文使用的源地址(RADIUS视图) | undo nas-ip |
配置NAS发送RADIUS报文使用的源地址(系统视图) | radius nas-ip ip-address |
取消NAS发送RADIUS报文使用的源地址(系统视图) | undo radius nas-ip |
这两条命令的作用相同。缺省情况下,不指定源地址,即以发送报文的接口地址作为源地址。
十、配置RADIUS服务器的定时器
1. 设置RADIUS服务器应答超时定时器
如果在RADIUS请求报文(认证/授权请求或计费请求)传送出去一段时间后,NAS还没有得到RADIUS服务器的响应,则有必要重传RADIUS请求报文,以保证用户确实能够得到RADIUS服务。
可以使用下面命令设置RADIUS服务器应答超时定时器。
请在RADIUS视图下进行下列配置。
表2-27设置RADIUS服务器应答超时定时器
操作 | 命令 |
设置RADIUS服务器应答超时定时器 | timer seconds timer response-timeout seconds |
将RADIUS服务器应答超时定时器恢复为缺省值 | undo timer undo timer response-timeout |
缺省情况下,RADIUS服务器应答超时定时器为3秒。timer命令与timerresponse-timeout命令的功能一样。
2. 配置RADIUS服务器的主服务器恢复激活状态时间
请在RADIUS视图下进行下列配置。
表2-28 配置RADIUS服务器的主服务器恢复激活状态时间
操作 | 命令 |
配置恢复激活时间 | timer quiet minutes |
恢复缺省配置 | undo timer quiet |
缺省情况下,主服务器恢复激活状态前需要等待5分钟。
3. 设置实时计费时间间隔
为了对用户实施实时计费,有必要设置实时计费的时间间隔。在设置了该属性以后,每隔设定的时间,NAS会向RADIUS服务器发送一次在线用户的计费信息。
可以使用下面命令设置实时计费间隔。
请在RADIUS视图下进行下列配置。
表2-29 设置实时计费间隔
操作 | 命令 |
设置实时计费间隔 | timer realtime-accounting minutes |
将实时计费间隔恢复为缺省值 | undo timer realtime-accounting |
其中,minutes为实时计费间隔时间,单位为分钟,其取值必须为3的整数倍。
实时计费间隔的取值对NAS和RADIUS服务器的性能有一定的相关性要求——取值越小,对NAS和RADIUS服务器的性能要求越高。建议当用户量比较大(¦1000)时,尽量把该间隔的值设置得大一些。以下是实时计费间隔与用户量之间的推荐比例关系:
表2-30实时计费间隔与用户量之间的推荐比例关系
用户数 | 实时计费间隔(分钟) |
1~99 | 3 |
100~499 | 6 |
500~999 | 12 |
¦1000 | ¦15 |
缺省情况下,实时计费间隔为12分钟。
十一、使能RADIUS服务器状态变为down时发送trap报文的功能
请在系统视图下进行下列配置。
表2-31使能RADIUS服务器状态变为down时发送trap报文的功能
操作 | 命令 |
使能RADIUS 服务器状态变为down时发送trap报文的功能 | radius trap { authentication-server-down |accounting-server-down } |
关闭RADIUS 服务器状态变为down时发送trap报文的功能 | undo radius trap { authentication-server-down |accounting-server-down } |
缺省情况下,关闭该功能。
十二、配置本地RADIUS认证服务器
防火墙提供了本地简单RADIUS服务器端功能(包括认证和授权),称之为本地RADIUS认证服务器功能。
请在系统视图下进行下列配置。
表2-32 配置本地RADIUS认证服务器
操作 | 命令 |
配置本地RADIUS认证服务器 | local-server nas-ip ip-address keypassword |
取消本地RADIUS认证服务器的配置 | undo local-server nas-ip ip-address |
缺省情况下,系统创建了一个NAS-IP为127.0.0.1、无缺省密钥的本地RADIUS认证服务器。
& 说明:
采用本地RADIUS认证服务器功能时,其认证/授权服务的UDP端口号必须为1645,计费服务的UDP端口号为1646。
用此命令配置的报文加密密钥(key password)必须和在RADIUS方案视图下用命令keyauthentication配置的认证/授权报文加密密钥一致。
包括系统缺省创建的本地RADIUS认证服务器在内,设备最多支持16个本地RADIUS认证服务器。