- 论坛徽章:
- 0
|
FreeRadius 中的LDAP和MS-CHAP问题求救?
想了一下,直接用LDAP来验证MSCHAP是不可能的.因为MSCHAP方式是,首先服务器发一个challenge给用户,用户向RADIUS发一个用MD4加密的(password,challenge)给RADIUS(叫response),radius的MSCHAP模块向LDAP询问NTPASSWORD,然后自己再用challenge和NTPASSWORD,来计算一个response,两个response相比较完成验证.
如果LDAP无法给出NTPASSWORD或送出SHA加密的NTPASSWORD,MS-CHAP就无法验证了.
唯一可行的办法是把LDAP的SCHEMA中加入NTPASSWORD域,并明文存放,才能满足MS-CHAP的要求.
但SUN 目录服务器的密码属性为userPassword,与NTPASSWORD不一致,本来想做到用户的密码属性一致,这样看来不容易做到了.
以上是freeradius0.9以前的版本的做法,0.9以后,MS-CHAP调用ntlm_auth这个SAMBA的命令,直接用challenge和response通过外部的域控制器来完成认证.这样与LDAP更无法联系了.
不知这样理解对不对?
对于网上很多的类似问题,freeradius的作者也生气了,他甚至打算去掉LDAP,他说:
You can't do MS-CHAP authentication
against LDAP. You need to pull the password from the LDAP database,
and let the mschap module perform the authentication.
I'm inclined to remove the LDAP authentication from future releases.
I don't see a real need for it, and it's confusing a lot of people. |
|