Evaluationssystem: Einrichtung und Konfiguration von openLDAP

openLDAP wird uns als Backend zum Ablegen von Zufalls-IDs und deren Verwaltung dienen. Die Installation auf einem debianbasierten System ist denkbar einfach.

Wer keinen eigenen Server oder Vserver zur Verfügung hat, z.B. also „nur“ hostet, muss auf die Bulkuploadalternative ausweichen und kann diesen Teil überspringen!

Loggen sie sich zunächst auf der Konsole ihres Linuxsystems ein und verschaffen Sie sich Rootrechte. Ein

apt-get install slapd

führt Sie zu folgender Dialog-Ausgabe:

Es wird lediglich ein Passwort für den Administrator verlangt. Alle übrigen Angaben ermittelt der Installer des Paketes aus Ihren Linux System selbst – meist keine glückliche Lösung. Wir werden des Paket also noch nachträglich konfigurieren.

Geben Sie also vorerst ein beliebiges Passwort ein, bestätigen Sie dieses im nächsten Dialog und erlauben Sie ggf. noch das LDAPv2-Protokoll.

Ein

dpkg-reconfigure slapd

startet danach den für uns eigentlich wichtigen Konfigurationsprozess.

Wir wollen konfigurieren, also wählen wir „Nein“. Als Nächstes muss der sogenannte Basisbaum angelegt werden (Base-DN). Das ist in etwas vergleichbar mit einem Wurzelverzeichnis eines Dateisystems.

Am einfachsten geben Sie hier den Domainamen ihrer Schule ein, etwa „schuldomain.tld“. Jetzt erhält der Basisbaum noch einen Bezeichner:

Das kann z.B. der abgekürzte Name Ihrer Schule sein, z.B. „FSG“ für Friedrich-Schiller-Gymnasium. Der Zugriff auf den Basisbaum wird durch ein Administratorpasswort geregelt. Für dieses Passwort gelten die üblichen Regeln für sichere Passwörter:

Das Passwort muss – wie so oft üblich – noch eine zweites Mal eingegeben und damit verifziert werden. Schließlich kann man sich bei den ganzen Sternchen auch verschreiben. openLDAP kann verschiedene Formate zur Speicherung seiner Daten nutzen.

Wir nutzen die Vorgabe des Paketinstallers. Wir können uns nun entscheiden, wie verfahren werden soll, wenn openLDAP deinstalliert wird. Da das ggf. auch einmal unabsichtlich geschehen kann – etwa durch einen übermüdeten Admin – behalten wir die Daten besser und akzeptieren den Vorgabewert:

Da es ja durch den ersten Installationsversuch bereits eine Datenbank gibt, muss diese verschoben werden, damit unsere Konfiguration übernommen werden kann.

Jetzt haben wir es fast geschafft. Es bleibt lediglich zu entscheiden, ob wir unverschlüsselte, anonyme Verbindungen zu unserem LDAP zulassen wollen. Das können und müssen wir sogar, da das Script für die Zufalls-IDs recht einfach gestrickt ist, weil wir den LDAP-Baum nur nutzen, um diese wertlosen Daten zu verwalten und weil wir den slapd später an localhost binden werden.

Hinweis:

Soll slapd zusätzlich für reale Daten genutzt werden, muss man sich weitaus mehr Gedanken machen, z.B. sollte man dann auch einen extra User einrichten, der nur Schreibrechte auf den Evaluationsbaum hat – aber das ginge hier zu weit: Die Stichworte für eine Suchmaschine lauten dann: „ACL +openLDAP“.

Wir wählen hier also entgegen der Vorgabe „Ja“. Damit ist die Grundkonfiguration von openLDAP abgeschlossen. Für später brauchen wir zwei wichtige Daten:

  1. Den Basis-Baum (Base-DN) – er lautet für unser Beispiel: dc=schuldomain, dc=tld
  2. Die Zugangsdaten für den Administratoraccount (admin/ihr vergebenes Passwort)

Etwas vergessen? Klappt etwas nicht? Kein Problem. Ein

dpkg-reconfigure slapd

und das Spiel beginnt von vorne. Jetzt müssen wir nur noch slapd an localhost binden, d.h. er nimmt dann nur noch Verbindungen entgegen, die vom gleichen Rechner kommen, auf dem auch er selbst läuft. Ansonsten könnte bei unserer jetzigen Konfiguration die ganze Welt unsere – völlig wertlosen – Zufalls-IDS auslesen – jedoch nicht die zugehörigen Passwortfelder, da diese ssha-verhasht und standardmäßig ohne  regulären Bind nicht lesbar sind – immerhin.

Dazu editieren wir die Datei

/etc/default/slapd

mit unserem Lieblingseditor – ich bin immer feige und nehme dafür mcedit, daran erkennt man immer noch meine DOS-Wurzeln.

Die Zeile mit SLAPD_SERVICES muss auskommentiert und geändert werden in:

SLAPD_SERVICES = „ldap://127.0.0.1“

Ein abschließendes:

/etc/init.d/slapd restart

sorgt dann dafür, dass slapd nur Verbindungen über das Loop-Device entgegennimmt. Natürlich kann man die auch noch paranoid via ldaps verschlüsseln und sich eine Menge Ärger mit unvollständig implementierten Protokollgeschichten in PHP einfangen… Unser Moodle zickt gut und gerne einmal damit herum.

Wer klicken will (was in diesem Fall niemanden weiterbringt – aber ohne Blindflug ist das schon beruhigender) und phpmyadmin gewöhnt ist, wird sich mit phpldapadmin schnell anfreunden. Einloggen kann man sich über diese Software dann mit folgenden Eingaben;

Base-DN: cn=admin, dc=schuldomain, dc=tld

Passwort: Administratorpasswort

Debianer bekommen phpldapadmin über:

apt-get install phpldapadmin

Er legt dann – debianüblich – im Webserver einen Directoryalias darauf. Die Geschichte ist dann erreichbar unter

http://www.hauptdomain.tld/phpldapadmin

zurück | vor

Facebook Like

3 Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.