Administratorhandbuch:LDAP

Aus Delixs
Zur Navigation springen Zur Suche springen
Uberarbeiten Diese Seite sollte nochmals überarbeitet werden. Eine Begründung befindet sich in der Regel unter Diskussion (oben).

Die zentrale Nutzerverwaltung mit LDAP

  • Der Anfang stammt aus einer Mail von Reiner

Was ist LDAP

Es gibt EINE Bibliothek, die der LDAP-Server mitbringt (libldap, liblber).

Die Programme, die auf den LDAP-Server zugreifen sollen, werden beim Kompilieren gegen diese Bibliotheken gelinkt.

Wo wird dem Server denn gesagt, das er auf die LDAP Datenbank zugreifen muss?

Zum einen beim Kompilieren. Fehlt die LDAP-Unterstützung beim Übersetzen, wird er nie mit einem LDAP-Server kommunizieren können. Zum anderen müssen die Zugriffsdaten in der Konfigurationsdatei, beim DHCP-Server beispielsweise in

 /etc/dhcpd.conf

stehen.

Wo sind diese LDIF Dateien?

Sie werden mit echo-Befehlen erzeugt, in den LDAP eingelesen und dann weggeworfen. Sie können die LDIF-Dateien der Ersteinrichtung in

 /var/adm/setup/done

nachlesen.

Die aktuellen Versionen von Arktur 4 (seit Februar) haben einen cron-Job, der eine gesamt.ldif Datei erstellt und in /etc/ods ablegt. Wenn Sie /etc immer komplett sichern, sind die Daten im LDAP wiederherstellbar.

LDAP nutzt aber keine Abfragesprache wie SQL, oder?

Nicht SQL, aber dennoch eine spezielle Form. Nachzulesen mit

 man ldapsearch

So liefert z.B.

 ldapsearch -x -LLL "(gecos=*,7a)" gecos

die Realnamen aller Schüler der Klasse 7a.

Verknüpfungen mit UND bzw. ODER sind ebenfalls möglich. So liefert also

 ldapsearch -x -LLL "(&(objectclass=posixGroup)(cn=zeit*))"

die Daten aller Gruppen, die mit "zeit" beginnen (Zeitung, Zeitformen,...).

Wo liegen die Daten?

Die eigentliche Datenbasis von LDAP liegt in /var/lib/ldap

LDAP-Daten auslesen

Die man-page von slapcat verrät,...

  /usr/sbin/slapcat  [-v]  [-c]  [-d  level]  [-b  suffix] [-n dbnum] [-f
        slapd.conf] [-l ldif-file]

...dass die Ausgabe auf dem Bildschirm erfolgt, wenn nicht die Option -l mitgegeben wird.


 -l ldif-file  Write LDIF to specified file instead of standard output.


Jede Nacht legt Arktur genau diese Ausgabe in /etc/ods als gesamt.ldif ab. Darin ist also _alles_ enthalten bis letzte Nacht.


Slapadd liest mit der gleichen Option aus einer Datei ein.

 # slapadd -l /wo/ichs/mittlerweile/hinkopiert/habe/mein.ldif.file


Wichtig: slapadd sollte nur ausgeführt werden, wenn LDAP _NICHT_ aktiv ist. Also vorher

 /etc/init.d/ldap stop 

ausfühen, dann

 slapadd -l /etc/ods/gesamt.ldif


LDAP-Administration

Dazu aus einer Mail ein Anfang:

Frage:

Wo liegt der Unterschied der 2 Verzeichnisse /usr/www/secure/ldapadmin und /usr/www/phpldapadmin und warum Version 0.9.3 und nicht 0.9.6?

Antwort:

Frage 1: an ldapadmin kann man sich mit seinem Nutzernamen und seinem Passwort anmelden. Bei phpldapadmin, das weitestgehendst Hardlinks sind, muss man die vollständige dn angeben. Da man sich an ldapadmin nicht als "cn=admin, dc=meine_schule,c=de" anmelden kann, habe ich einfach beides vorgesehen. Der Platzunterschied ist minimal (eigentlich nur config).

Frage 2: Seit 0.9.4 werden Attribute, die einen Binärtyp haben, nicht mehr angezeigt. Damit kannst Du z.B. die MAC-Adresse im DHCP-Baum nicht mehr per ldapadmin anpassen. Er bietet nur an, den Binärwert zu laden. Daher habe ich einen Downgrade gemacht. Neben DHCP trifft das auch auf einige Samba-Attribute zu.


zurück | Hauptseite