So installierst du OpenLDAP unter Ubuntu 22.04
OpenLDAP ist eine Softwareimplementierung des Lightweight Directory Access Protocol (LDAP). OpenLDAP ist eine freie und quelloffene Software, die mit einer eigenen BSD-ähnlichen Lizenz namens OpenLDAP Public License ausgestattet ist. Die kommandozeilengesteuerte LDAP-Software ist auf den meisten Linux-Distributionen wie CentOS, Ubuntu, Debian, SUSE und vielen anderen verfügbar. OpenLDAP ist eine komplette Software-Suite für LDAP-Server, die SLAPD (eigenständiger LDAP-Daemon), SLURPD (eigenständiger LDAP-Update-Replikations-Daemon) sowie einige Dienstprogramme und Tools für die Verwaltung von LDAP-Servern umfasst. OpenLDAP ist ein hochgradig anpassbarer LDAP-Server und unterstützt alle wichtigen Computerplattformen.
LDAP Account Manager oder LAM ist eine in PHP geschriebene Webanwendung zur Verwaltung von Benutzern, Gruppen und DHCP-Einstellungen, die auf einem LDAP-Server gespeichert sind. LAM bietet eine einfache Möglichkeit, LDAP-Server über den Webbrowser zu verwalten. LAM wurde für Personen entwickelt, die nur über geringe technische Kenntnisse zur Verwaltung von LDAP-Daten verfügen. LAM gibt es in zwei verschiedenen Versionen, der kostenlosen Lite-Version und der kommerziellen Lizenzversion.
In dieser Anleitung lernst du, wie du einen LDAP-Server mit OpenLDAP und dem LDAP Account Manager auf dem Ubuntu 22.04 Server einrichtest. Außerdem erfährst du, wie du LDAP-Benutzer einrichtest und wie du einen LDAP Account Manager für die Verwaltung des OpenLDAP-Servers einrichtest.
Voraussetzungen
Bevor du mit diesem Leitfaden beginnst, musst du die folgenden Voraussetzungen erfüllen:
- Ein Ubuntu 22.04 Server
- Ein Nicht-Root-Benutzer mit Root-/Administrator-Rechten.
Einrichten des FQDN (Fully Qualified Domain Name)
Bevor du mit der Installation des OpenLDAP-Servers beginnst, musst du sicherstellen, dass der FQDN (Fully Qualified Domain Name) für den OpenLDAP-Server richtig konfiguriert ist. In dieser Demo werden wir einen OpenLDAP-Server mit dem Server-Hostnamen„ldap“ und der Domain„localdomain.com“ sowie der IP-Adresse„192.168.5.25“ einrichten.
Führe den folgenden Befehl aus, um den FQDN auf „ldap.localdomain.com“ einzurichten.
sudo hostnamectl set-hostname ldap.localdomain.com
Bearbeite die Konfigurationsdatei „/etc/hosts“ mit dem folgenden Befehl.
sudo nano /etc/hosts
Füge die folgende Konfiguration in die Datei ein. Das Format der Datei „/etc/hosts“ ist hier„server-IP fqdn hostname„.
192.168.5.25 ldap.localdomain.com ldap
Speichere und schließe die Datei, wenn du fertig bist.
Führe abschließend den folgenden Befehl aus, um den FQDN deines LDAP-Servers zu überprüfen. In dieser Demo solltest du eine Ausgabe wie„ldap.localdomain.com“ erhalten. Wenn du außerdem versuchst, den Hostnamen„ldap“ anzupingen, solltest du die Antwort von der Server-IP-Adresse„192.168.5.25“ statt von localhost erhalten.
sudo hostname -f ping ldap
Installieren der OpenLDAP-Pakete
Wenn du den richtigen FQDN hast, ist es an der Zeit, die OpenLDAP-Pakete zu installieren, die standardmäßig im Ubuntu-Repository verfügbar sind.
Bevor du mit der Installation der Pakete beginnst, führe den unten stehenden apt-Befehl aus, um dein Ubuntu-Systemrepository zu aktualisieren und aufzufrischen.
sudo apt update
Installiere nun die OpenLDAP-Pakete mit dem folgenden Befehl. Gib Y ein, um die Installation zu bestätigen, und drücke ENTER, um die Installation zu starten.
sudo apt install slapd ldap-utils
Während der Installation der OpenLDAP-Pakete wirst du aufgefordert, das Admin-Passwort für OpenLDAP einzurichten. Gib das sichere Passwort für den OpenLDAP-Admin-Benutzer ein und wähle„OK„, dann wiederhole dein Passwort. Damit ist die Installation von OpenLDAP abgeschlossen.
OpenLDAP-Server konfigurieren
Um mit der Konfiguration des OpenLDAP-Servers zu beginnen, führe den folgenden Befehl aus. Dieser Befehl konfiguriert das Haupt-OpenLDAP-Paket „slapd“ neu und du wirst nach einigen grundlegenden OpenLDAP-Konfigurationen gefragt.
sudo dpkg-reconfigure slapd
Bei der Frage„OpenLDAP-Serverkonfiguration auslassen?„, wähle„Nein„. Dadurch wird der OpenLDAP-Server mit einer neuen Konfigurationsdatei und einer neuen Datenbank eingerichtet.
Gib den Domänennamen für deine OpenLDAP-Installation ein und wähle„Ok„. Dieser Domainname wird als DN (Distinguished Name) deines OpenLDAP-Servers verwendet. In dieser Demo lautet der Domänenname„localdomain.com„, also wird der DN„dc=localdomain,dc=com“ lauten.
Gib den Organisationsnamen ein, der in der DN verwendet werden soll. Du kannst dafür die Domäne verwenden, aber auch einen anderen Namen.
Gib nun das Admin-Passwort für deinen OpenLDAP-Server ein und wiederhole das Passwort. Achte auch darauf, dass das Passwort richtig ist.
Wenn du gefragt wirst, ob du die alte Datenbank entfernen willst, wähle„Nein„.
Wähle nun„Ja„, um die alte OpenLDAP-Datenbank zu verschieben, und die OpenLDAP-Konfiguration ist abgeschlossen.
Unten siehst du die Ausgabe, wenn die OpenLDAP-Konfiguration abgeschlossen ist.
Nachdem du das Paket„slapd“ neu konfiguriert hast, bearbeite die Konfigurationsdatei„/etc/ldap/ldap.conf“ mit dem folgenden Befehl.
sudo nano /etc/ldap/ldap.conf
Entferne die Kommentare in den Zeilen „BASE“ und „URI“ und gib den Domainnamen für deinen OpenLDAP-Server ein. In dieser Demo ist die„BASE“ hier„dc=localdomain,dc=com“ und die„URI“ für den OpenLDAP-Server ist„ldap://ldap.localdomain.com„.
BASE dc=localdomain,dc=com URI ldap://ldap.localdomain.com
Speichere und schließe die Datei, wenn du fertig bist.
Führe nun den folgenden Befehl aus, um den OpenLDAP-Dienst „slapd“ neu zu starten und die neuen Änderungen auf dem OpenLDAP-Server anzuwenden. Der OpenLDAP-Server läuft jetzt mit dem Basis-DN„dc=localdomain,dc=com„.
sudo systemctl restart slapd sudo systemctl status slapd
Führe abschließend den folgenden Befehl aus, um die OpenLDAP-Basiskonfiguration zu prüfen und zu verifizieren. Du solltest den Basis-DN für den OpenLDAP-Server als„dc=localdomain,dc=com“ erhalten.
sudo ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:///
Einrichten der Basisgruppe
Nachdem du den Basis-DN (Distinguished Name) des OpenLDAP-Servers konfiguriert hast, wirst du nun eine neue Basisgruppe für OpenLDAP-Benutzer erstellen. In dieser Demo erstellst du zwei verschiedene Basisgruppen: die Gruppe „People“ für die Speicherung von Benutzern und die Gruppe „Groups“ für die Speicherung von Gruppen auf deinem OpenLDAP-Server.
Um neue LDAP-Inhalte wie Benutzer und Gruppen zu erstellen, kannst du die LDIF-Datei (LDAP Data Interchange Format) und das LDAP-Tool„ldapadd“ verwenden.
Erstelle eine neue LDIF-Datei„base-groups.ldif“ mit dem unten stehenden Befehl.
sudo nano base-groups.ldif
Füge die folgende Konfiguration in die Datei ein.
dn: ou=People,dc=localdomain,dc=com objectClass: organizationalUnit ou: People
dn: ou=Groups,dc=localdomain,dc=com
objectClass: organizationalUnit
ou: Groups
Führe nun den unten stehenden Befehl„ldapadd“ aus, um neue Basisgruppen in der Datei„base-groups.ldif“ anzulegen. Du wirst zur Eingabe des OpenLDAP-Administrator-Passworts aufgefordert, also achte darauf, das richtige Passwort einzugeben.
sudo ldapadd -x -D cn=admin,dc=localdomain,dc=com -W -f base-groups.ldif
Zum Schluss führst du den folgenden Befehl aus, um die Basisgruppen deines OpenLDAP-Servers zu prüfen und zu verifizieren. Du solltest jetzt zwei Basisgruppen sehen, die Gruppe„Personen“ und„Gruppen„.
sudo ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:///
Hinzufügen einer neuen Gruppe
Nachdem du die Basisgruppen auf dem LDAP-Server erstellt hast, kannst du nun eine neue LDAP-Gruppe und einen neuen Benutzer erstellen. In diesem Abschnitt wirst du eine neue Gruppe über die LDIF-Datei erstellen.
Erstelle eine neue LDIF-Datei„group.ldif“ mit dem folgenden Befehl.
sudo nano group.ldif
Füge die folgende Konfiguration in die Datei ein. In diesem Beispiel erstellen wir eine neue Gruppe mit dem Namen „developers“, speichern sie in der Basisgruppe „Groups“ und definieren die gidNummer„5000„.
dn: cn=developers,ou=Groups,dc=localdomain,dc=com objectClass: posixGroup cn: developers gidNumber: 5000
Speichere und schließe die Datei, wenn du fertig bist.
Als nächstes führst du den Befehl„ldapadd“ aus, um die neue Gruppe„developers“ hinzuzufügen. Achte darauf, dass du das Admin-Passwort für deinen OpenLDAP-Server eingibst.
sudo ldapadd -x -D cn=admin,dc=localdomain,dc=com -W -f group.ldif
Zum Schluss führst du den folgenden Befehl aus, um die Gruppe„developers“ zu prüfen und zu verifizieren. Du solltest die Ausgabe der Gruppe„developers“ erhalten, die Teil von„Groups“ ist und die gidNummer„5000“ hat.
sudo ldapsearch -x -LLL -b dc=localdomain,dc=com '(cn=developers)' gidNumber
Hinzufügen von OpenLDAP-Benutzern
Nachdem du eine Gruppe auf dem OpenLDAP-Server erstellt hast, ist es an der Zeit, einen LDAP-Benutzer über die LDIF-Datei zu erstellen.
Bevor du einen neuen Benutzer anlegst, führe den folgenden Befehl aus, um ein verschlüsseltes Passwort für den neuen LDAP-Benutzer zu generieren. Gib das neue Passwort ein und wiederhole es. Kopiere dann das verschlüsselte Passwort„{SSHA}ZdNAB+uH/zbK1mdS9JWlfOwRDf0mrsla„.
sudo slappasswd
Erstelle nun eine neue LDIF-Datei „user.ldif“ mit dem folgenden Befehl.
sudo nano user.ldif
Füge die folgende Konfiguration in die Datei ein. In dieser Demo erstellen wir einen neuen Benutzer„john“ mit dem Standard-Home-Verzeichnis „/home/john“ und der Standard-Shell„/bin/bash„. Außerdem kannst du oben in der Konfigurationsdatei sehen, dass dieser Benutzer Teil der Gruppe„People“ ist und die gidNummer„5000“ verwendet.
dn: uid=john,ou=People,dc=localdomain,dc=com objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount uid: john sn: Doe givenName: John cn: John Doe displayName: John Doe uidNumber: 10000 gidNumber: 5000 userPassword: {SSHA}ZdNAB+uH/zbK1mdS9JWlfOwRDf0mrsla gecos: John Doe loginShell: /bin/bash homeDirectory: /home/john
Speichere und schließe die Datei, wenn du fertig bist.
Als nächstes führst du den Befehl„ldapadd“ aus, um einen neuen Benutzer in der Datei„user.ldif“ hinzuzufügen. Gib nun das Admin-Passwort für den OpenLDAP-Server ein.
sudo ldapadd -x -D cn=admin,dc=localdomain,dc=com -W -f user.ldif
Zum Schluss führst du den Befehl„ldapsearch“ aus, um den neuen LDAP-Benutzer zu überprüfen und zu verifizieren. Nun sollte der Benutzer„john“ erstellt und auf dem OpenLDAP-Server verfügbar sein.
sudo ldapsearch -x -LLL -b dc=localdomain,dc=com '(uid=john)' cn uidNumber gidNumber
Installation des LDAP Account Managers
An dieser Stelle hast du die grundlegende OpenLDAP-Installation abgeschlossen. Jetzt installierst du den LDAP Account Manager auf demselben Server wie den OpenLDAP-Server. Der LDAP Account Manager (LAM) ist eine Webanwendung, die als Front-End für den OpenLDAP-Server verwendet werden kann. Mit ihm kannst du den OpenLDAP-Server über den Webbrowser verwalten und neue Benutzer, Gruppen usw. einrichten.
Der LAM ist standardmäßig im Ubuntu-Repository verfügbar. Du kannst es mit dem unten stehenden apt-Befehl installieren. Dadurch werden auch andere Pakete wie PHP und der Apache2 Webserver installiert.
Gib Y ein, um die Installation zu bestätigen und drücke ENTER, um fortzufahren. Die Installation von LAM beginnt nun.
sudo apt install ldap-account-manager
Nach Abschluss der Installation öffnest du den Webbrowser und rufst die IP-Adresse des Servers auf, gefolgt von dem URL-Pfad„/lam (d.h. http://192.168.5.25/lam). Du solltest nun die Anmeldeseite des LDAP Account Managers (LAM) sehen.
LDAP Account Manager konfigurieren
Bevor du mit der Verwaltung deines OpenLDAP-Servers über die LAM-Anwendung beginnst, musst du das LAM-Profil für deinen OpenLDAP-Server einrichten.
Auf der LAM-Anmeldeseite klickst du oben links auf das Menü„LAM-Konfiguration„.
Klicke nun auf„Serverprofile bearbeiten„, um das LAM-Profil für deinen OpenLDAP-Server einzurichten.
Wenn du nach dem Passwort gefragt wirst, gib das Standardpasswort„lam“ ein und klicke auf„Anmelden„. Das Standardprofil für den LDAP Account Manager ist„lam„. Du wirst dieses Standardprofil für deinen OpenLDAP-Server bearbeiten.
Auf der Seite„Allgemeine Einstellungen“ siehst du einige der verschiedenen Einstellungen.
Auf der Seite„Werkzeugeinstellungen“ gibst du den Haupt-DN(Distinguished Name) des OpenLDAP-Servers ein. In dieser Demo ist der DN„dc=localdomain,dc=com„.
Im Abschnitt„Sicherheitseinstellungen“ wählst du als „Anmeldemethode“ „Feste Liste“. Dann gibst du die Anmeldedaten für den OpenLDAP-Server ein. Der Standardbenutzer für OpenLDAP ist „admin“, also sollte das Feld wie folgt lauten: „cn=admin,dc=localdomain,dc=com„.
Zuletzt gibst du im Abschnitt „Passwortprofil“ ein neues Passwort ein. Damit wird das Standardpasswort für das Profil „lam“ geändert. Klicke dann auf die Schaltfläche „Speichern“, um die Änderungen zu übernehmen.
Jetzt wirst du auf die Anmeldeseite des LDAP Account Managers weitergeleitet. Klicke erneut auf das Menü „LAM-Konfiguration“ und bearbeite das Standardprofil„lam„.
Gehe nun auf die Seite „Kontotypen“, um die Standardgruppe des OpenLDAP-Servers einzurichten.
Im Abschnitt„Benutzer“ gibst du das LDAP-Suffix als„ou=Personen,dc=localdomain,dc=com“ ein. In diesem Beispiel sollen alle Benutzer unter„People“ verfügbar sein.
Im Abschnitt„Gruppen“ gibst du das LDAP-Suffix„ou=Groups,dc=localdomain,dc=com“ ein. In diesem Beispiel sollten alle Gruppen in der Basisgruppe„Gruppen“ verfügbar sein.
Klicke nun auf die Schaltfläche„Speichern„, um die Änderungen im Standardprofil„lam“ zu speichern.
An dieser Stelle wirst du wieder zur Anmeldeseite des LDAP Account Managers weitergeleitet. Wie du sehen kannst, ist der Standard-Benutzer-Login jetzt„admin„. Gib das Admin-Passwort für dein OpenLDAP-Passwort ein und klicke auf„Anmelden„. Du solltest nun das LAM-Dashboard sehen.
Im Menü„Benutzer“ solltest du den Benutzer„john“ sehen, den du gerade erstellt hast.
Im Menü„Gruppen“ solltest du die Gruppe„Entwickler“ sehen.
Fazit
Herzlichen Glückwunsch! Du hast nun erfolgreich den OpenLDAP-Server mit dem LDAP Account Manager (LAM) auf dem Ubuntu 22.04-Server installiert. Du hast auch gelernt, wie du eine OpenLDAP-Gruppe und einen Benutzer einrichtest. Schließlich hast du auch gelernt, wie du ein LDAP Account Manager-Profil einrichtest, um den OpenLDAP-Server zur LAM-Webanwendung hinzuzufügen.