CoovaChilli+FreeRadius+RADIUSdesk热点认证失败问题排查
这问题核心就是NAS(CoovaChilli)和FreeRadius之间的共享密钥(shared secret)不匹配——虽然日志显示FreeRadius"解密了原始密码",但密钥不一致会让密码的加密/解密流程出现偏差,最终FreeRadius错误地用乱码的加密值去和存储的明文密码对比,自然匹配失败。
给你几个具体的排查和修复步骤:
第一步:核对CoovaChilli的共享密钥配置
找到CoovaChilli的主配置文件,OpenWRT上通常是/etc/config/chilli,打开后定位radiussecret选项,确保它的值没有拼写错误、多余空格或者大小写问题:config chilli option radiussecret 'your_secure_shared_secret'修改完成后重启CoovaChilli服务:
/etc/init.d/chilli restart第二步:同步FreeRadius的客户端密钥
打开FreeRadius的客户端配置文件,路径一般是/etc/raddb/clients.conf(OpenWRT上可能是/etc/freeradius/clients.conf),找到对应CoovaChilli设备的客户端条目,确保secret字段和CoovaChilli的radiussecret完全一致:client coova_chilli_ap { ipaddr = 192.168.182.1 # 替换成你的CoovaChilli设备IP secret = your_secure_shared_secret # 必须和CoovaChilli的密钥完全匹配 shortname = chilli_hotspot }如果是OpenWRT上的FreeRadius,还要检查
/etc/config/freeradius里的客户端配置项,确保和clients.conf同步,之后重启FreeRadius:/etc/init.d/freeradius restart第三步:用radtest验证密钥有效性
在FreeRadius服务器上执行radtest命令,快速验证密钥和认证流程是否正常:radtest test_user test_pass 192.168.182.1 1812 your_secure_shared_secret如果返回
Access-Accept,说明密钥匹配且认证流程正常;如果是Access-Reject或者报错,继续检查密钥一致性,或者排查网络是否有防火墙拦截1812端口。额外注意点
- 共享密钥是大小写敏感的,哪怕多一个空格都会导致失败;
- 如果你的RADIUSdesk里配置了NAS信息,也要确保那里的共享密钥和CoovaChilli、FreeRadius保持一致;
- 查看FreeRadius的详细日志(
tail -f /var/log/radius/radius.log),确认客户端IP是否被正确识别,有没有匹配到错误的客户端条目(比如多个客户端配置,导致用错了secret)。
内容的提问来源于stack exchange,提问作者goodperson

