我正在尝试使用 LDAP 模块针对活动目录对半径客户端进行身份验证,因此我需要让它实际使用 LDAP 作为身份验证器。但是,似乎没有设置用户密码。首先,用户密码应该由客户端还是后端服务器发送?我的主要问题是,我做错了什么?
是的,我知道日志在向我尖叫“不要这样做”,但阅读自述文件似乎通常是个好建议,但 AD 需要这样做。
我正在尝试使用 LDAP 模块针对活动目录对半径客户端进行身份验证,因此我需要让它实际使用 LDAP 作为身份验证器。但是,似乎没有设置用户密码。首先,用户密码应该由客户端还是后端服务器发送?我的主要问题是,我做错了什么?
是的,我知道日志在向我尖叫“不要这样做”,但阅读自述文件似乎通常是个好建议,但 AD 需要这样做。
使用 AD,您有两个凭据选项,明文密码或 NT-Password(密码的 MD4 哈希)。使用纯文本身份验证,您可以使用 LDAP 身份验证绑定来验证凭据。
使用 NT-Password,您需要运行 MSCHAPv2 作为身份验证方法,并使用诸如 winbindd (samba) 之类的东西来加入 AD 域。
但是,在您的情况下,最直接的问题是您使用的是 CHAP,它仅向 RADIUS 服务器提供质询响应,而不是明文密码。AD 中没有支持 RADIUS CHAP 身份验证的后端身份验证机制,因此如果您希望它能够正常工作,您需要说服您的 NAS(网络访问服务器)执行 PAP(用于经过身份验证绑定的明文身份验证)或 MSCHAPv2(用于基于 winbind 的身份验证)。