因为RADIUS密钥配置不一致导致MA5200下radius提示用户密码错误问题的处理

发布时间:  2012-07-26 浏览次数:  103 下载次数:  0
问题描述
版本:与版本无关
用户为pppoe接入的radius认证用户,radius-server已经配置完成,通过display查看radius-server状态也是up状态,但是用户拨号始终提示密码错误,但是从客户端和RADIUS服务器上查看到的用户名和密码是一致的

告警信息


处理过程
1、确认PPPoE拨号用户使用的帐号密码和RADIUS配置的一致;
2、检查RADIUS服务器的配置发现RADIUS密钥(secret-key)配置和MA5200上配置不一致,修改密钥后解决问题。


根因

这个问题的根本原因是由于RADIUS服务器没有对RADIUS报文验证字检查,对验证字错误的报文也正常响应。而在PAP验证时,两端加密所采用的密钥就是RADIUS的密钥,由于两端配置不一致,导致RADIUS总提示用户名密码错。


建议与总结
总结:在正常情况下,当BAS和RADIUS的密钥配置不一致时,RADIUS报文验证字不一致,一般RADIUS都不应当响应这样的报文。但是有些RADIUS实现没有对报文验证字做检查,导致密钥不一致时,也会正常响应RADIUS报文。所以虽然通过display查看radius-server状态已经up了,但是并不能保证MA5200中RADIUS配置的每一个参数都和radius服务器匹配,这时候出现问题应该去确认这些参数是否正确。在这种情况下,最终易出现此问题的是PAP验证,因为PAP验证在BAS和RADIUS之间加密的时候密钥就是使用两端配置的RADIUS密钥,这样当两端配置不一致的时候就会导致RADIUS总响应用户密码错,而实际是两端的密钥不一致造成。对于这个问题判断方法也很简单,可以修改验证为CHAP方式,因为CHAP的加密的使用challenge都是由BAS产生并发给客户端和RADIUS的,这样可以保证两端不会因为配置问题导致计算出来的密文不一样,如果同一个帐号密码在CHAP下可以通过而PAP总是提示密码错,多半都是由于两端配置RADIUS密钥不一致造成的。

END