Open G-Akiraka opened 1 year ago
看下原始RADIUS 报文,是否缺乏必要属性, 这个mschapv2 是需要客户端启用才会发送关键属性的
我有点不明白,我使用freeradius就可以正常连接上网,但是指向到程序代码则不行,从客户端角度出发客户端是一致的,但是结果却不相同,freeradius 似乎都有一个证书,是否和这个相关
一般radius认证是不需要证书的,只有eap模式可能会用到,mschapv2在普通认证模式和eap模式都会有,确认你是不是走的eap模式,toughradius目前本身还没有实现eap支持,但是可以将freeradius作为协议解析处理前端处理eap认证,toughradius作为数据管理后端,这个功能已经支持的很好了
移动设备认证走的应该就是 eap 认证
走eap 认证的时候, 相关的协议属性封装在eap-message 里面
好的谢谢,移动设备连接eap方法peap 阶段2是 mschapv2,我理解客户端过来应该不需要再次封装消息给 服务端,toughradius部分功能不满足需求,所以想自己改造下支持oauth2,等自己系统用户集成。现在遇到问题拿不到challenge和response,所以想是不是忽略了什么重要的东西。 wifi认证设置802.x 指向go 服务器并设置ip 秘钥,端口,实在想不到还有什么不对。
可以考虑使用前端freeradius 来解析协议, 后端用户管理使用 toughradius, 这样可以工作的很好,也是我暂时缺乏去实现的动力的原因
已经放弃了,改用深信服认证服务器 radius 指向go代码就可以获取到challenge,response,如果使用其他wifi控制器则不正常,有尝试结合freeradius,使用了reset方式,一堆难点也没什么文档参考。
challenge := microsoft.MSCHAPChallenge_Get(r.Packet) response := microsoft.MSCHAP2Response_Get(r.Packet)
通过h3c、华硕、openwrt、unifi 无法获取到内容,都为空,想请教知道是为什么,我通过mschapv2去认证 我参考了 https://github.com/layeh/radius/blob/master/vendors/microsoft/mschapv2-server-example.go 直接验证无法验证通过,通过freeradius的radtest -x -t mschap aka 123 127.0.0.1 0 test 可以通过,但是移动设备认证无法验证通过
我有尝试这样操作,由于无法获取到 challenge 与 response 导致无法返回 recvKey与sendKey,想知道是不是少了什么东西导致无法获取 microsoft.MSMPPERecvKey_Add(responsePacket, recvKey) microsoft.MSMPPESendKey_Add(responsePacket, sendKey)