2017-01-21 136 views
0

我最近安装了slapd(2.4.40 + dfsg-1 + deb8u2),我试图通过ldap获得apache2(2.4.10-10 + deb8u7)身份验证。系统本身是debian(8.6)。Apache2身份验证对ldap失败,“用户未找到”

Ldap应该在默认端口上的本地主机上运行,​​并使用phpldapadmin DN(cn = admin,dc = 1000,dc = hu)似乎没问题。对于apache2认证我使用.htaccess文件,和基本认证(htpasswd文件)工作也很好。

我configucation是:

AuthName "Add your login message here." 
AuthType Basic 
AuthBasicProvider ldap 
AuthLDAPURL "ldap://localhost:389/dc=1000,dc=hu?sAMAccountName?sub?(objectClass=*)" 
AuthLDAPBindDN "cn=admin,dc=1000,dc=hu" 
AuthLDAPBindPassword ****** 
require ldap-user testtest test ttest 

无论我做什么,我得到了 “用户未找到” 错误的Apache2日志:

==> /var/log/apache2/error.log <== 
[Sat Jan 21 12:54:29.272676 2017] [auth_basic:error] [pid 27767] [client 127.0.0.1:52852] AH01618: user ttest not found: /t1/ 

==> /var/log/apache2/access.log <== 
127.0.0.1 - ttest [21/Jan/2017:12:54:29 +0100] "GET /t1/ HTTP/1.1" 401 738 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0" 

==> /var/log/apache2/error.log <== 
[Sat Jan 21 12:54:44.388323 2017] [auth_basic:error] [pid 27766] [client 127.0.0.1:52854] AH01618: user test not found: /t1/ 

==> /var/log/apache2/access.log <== 
127.0.0.1 - test [21/Jan/2017:12:54:44 +0100] "GET /t1/ HTTP/1.1" 401 738 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0" 

==> /var/log/apache2/error.log <== 
[Sat Jan 21 12:54:49.460321 2017] [auth_basic:error] [pid 27770] [client 127.0.0.1:52856] AH01618: user testtest not found: /t1/ 

==> /var/log/apache2/access.log <== 
127.0.0.1 - testtest [21/Jan/2017:12:54:49 +0100] "GET /t1/ HTTP/1.1" 401 738 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0" 

t检验,测试和TESTTEST是Username,SN,在我的系统CN。

AuthLDAPBindPassword的密码被三重检查,也是用户。

我在哪里犯错?在这种情况下,AuthLDAPURL是否具有正确的价值?

回答

0

那么,在上面的例子中,AuthLDAPURL对于描述的设置是错误的。它应该是:

AuthLDAPURL ldap://localhost/dc=256,dc=hu?cn?sub 

+0

我想要的,但该网站说,我需要等待2天才能接受我自己的答案(仍然是32)。 – user2194805

+0

完成........... – user2194805