Dies ist eine alte Version des Dokuments!
FH-Complete unterstützt die Authentifizierung gegen Openldap und Active Directory.
Falls eine Verschlüsselte Verbindung zum LDAP Server möglich ist, muss in der Datei /etc/ldap/ldap.conf das entsprechende Zertifikat eingetragen werden wenn dieses selbst signiert ist oder nicht öffentlich bekannt.
TLS_CACERT /etc/ssl/certs/meincazertifikat.crt TLS_REQCERT demand
Zu Testzwecken und zur Fehlersuche kann es sinnvoll sein, die Zertifikatsprüfung zu deaktivieren:
TLS_REQCERT never
Dies betrifft jedoch nur die PHP ldap Funktionen und die Commandline Funktionen (zB ldap_search) Die Authentifizierung über .htaccess prüft das Zertifikat weiterhin. Um diese Prüfung zu deaktivieren wird in der Datei /etc/apache2/mods-enabled/ldap.conf foglendes gesetzt:
LDAPVerifyServerCert off
auth_ldap authenticate: user foo authentication failed; URI /secret [ldap_search_ext_s() for user failed][Operations error]
Falls dieser Fehler Auftritt muss folgender Eintrag in der Datei /etc/ldap/ldap.conf hinzugefügt werden:
REFERRALS off
Wird auf einen Active Directory zugegriffen muss in diesem Fall in der .htaccess Datei in der AuthLDAPURL der Port 3268 angegeben werden:
AuthLDAPURL ldap://ad.example.com:3268/dc=academic,dc=local?sAMAccountName?sub
Sollte der Login im FH-Complete nicht funktionieren, kann der Zugriff auf den LDAP Server von der Commandline geprüft werden.
Dazu werden die LDAP-Utils benötigt:
apt-get install ldap-utils
Danach kann der Zugriff auf den LDAP Server und der Login geprüft werden:
Zugriff ohne Verschlüsselung:
ldapsearch -LLL -x -H ldap://ldap.example.com:389 "samaccountname=testuser"
Zugriff mit STARTTLS Verschlüsselung
ldapsearch -LLL -x -ZZ -H ldap://ldap.example.com:389 "samaccountname=testuser"
Zugriff mit SSL Verschlüsselung
ldapsearch -LLL -x -H ldaps://ldap.example.com:636 "samaccountname=testuser"
Sollte der LDAP Server einen Bind User benötigen kann folgender Befehl verwendet werden:
ldapsearch -LLL -x -D "cn=administrator,dc=academic,dc=local" -W -H ldap://ldap.example.com:389 "samaccountname=testuser"