配置采用RADIUS方式进行认证、授权和计费
AAA可以用多种协议来实现,但最常用的是RADIUS协议。
配置RADIUS服务器模板
背景信息
配置RADIUS服务器模板中的关键步骤是指定服务器的IP地址和端口号、RADIUS共享密钥。其他的步骤如配置RADIUS用户名格式、流量单位、RADIUS请求报文的超时重传次数等都有缺省配置,用户可以根据实际需要进行修改。
RADIUS服务器模板下的配置如RADIUS用户名格式、RADIUS共享密钥要与RADIUS服务器上的配置一致。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令radius-server template template-name,进入RADIUS服务器模板视图。
- (可选)执行命令radius-server algorithm { loading-share | master-backup },配置RADIUS服务器的运算法则。
缺省情况下,RADIUS服务器采用主备运算法则。
- 执行命令radius-server authentication ip-address port [ vpn-instance vpn-instance-name | source { loopback interface-number | ip-address ip-address } | weight weight-value ] *(S2750、S5700SI、S5700LI、S5700S-LI不支持vpn-instance vpn-instance-name参数)或者radius-server authentication ipv6-address port [ source { loopback interface-number | ip-address ipv6-address } | weight weight-value ] *,配置RADIUS认证服务器。
缺省情况下,未配置RADIUS认证服务器。
- 执行命令radius-server accounting ip-address port [ vpn-instance vpn-instance-name | source { loopback interface-number | ip-address ip-address } | weight weight-value ] *(S2750、S5700SI、S5700LI、S5700S-LI不支持vpn-instance vpn-instance-name参数)或者radius-server accounting ipv6-address port [ source { loopback interface-number | ip-address ipv6-address } | weight weight-value ] *,配置RADIUS计费服务器。
缺省情况下,未配置RADIUS计费服务器。
- 执行命令radius-server shared-key cipher key-string,配置RADIUS服务器的共享密钥。
缺省情况下,RADIUS共享密钥采用密文形式显示用户口令。您可以在《S系列交换机缺省帐号与密码》(企业网、运营商)文档中获取各种缺省帐号与密码信息。获取该文档需要权限,如需升级权限,请查看网站帮助。
- (可选)执行命令radius-server user-name
domain-included或radius-server user-name original,配置设备向RADIUS服务器发送的报文中用户名包含域名。
缺省情况下,设备向RADIUS服务器发送的报文中的用户名为用户原始输入的用户名,设备不对其进行修改。
如果RADIUS服务器不接受带域名的用户名,可以执行命令undo radius-server user-name domain-included,设备会将用户名中的域名去掉,再发送给RADIUS服务器。
- (可选)执行命令radius-server
traffic-unit { byte | kbyte | mbyte | gbyte },配置RADIUS流量单位。
缺省情况下,设备以字节(byte)作为RADIUS流量单位。
- (可选)执行命令radius-server { retransmit retry-times | timeout time-value | dead-time dead-time } *,设置RADIUS请求报文的超时重传次数、超时时间和主用服务器恢复激活状态的时间。
缺省情况下,RADIUS请求报文的超时重传次数为3,超时时间是5秒,主用服务器恢复激活状态的时间为5分钟。
- (可选)执行命令radius-server
nas-port-format { new | old },配置RADIUS服务器的NAS端口形式。
缺省情况下,NAS端口形式采用new的格式。
- (可选)执行命令radius-server nas-port-id-format { new | old },配置RADIUS服务器的NAS端口ID形式。
缺省情况下,采用新的NAS端口ID形式。
- (可选)执行命令radius-attribute nas-ip ip-address或者radius-attribute nas-ipv6 ipv6-address,配置设备发送RADIUS报文使用的NAS-IP-Address属性或者NAS-IPv6-Address属性。
- (可选)执行命令radius-server
accounting-stop-packet resend [ resend-times ],配置计费停止报文的重传功能以及可重发的计费停止报文个数。
缺省情况下,计费停止报文的重发次数为0,即计费停止报文不重发。
- (可选)执行命令radius-attribute check attribute-name,对接收的RADIUS认证成功报文内的指定属性进行检查。
缺省情况下,对接收的RADIUS认证成功报文不做检查。
- (可选)执行命令radius-server
hw-dhcp-option-format { new | old },配置华为扩展属性HW-DHCP-Option的格式。
缺省情况下,华为扩展属性HW-DHCP-Option的格式为old。
- (可选)执行命令radius-attribute set attribute-name attribute-value,更改RADIUS属性的属性值。
- (可选)执行命令calling-station-id mac-format { dot-split | hyphen-split } [ mode1 | mode2 ] [ lowercase | uppercase ]或者执行命令calling-station-id mac-format unformatted [ lowercase | uppercase ],设置RADIUS报文中calling-station-id(Type 31)属性字段中MAC地址的封装格式。
缺省情况下,calling-station-id属性字段中MAC地址的格式为xxxx-xxxx-xxxx,小写形式。
- (可选)配置RADIUS自动探测功能
执行命令radius-server testuser username username password cipher password,创建RADIUS自动探测用户。
缺省情况下,设备未配置RADIUS自动探测用户。
执行命令radius-server detect-server interval interval,配置RADIUS自动探测周期。
缺省情况下,RADIUS自动探测周期为60秒。
- 执行命令quit,返回系统视图。
- (可选)执行命令radius-server authorization ip-address [ vpn-instance vpn-instance-name ] { server-group group-name | shared-key cipher key-string } * [ ack-reserved-interval interval ](S2750、S5700SI、S5700LI、S5700S-LI不支持vpn-instance vpn-instance-name参数),配置RADIUS授权服务器。
缺省情况下,没有配置RADIUS授权服务器。
- 执行命令return,返回用户视图。
- (可选)执行命令test-aaa user-name user-password radius-template template-name [ chap | pap ],测试某个用户是否能够通过RADIUS认证。
(可选)配置业务方案
背景信息
接入用户需要获取授权信息才能上线,可以通过配置业务方案管理用户的授权信息。
在配置AAA的任务中,业务方案下只需要配置命令admin-user privilege level。其余命令在业务方案被其他特性(比如IPSec特性)调用时才需要配置。
设备切换为NAC传统模式时,业务方案下仅支持配置命令admin-user privilege level。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令aaa,进入AAA视图。
- 执行命令service-scheme service-scheme-name,创建一个业务方案并进入业务方案视图。
缺省情况下,设备中没有创建业务方案。
- 执行命令admin-user privilege level level,配置用户可以作为管理员登录设备,同时指定登录时的管理员级别。
level参数的取值范围是0~15。缺省情况下,未配置用户级别。
- (可选)执行命令dns ip-address,配置DNS主用服务器地址。
缺省情况下,业务方案下没有配置DNS主用服务器。
- (可选)执行命令dns ip-address secondary,配置DNS备用服务器地址。
缺省情况下,业务方案下没有配置DNS备用服务器。
配置域
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令aaa,进入AAA视图。
- 执行命令domain domain-name,创建域并进入域视图,或者直接进入一个已经存在的域视图。
缺省情况下,设备上存在名为“default”和“default_admin”两个域。可以修改这两个域下的配置,但是不能删除这两个域。
- 用户认证时,如果输入不带域名的用户名,将到默认域认证,因此设备需通过domain(系统视图) domain-name [ admin ]命令设置domain-name为全局默认域。
- 用户认证时,如果输入带域名的用户名,需要带上正确的域名domain-name。
- 执行命令authentication-scheme authentication-scheme-name,配置域的认证方案。
缺省情况下,域使用配置名为“default”的认证方案。
- (可选)执行命令accounting-scheme accounting-scheme-name,配置域的计费方案。
缺省情况下,域使用名为“default”的计费方案。“default”计费方案的策略为:计费模式为不计费,关闭实时计费开关。
- (可选)执行命令user-group group-name,配置对域下的用户下发用户组授权。
缺省情况下,未配置对域下的用户下发用户组授权。
- (可选)执行命令service-scheme service-scheme-name,配置域的业务方案。
缺省情况下,域下没有配置任何业务方案。
- 执行命令radius-server(AAA域视图) template-name,配置域的RADIUS服务器模板。
缺省情况下,域下没有配置RADIUS服务器模板。
- (可选)执行命令state { active | block [ time-range time-name &<1–4> ] },配置域的状态为阻塞状态。
当域处于阻塞状态时,属于该域的用户不能登录。缺省情况下,域创建后处于激活状态。
- 执行命令quit,退出域视图。
- (可选)执行命令domain-name-delimiter delimiter,配置域名分隔符。
域名分隔符可以是 \ / : < > | @ ' % 中的某一个。
缺省情况下,域名分隔符为@。
检查配置结果
操作步骤
- 执行命令display aaa configuration,查看AAA的概要信息。
- 执行命令display authentication-scheme [ authentication-scheme-name ],查看认证方案的配置信息。
- 执行命令display accounting-scheme [ accounting-scheme-name ],查看计费方案的配置信息。
- 执行命令display service-scheme [ name name ],查看业务方案的配置信息。
- 执行命令display radius-server configuration [ template template-name ],查看RADIUS服务器模板的配置信息。
- 执行命令display radius-server authorization configuration,查看RADIUS授权服务器的配置信息。
- 执行命令display radius-attribute [ template template-name ] disable,查看设备禁用的RADIUS属性。
- 执行命令display radius-attribute [ template template-name ] translate,查看RADIUS属性转换的配置信息。
- 执行命令display domain [ name domain-name ],查看域的配置信息。
- 执行命令display radius-server accounting-stop-packet { all | ip { ip-address | ipv6-address } },查看RADIUS服务器的计费停止报文信息。
- 执行命令display radius-attribute [ template template-name ] check,查看RADIUS认证成功报文内必须检查的属性。
- 执行命令display remote-user authen-fail [ blocked | username username ],查看认证失败的AAA远端认证账号的信息。