Hilfe:Tutorial LDAP-Integration

Aus Kompetenzportal
Wechseln zu: Navigation, Suche

Vorbereitung

PHP-LDAP-Unterstützung installieren

apt-get install -y php5-ldap

Sysop Benutzer anlegen

  • Vor der Aktivierung des Plugins sollte ein mindestens lokaler Benutzer in der Wiki-Datenbank erstellt werden, der auch auf dem Verzeicnisserver (z.B. AD) vorhanden ist.
  • Diesem Benutzer sollten dann im Wiki sysop Rechte gegeben werden (so stellen sie sicher, dass sie nach der Aktivierung der Erweiterung noch einen Adminzugang haben)

Zertifikate

Für die Nutzung von SSL muss sichergestellt sein, dass der LDAP-Client (Der Webserver auf dem unser Wiki läuft) der root Certificate Authority (CA) des Verzeichnisdienst-Servers vertraut. Dazu reicht es aus die Zertifikatkette der Hochschule vom CA-Portal des Hochschulrechenzentrums herunterzuladen.

  • Zertifikatkette nach /etc/ssl/certs/ laden
  • In der Datei /etc/ldap/openldap.conf folgende Einträge vornehmen:
TLS_CACERT      /etc/ssl/certs/chain
TLS_CACERTFILE  /etc/ssl/certs/
  • Webserver neustarten
/etc/init.d/apache2 restart


Installation und Konfiguration

  • Laden Sie die aktuelle Version herunter und entpacken Sie dese in den extensions Ordner.
  • Anschließen in der LocalSettings.php folgende Einträger vornehmen:
require_once ("$IP/extensions/LdapAuthentication/LdapAuthentication.php");
$wgAuth = new LdapAuthenticationPlugin(); 
  • Nachdem die Erweiterung eingebunden wurden müssen noch die nötigen Optionen eingetragen werden. Es ist wichtig, dass diese am Ende der Datei und nicht am Anfang stehen, da sie sonst nicht wirksam werden.

Machen sie die folgenden Einträge in der LocalSettings.php:

#Festlegen des Domain-Namens
$wgLDAPDomainNames = array( "hs-wismar.de" );

#Festlegen des LDAP-Servers
$wgLDAPServerNames = array( "hs-wismar.de" => "mailhost.hs-wismar.de" );

#Suche in der Domäne nach Benutzernamen
$wgLDAPSearchAttributes = array( "hs-wismar.de" => "uid" );
$wgLDAPBaseDNs = array( "hs-wismar.de" => "dc=hs-wismar,dc=de" );

#SSL Verschlüsselung aktivieren
$wgLDAPEncryptionType = array( "hs-wismar.de" => "ssl" );

#keine leeren Passwörter
$wgMinimalPasswordLength = 1;

#Die Nutzung der lokalen Benutzeraccounts wird deaktiviert
$wgLDAPUseLocal = false;

Quellen

Vorraussetzungen
Optionen
Konfigurationsbeispiele