PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Apache 2.2.0 LDAP Auth Problem



olc
31.10.06, 12:20
Hallo,

ich habe ein Problem mit der Authentifizierung des Apache gegen einen LDAP Server (AD):

Auf einem älteren SuSE 9.3 Server läuft es wunderbar (Apache 2.0.53), die gleiche Konfiguration läuft auf dem Apache 2.2.0 (auf SuSE 10.1) leider nicht. Es sind offensichtlich einige Änderungen in den Modulen bei dem Versionswechsel und ich weiß nun nicht, ob es an den Modulen liegt oder der Fehler woanders liegt.

Auszug aus der httpd.conf:


<Directory /srv/www/htdocs/ordnername>
AuthType Basic
AuthName "Name"
AuthLDAPAuthoritative On
AuthLDAPEnabled On
AuthLDAPURL ldap://server.bla.de/OU=unit,DC=bla,DC=de?sAMAccountName?sub
AuthLDAPBindDN username@bla.de
AuthLDAPBindPassword password
require username
</Directory>

In der Sysconfig sind folgende Module eingetragen:


APACHE_MODULES="actions alias auth_basic ldap authnz_ldap authn_file authz_host authz_groupfile authz_default authz_user authn_dbm autoindex cgi dir env expires include log_config mime negotiation setenvif ssl suexec userdir php5"

Es gibt kein Modul mehr mit dem Namen auth_ldap, nur noch authnz_ldap.

Wenn ich nun den Apache starte, bekomme ich folgenden Fehler:


rcapache2 start
Syntax error on line 29 of /etc/apache2/httpd.conf:
Invalid command 'AuthLDAPAuthoritative', perhaps misspelled or defined by a module not included in the server configuration

Scheinbar kennt (trotz geladenener Module) der Apache die LDAP-Authentifizierung nicht.

In den Apache Logs ist auch zu sehen, daß er sofort versucht, auf per Passwort Datei die Authentifizierung vorzunehmen. Scheinbar findet kein Versuch statt, den LDAP Server zu kontaktieren.

Hat jemand einen Lösungsansatz? Auf der Apache-Seite und bei Google habe ich schon gesucht, aber nichts konkretes gefunden...

Danke und Gruß
olc

olc
31.10.06, 13:21
Nachtrag:

Ein "AuthzLDAPAuthoritative On" und das Entfernen von "AuthLDAPEnable on" läßt den Apache ohne Fehlermeldung starten, jedoch ist eine LDAP-Authentifizierung dann trotzdem nicht möglich. Der Apache versucht weiterhin per htpasswd-Datei zu authentifizieren...

Gruß olc

olc
31.10.06, 14:18
Falls noch jemand das Problem hat:

Problemlösung:
- "AuthBasicProvider ldap" muß ab der 2.2.0er Version mit eingetragen werden
- "AuthLDAPEnable" muß entfernt werden
- AuthzLDAPAuthoritative anstatt AuthLDAPAuthoritative verwenden
- "require user <username>" wird zu "require ldap-user <username>" und "require group <gruppe>" wird zu "require ldap-group <gruppe>"

Gruß olc