针对ldap的Apache2身份验证失败,未找到用户"用户#34;

时间:2017-01-21 12:01:31

标签: ldap debian apache2.4

我最近安装了slapd(2.4.40 + dfsg-1 + deb8u2),而且我是我试图通过ldap验证apache2(2.4.10-10 + deb8u7)。系统本身是debian(8.6)。

Ldap应该在默认端口上的localhost上运行,并且使用phpldapadmin DN( cn = admin,dc = 1000,dc = hu )似乎没问题。对于apache2认证,我使用.htaccess文件,基本认证(htpasswd文件)也可以。

我的配置是:

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

无论我做什么,我都找不到"用户#34; 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"

ttest,test和testtest是我系统中的用户名,sn,cn。

AuthLDAPBindPassword的密码经过三重检查,同样适用于用户。

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

2 个答案:

答案 0 :(得分:0)

嗯,在上面的示例中,AuthLDAPURL对于所描述的设置是错误的。它应该只是:

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

答案 1 :(得分:0)

我遇到了同样的错误,这与在Active Directory中使用默认属性'uid'有关,而不是指定sAMAccountName。

AuthLDAPURL ldap://192.168.1.1:389/dc=domain,dc=local?sAMAccountName