2

apache2 LDAP 認証を構成して理解しようとしています。

実際、私は openSUSE 13.1 64 ビットをVMとして実行しており、必要なモジュールを有効にして次の手順に従いました: http://www.yolinux.com/TUTORIALS/LinuxTutorialApacheAddingLoginSiteProtection.html

私の httpd-local.conf (元の httpd.conf に含まれています):

 AuthType              Basic
 AuthName              "Mein geschütztes Verzeichnis"
 AuthBasicProvider     ldap
 AuthLDAPURL           "ldap://ldap_server.DOMAIN1.DOMAIN2.de/ou=Test,ou=Benutzer,ou=DOMAIN1/DOMAIN2,dc=DOMAIN1,dc=DOMAIN2,dc=de"
 AuthLDAPBindDN        "cn=Firstname Lastname,ou=Test,ou=Benutzer,ou=DOMAIN1/DOMAIN2,dc=DOMAIN1,dc=DOMAIN2,dc=de"
 AuthLDAPBindPassword  "MyAccountPassword"
 Require valid-user

次でログインしようとすると: ユーザー: "Firstname Lastname" パスワード "MyAcountPassword" 私は取得しています:

[Mon Jul 14 11:05:38.527956 2014] [auth_basic:error] [pid 5318] [client xxx.x.x.xxx:xxxxx] AH01618: user Firstname Lastname not found: /
[Mon Jul 14 11:05:38.528605 2014] [auth_basic:error] [pid 5318] [client xxx.x.x.xxx:xxxxx] AH01618: user Firstname Lastname not found: /error/HTTP_UNAUTHORIZED.html.var

構成を変更する場合:

 AuthType              Basic
 AuthName              "Mein geschütztes Verzeichnis"
 AuthBasicProvider     ldap
 AuthLDAPURL           "ldap://ldap_server.DOMAIN1.DOMAIN2.de/ou=Test,ou=Benutzer,ou=DOMAIN1/DOMAIN2,dc=DOMAIN1,dc=DOMAIN2,dc=de"
 AuthLDAPBindDN        "cn=username,ou=Test,ou=Benutzer,ou=DOMAIN1/DOMAIN2,dc=DOMAIN1,dc=DOMAIN2,dc=de"
 AuthLDAPBindPassword  "MyAccountPassword"
 Require valid-user

でログインしようとしています: ユーザー: "username" パスワード "MyAcountPassword" 私は取得しています:

[Mon Jul 14 11:09:01.972015 2014] [auth_basic:error] [pid 5372] [client xxx.x.x.xxx:xxxxx] AH01617: user username: authentication failure for "/": Password Mismatch
[Mon Jul 14 11:09:01.973896 2014] [auth_basic:error] [pid 5372] [client xxx.x.x.xxx:xxxxx] AH01617: user username: authentication failure for "/error/HTTP_UNAUTHORIZED.html.var": Password Mismatch

~~~~~~~~~ 編集 #1: ~~~~~~~~~

ldapsearch "ldap://ldap_server.DOMAIN1.DOMAIN2.de/ou=Test,ou=Benutzer,ou=DOMAIN1/DOMAIN2,dc=DOMAIN1,dc=DOMAIN2,dc=de"

取得中: ldap_sasl_interactive_bind_s: LDAP サーバーに接続できません (-1)

~~~~~~~~~~~~~~~~~~~~~~~~~~

未回答の質問がいくつかあるため、実際にはデバッグできません。お知らせするために、以前は LDAP を使用したことがありませんでした。BindDN が必要な理由は、1 人だけでなく、すべてのユーザーと接続できるようにしたいからです。終了したら、ログイン時にこの LDAP 認証を必要とするホームページを作成し、ユーザー グループ (認証時にこれを返したい) に応じて、ユーザーに異なるコンテンツが表示されます。

誰かが私にこれを説明して、私を助けてくれませんか?

アドバイスありがとう。よろしくお願いします。

4

2 に答える 2

1

参考までに: 元のドキュメント (バージョン 2.4 の場合: https://httpd.apache.org/docs/2.4/mod/mod_authnz_ldap.html#authldapbinddn ) には、以下についてのみ記載されていますAuthLDAPBindDN

AuthLDAPBindDN distinguished-name

私の経験では、ldap ツリー内でのこのアカウントの正確な位置を記述する正確な DN (例: CN=...,OU=...) によって、または単にアカウントの userPrincipalName 値によって、バインディング アカウントを正確に識別する必要があります。(「正確」という用語の乱用は意図的なものです。)

一部のプラットフォームでは、このパラメーターで大文字と小文字が区別される可能性があるという報告を見てきました。

于 2015-11-05T16:15:16.717 に答える
0

解決:

AuthType Basic
AuthName "Mein geschütztes Verzeichnis"
AuthBasicProvider ldap
AuthLDAPURL "ldap://SERVER_IP.DOMAIN1.DOMAIN2.de/ou=DOMAIN1/DOMAIN2,dc=lfm,dc=DOMAIN2,dc=de?sAMAccountName?sub?(objectClass=*)"
AuthLDAPBindDN "USERNAME@DOMAIN1.DOMAIN2.de"
AuthLDAPBindPassword "PASSWORD"
Require valid-user
于 2015-11-05T16:23:57.333 に答える