SSH无法通过radius认证方式登录

发布时间:  2015-11-22 浏览次数:  280 下载次数:  0
问题描述

准备使用一台AR3200路由器,版本V200R003C01SPC300去替换现网一台友商路由器。替换后,业务测试成功。但是在测试SSH远程登录的时候出现不能正常登录的情况。AR3200配置的用户认证方式是通过radius进行认证,客户也对radius服务器进行检测,确认radius服务器没有配置问题。

AR3200路由器配radius相关配置如下:
radius-server template acs
radius-server shared-key cipher %@%@+{deS\F>]IlEWN&>C4[Xc\0i%@%@
radius-server authentication 10.96.2.11 1812 weight 80
undo radius-server user-name domain-included
radius-attribute nas-ip 172.16.32.168

aaa
authentication-scheme default
authentication-scheme acs
  authentication-mode radius local
authorization-scheme default
authorization-scheme acs                
accounting-scheme default
domain default 
domain default_admin 
  authentication-scheme acs
  authorization-scheme acs
  radius-server acs

告警信息

有提示:

xx-xx-xxx-xxxx-R1 %%01RDS/4/RDAUTHDOWN(l)[43]:RADIUS authentication server ( IP: 10.96.2.11 Vpn-Instance: -- )  is down!

处理过程

1. 在AR3200路由器上进行ping radius服务器的测试,结果发现可以ping通。
2. 使用test-aaa进行测试,发现不能成功。
[R1]test-aaa XXXX xxxx radius-template acs
Error: Account test time out.
3. 在AR3200路由器上把认证方式从radius修改为本地,发现通过SSH是可以正常登录设备。
4. 与客户交流看能否从radius服务器端进行排查,看看是否收到认证请求,是否进行了处理等。但客户对自己的radius服务器不是特别熟悉,只是再次检查了radius服务器的配置是否有问题。
5. 与客户再次交流,确认到radius服务器上对每一台来认证的网络设备都有客户端源地址的限制。也就是说会在radius服务器上进行配置,AR3200这台设备必须用规定的IP地址X.X.X.X作为源IP地址发送认证报文,这样服务器才会识别进行处理。随后在产品文档上再一次仔细查找了命令,最后把配置修改为:
radius-server authentication 10.96.2.11 1812 source LoopBack 0 weight 80

如果不使用source这个参数,AR3200路由器则会使用出接口的IP地址发起认证请求的报文。

根因
radius-server authentication 10.96.2.11 1812 source LoopBack 0 weight 80
source:指定IP地址作为向RADIUS认证服务器发送RADIUS报文时使用的源IP地址。
如果没有配置此参数,则使用出接口的IP地址作为向RADIUS认证服务器发送RADIUS报文时使用的源IP地址。
解决方案
客户在radius服务器上配置了要求对设备发送过来认证报文的源IP地址进行检测,所以我们必须使用source参数才能是正常通过radius服务器认证。
建议与总结
在配置radius认证前,提前和客户沟通确认是否对源IP进行检测,如果需要我们应该及时配置source参数。

END