Evaluationssystem: Einrichtung und Konfiguration von openLDAP

openLDAP wird uns als Backend zum Able­gen von Zufalls-IDs und deren Ver­wal­tung die­nen. Die Instal­la­ti­on auf einem debian­ba­sier­ten Sys­tem ist denk­bar einfach.

Wer kei­nen eige­nen Ser­ver oder Vser­ver zur Ver­fü­gung hat, z.B. also „nur“ hos­tet, muss auf die Bul­ku­pload­al­ter­na­ti­ve aus­wei­chen und kann die­sen Teil überspringen!

Log­gen sie sich zunächst auf der Kon­so­le ihres Linux­sys­tems ein und ver­schaf­fen Sie sich Root­rech­te. Ein

apt-get install slapd

führt Sie zu fol­gen­der Dialog-Ausgabe:

Es wird ledig­lich ein Pass­wort für den Admi­nis­tra­tor ver­langt. Alle übri­gen Anga­ben ermit­telt der Instal­ler des Pake­tes aus Ihren Linux Sys­tem selbst – meist kei­ne glück­li­che Lösung. Wir wer­den des Paket also noch nach­träg­lich konfigurieren.

Geben Sie also vor­erst ein belie­bi­ges Pass­wort ein, bestä­ti­gen Sie die­ses im nächs­ten Dia­log und erlau­ben Sie ggf. noch das LDAPv2-Protokoll.

Ein

dpkg-recon­fi­gu­re slapd

star­tet danach den für uns eigent­lich wich­ti­gen Konfigurationsprozess.

Wir wol­len kon­fi­gu­rie­ren, also wäh­len wir „Nein“. Als Nächs­tes muss der soge­nann­te Basis­baum ange­legt wer­den (Base-DN). Das ist in etwas ver­gleich­bar mit einem Wur­zel­ver­zeich­nis eines Dateisystems.

Am ein­fachs­ten geben Sie hier den Domai­na­men ihrer Schu­le ein, etwa „schuldomain.tld“. Jetzt erhält der Basis­baum noch einen Bezeichner:

Das kann z.B. der abge­kürz­te Name Ihrer Schu­le sein, z.B. „FSG“ für Fried­rich-Schil­ler-Gym­na­si­um. Der Zugriff auf den Basis­baum wird durch ein Admi­nis­tra­tor­pass­wort gere­gelt. Für die­ses Pass­wort gel­ten die übli­chen Regeln für siche­re Passwörter:

Das Pass­wort muss – wie so oft üblich – noch eine zwei­tes Mal ein­ge­ge­ben und damit verif­ziert wer­den. Schließ­lich kann man sich bei den gan­zen Stern­chen auch ver­schrei­ben. openLDAP kann ver­schie­de­ne For­ma­te zur Spei­che­rung sei­ner Daten nutzen.

Wir nut­zen die Vor­ga­be des Pake­t­in­stal­lers. Wir kön­nen uns nun ent­schei­den, wie ver­fah­ren wer­den soll, wenn openLDAP deinstal­liert wird. Da das ggf. auch ein­mal unab­sicht­lich gesche­hen kann – etwa durch einen über­mü­de­ten Admin – behal­ten wir die Daten bes­ser und akzep­tie­ren den Vorgabewert:

Da es ja durch den ers­ten Instal­la­ti­ons­ver­such bereits eine Daten­bank gibt, muss die­se ver­scho­ben wer­den, damit unse­re Kon­fi­gu­ra­ti­on über­nom­men wer­den kann.

Jetzt haben wir es fast geschafft. Es bleibt ledig­lich zu ent­schei­den, ob wir unver­schlüs­sel­te, anony­me Ver­bin­dun­gen zu unse­rem LDAP zulas­sen wol­len. Das kön­nen und müs­sen wir sogar, da das Script für die Zufalls-IDs recht ein­fach gestrickt ist, weil wir den LDAP-Baum nur nut­zen, um die­se wert­lo­sen Daten zu ver­wal­ten und weil wir den slapd spä­ter an local­host bin­den werden.

Hin­weis:

Soll slapd zusätz­lich für rea­le Daten genutzt wer­den, muss man sich weit­aus mehr Gedan­ken machen, z.B. soll­te man dann auch einen extra User ein­rich­ten, der nur Schreib­rech­te auf den Eva­lua­ti­ons­baum hat – aber das gin­ge hier zu weit: Die Stich­wor­te für eine Such­ma­schi­ne lau­ten dann: „ACL +openLDAP“.

Wir wäh­len hier also ent­ge­gen der Vor­ga­be „Ja“. Damit ist die Grund­kon­fi­gu­ra­ti­on von openLDAP abge­schlos­sen. Für spä­ter brau­chen wir zwei wich­ti­ge Daten:

  1. Den Basis-Baum (Base-DN) – er lau­tet für unser Bei­spiel: dc=schuldomain, dc=tld
  2. Die Zugangs­da­ten für den Admi­nis­tra­tor­ac­count (admin/ihr ver­ge­be­nes Passwort)

Etwas ver­ges­sen? Klappt etwas nicht? Kein Pro­blem. Ein

dpkg-recon­fi­gu­re slapd

und das Spiel beginnt von vor­ne. Jetzt müs­sen wir nur noch slapd an local­host bin­den, d.h. er nimmt dann nur noch Ver­bin­dun­gen ent­ge­gen, die vom glei­chen Rech­ner kom­men, auf dem auch er selbst läuft. Ansons­ten könn­te bei unse­rer jet­zi­gen Kon­fi­gu­ra­ti­on die gan­ze Welt unse­re – völ­lig wert­lo­sen – Zufalls-IDS aus­le­sen – jedoch nicht die zuge­hö­ri­gen Pass­wort­fel­der, da die­se ssha-ver­hasht und stan­dard­mä­ßig ohne  regu­lä­ren Bind nicht les­bar sind – immerhin.

Dazu edi­tie­ren wir die Datei

/etc/default/slapd

mit unse­rem Lieb­lings­edi­tor – ich bin immer fei­ge und neh­me dafür mce­dit, dar­an erkennt man immer noch mei­ne DOS-Wurzeln.

Die Zei­le mit SLAPD_SERVICES muss aus­kom­men­tiert und geän­dert wer­den in:

SLAPD_SERVICES = „ldap://127.0.0.1“

Ein abschlie­ßen­des:

/etc/init.d/slapd restart

sorgt dann dafür, dass slapd nur Ver­bin­dun­gen über das Loop-Device ent­ge­gen­nimmt. Natür­lich kann man die auch noch para­no­id via ldaps ver­schlüs­seln und sich eine Men­ge Ärger mit unvoll­stän­dig imple­men­tier­ten Pro­to­koll­ge­schich­ten in PHP ein­fan­gen… Unser Mood­le zickt gut und ger­ne ein­mal damit herum.

Wer kli­cken will (was in die­sem Fall nie­man­den wei­ter­bringt – aber ohne Blind­flug ist das schon beru­hi­gen­der) und phpmy­ad­min gewöhnt ist, wird sich mit phplda­pad­min schnell anfreun­den. Ein­log­gen kann man sich über die­se Soft­ware dann mit fol­gen­den Eingaben;

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

Pass­wort: Administratorpasswort

Debia­ner bekom­men phplda­pad­min über:

apt-get install phpldapadmin

Er legt dann – debian­üb­lich – im Web­ser­ver einen Direc­tory­a­li­as dar­auf. Die Geschich­te ist dann erreich­bar 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