Apache 2.2 LDAP 身份验证错误 500 - AuthLDAPURL

Apache 2.2 LDAP 身份验证错误 500 - AuthLDAPURL

我在 RHEL 6 上有一个 Apache 服务器,它使用我们的活动目录进行身份验证,当我们添加了一个新的“LocationMatch”

AuthLDAPURL ldap://ad.company.com/DC=ad,DC=company,DC=com?samaccountname?sub?(memberOf=CN=RnD,CN=Users,DC=domain,DC=com)

在这个位置我们得到错误 500

在其他位置匹配上:

AuthLDAPURL ldap://ad.company.com:389/OU=MA,DC=ad,DC=company,DC=com?samaccountname

它运行完美。

答案1

我今天遇到了完全相同的问题,如果没有“ou=”,AuthLDAPURL 将返回 500 错误。

终于找到了一个网址:http://clabs.org/blog/RawStuff

其中提到:“

如果您需要针对不同的 OU 进行身份验证,则有两种选择。理想情况下,只需将 ldap url 更改为从根目录运行即可:

AuthLDAPURL "ldap://eiadserver1.einstruction.com:389/DC=einstruction,DC=com?sAMAccountName?sub?(objectClass=user)"

但是,对于 Active Directory,这似乎不起作用,因为除了搜索结果之外,它还会返回对其他目录分区的引用,而 Apache 无法理解这些或类似的东西。已为此提交了一个错误,报告中包含一个补丁。

但是,如果您的 Active Directory 配置了全局目录(通常在端口 3268 上),那么您可能能够获得需要工作的查询:

AuthLDAPURL "ldap://eiadserver1.einstruction.com:3268/DC=einstruction,DC=com?sAMAccountName?sub?(objectClass=user)"

我检查了我们的 AD 服务器,它正在监听端口 3268,所以我更改了它,它确实解决了这个问题。

相关内容