OpenLDAP ist ein Datenbank Backend zum Verwalten von Organisationseinheiten wie Benutzern, Rechnern u.ä in größeren Organisationen. In Verbindung mit Samba ist es ein vollwertiger Ersatz für einen Domain Controller der Ebene 2003.
Zuerst installiere ich LDAP und die dazugehörigen Programme
apt-get install slapd ldap-utils
und starte zu Beginn gleich die Erstkonfiguration
dpkg-reconfigure slapd
Dabei werde ich nach Domainname und Passwort des Domänenadministrators gefragt. Um zu testen ob die Installation geklappt hat, kann man direkt die Konfiguration anzeigen
ldapsearch -Y EXTERNAL -H ldapi:/// -b "cn=config"
Um eine OU anzulegen, muss man eine ldif Datei anlegen. Ich erstelle zu Beginn eine OU für alle Benutzer und eine für Benutzergruppen. Beispiel: ou.ldif
dn: ou=People,dc=example,dc=com objectClass: organizationalUnit ou: People dn: ou=Groups,dc=example,dc=com objectClass: organizationalUnit ou: Groups
Diese Datei importiert man mit ldapadd
ldapadd -x -D "cn=admin,dc=example,dc=com" -w <password> -H ldap:// -f ou.ldif
Mit Gruppen von Objekten fällt es leichter, diese zu verwalten und einheitlich zu konfigurieren. Beispiel: group.ldif
dn: cn=Employees,ou=Groups,dc=example,dc=com objectClass: posixGroup cn: employees gidNumber: 5000
Möchte man einen Benutzer zu einer bestehenden OU hinzufügen, erstellt man auch eine ldif Datei. Beispiel user.ldif
dn: uid=zarat,ou=People,dc=example,dc=com changetype: add objectClass: inetOrgPerson description: Manuel Zarat - Standard Account. cn: Manuel Zarat sn: Zarat uid: zarat gidNumber: 5000
Diese Datei importiert man wieder mit Hilfe von ldapadd
ldapadd -x -D "cn=admin,dc=example,dc=com" -w password -H ldap:// -f user.ldif
Möchte man einen Benutzer verschieben, muss man wieder eine eigene ldif Datei anlegen. moveuser.ldif
dn: uid=zarat,ou=People,dc=example,dc=com changetype: modrdn newrdn: uid=zarat deleteoldrdn: 0 newsuperior: ou=Customers,dc=example,dc=com
und wieder mit Hilfe von ldapadd importieren
ldapadd -x -D "cn=admin,dc=example,dc=com" -w password -H ldap:// -f moveuser.ldif
Auch zum Löschen einer OU muss eine ldif Datei erstellt werden. Beispiel: delete_ou.ldif
dn: ou=People,dc=example,dc=com changetype: delete
Importieren mit ldapadd
ldapadd -x -D "cn=admin,dc=example,dc=com" -w <password> -H ldap:// -f delete_ou.ldifBeitrag auf Github bearbeiten