So installierst du OpenLDAP Server und Client auf Rocky Linux 9

OpenLDAP ist eine Softwareimplementierung des Lightweight Directory Access Protocol (LDAP). OpenLDAP ist eine freie und quelloffene Software mit einer BSD-ähnlichen Lizenz namens OpenLDAP Public License. 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 sehr anpassungsfähiger LDAP-Server und unterstützt alle wichtigen Computerplattformen.

In dieser Anleitung wirst du OpenLDAP auf einem Rocky Linux 9 Server installieren und einrichten. Du installierst den OpenLDAP-Server, konfigurierst den OpenLDAP-Server manuell und aktivierst sicheres SSL/TLS auf dem OpenLDAP-Server. Außerdem fügst du dem OpenLDAP-Server über den OpenLDAP-Client und SSSD (System Security Services Daemon) einen Client-Rechner hinzu. Überprüfe deine Installation, indem du dich als OpenLDAP-Benutzer auf dem Client-Rechner anmeldest.

Voraussetzungen

Um diesen Leitfaden auszuführen, musst du die folgenden Voraussetzungen erfüllen:

  • Einen Server mit mindestens 4 GB RAM und 2 CPUs, auf dem das Rocky Linux 9 System läuft – In diesem Beispiel wird ein Rocky Linux mit dem Hostnamen„ldap“ und fqdn„ldap.hwdomain.lan“ verwendet.
  • Ein Rechner, der als Client verwendet wird – In diesem Beispiel wird ein Rocky Linux Client-Rechner mit dem Hostnamen‚client‚ verwendet.
  • Ein Nicht-Root-Benutzer mit sudo/root-Administrator-Rechten.
  • Ein SELinux, das im permissiven Modus läuft.

Im Folgenden findest du die detaillierten Server, die für diesen Leitfaden verwendet werden:

Hostname    IP Address    Used as
-----------------------------------------
ldap        192.168.5.25  OpenLDAP Server
client      192.168.5.80  OpenLDAP Client

Wenn diese Voraussetzungen erfüllt sind, kannst du mit der Installation von OpenLDAP beginnen.

FQDN und /etc/hosts einrichten

Bevor du mit der OpenLDAP-Installation beginnst, musst du den richtigen fqdn (fully qualified domain name) und die Datei /etc/hosts auf dem Zielserver einrichten.

Gib den folgenden „hostnamectl“-Befehl ein, um den fqdn deines OpenLDAP-Servers einzurichten. In diesem Beispiel wird der fqdn des OpenLDAP-Servers„ldap.hwdomain.lan“ sein.

sudo hostnamectl set-hostname ldap.hwdomain.lan

Öffne nun die Datei „/etc/hosts“ mit dem folgenden Befehl des nano Editors.

sudo nano /etc/hosts

Füge die folgende Zeile in die Datei ein und achte darauf, dass du die Details hostname, fqdn und IP-Adresse änderst.

# ip - fqdn - hostname
192.168.5.25 ldap.hwdomain.lan ldap

Speichere und schließe die Datei, wenn du fertig bist.

Gib nun den folgenden Befehl ein, um den fqdn deines Servers zu überprüfen und sicherzustellen, dass der fqdn auf die richtige Server-IP-Adresse zeigt.

sudo hostname -f
ping -c3 ldap.hwdomain.lan

Wenn die Überprüfung erfolgreich war, solltest du eine ähnliche Ausgabe erhalten wie diese – Der fqdn des OpenLDAP-Servers ist„ldap.hwdomain.lan„, der auf die Server-IP-Adresse„192.168.5.25“ zeigt.

fqdn und /etc/hosts einrichten

Gehe nun zum nächsten Schritt über, um mit der Installation des OpenLDAP-Servers zu beginnen.

Installation des OpenLDAP-Servers

Auf dem neuesten Rocky Linux 9 Server sind OpenLDAP-Pakete im „plus“-Repository verfügbar, das standardmäßig nicht aktiviert ist.

In diesem Abschnitt wirst du den OpenLDAP Server und den Client auf deinem Rocky Linux Server installieren. Zuvor musst du jedoch das„plus„-Repository auf deinem System aktivieren.

Gib den folgenden „dnf config-manager“ -Befehl ein, um das„plus„-Repository zu aktivieren. Überprüfe dann die Liste der Repositories auf deinem System.

sudo dnf config-manager --set-enabled plus
sudo dnf repolist

Du solltest eine Ausgabe wie diese erhalten – Das Rocky Linux‚plus‚ Repository ist aktiviert.

Repos auflisten

Gib nun den folgenden„dnf install„-Befehl ein, um die OpenLDAP-Server- und Client-Pakete zu installieren. Wenn du dazu aufgefordert wirst, gibst du zur Bestätigung y ein und drückst ENTER, um fortzufahren.

sudo dnf install openldap-servers openldap-clients

openldap Server installieren

Sobald OpenLDAP installiert ist, gibst du den folgenden systemctl-Befehl ein, um den OpenLDAP-Dienst„slapd“ zu starten und zu aktivieren. Damit sollte OpenLDAP mit der Standardkonfiguration laufen und aktiviert sein, d.h. es wird beim Systemstart automatisch gestartet.

sudo systemctl start slapd
sudo systemctl enable slapd

Überprüfe den Status des OpenLDAP-Dienstes, indem du den folgenden Befehl eingibst.

sudo systemctl status slapd

Die Ausgabe„active (running)“ bestätigt, dass der OpenLDAP-Dienst„slapd“ läuft. Und die Ausgabe „...enabled…“ bestätigt, dass OpenLDAP beim Systemstart automatisch gestartet wird.

verify openldap slapd

Wenn der OpenLDAP-Server installiert ist und läuft, richtest du die Firewalld ein, um den LDAP- und LDAPS-Dienst hinzuzufügen und sicherzustellen, dass beide Dienste von außerhalb des Netzwerks erreichbar sind.

Firewalld einrichten

In diesem Abschnitt richtest du die Firewall ein, um die LDAP- und LDAPS-Dienste zu öffnen und sicherzustellen, dass beide Dienste von außerhalb des Netzwerks zugänglich sind.

Gib den folgenden„firewall-cmd“ -Befehl ein, um die LDAP- und LDAPS-Dienste zur Firewalld hinzuzufügen. Lade dann die Firewalld neu, um die Änderungen zu übernehmen. Die Ausgabe„success“ bestätigt, dass die neue Regel zur Firewalld hinzugefügt wurde.

sudo firewall-cmd --add-service={ldap,ldaps} --permanent
sudo firewall-cmd --reload

Führe nun den folgenden „firewall-cmd“-Befehl aus, um die Liste der aktivierten Dienste in der Firewalld zu überprüfen.

sudo firewall-cmd --list-all

Wenn du„ldap“ und„ldaps“ im Abschnitt„Dienste“ siehst, bedeutet das, dass beide Dienste, die der Firewalld hinzugefügt wurden, von außerhalb des Netzwerks zugänglich sind.

firewalld einrichten

Konfiguration des grundlegenden OpenLDAP-Servers

In diesem Abschnitt wirst du die Installation des OpenLDAP-Servers konfigurieren. Du richtest das Passwort für den OpenLDAP-Server ein und importierst einige grundlegende Schemata in den OpenLDAP-Server. Diese Vorgänge können mit dem Dienstprogramm „ldapadd“ durchgeführt werden, das zum OpenLDAP-Serverpaket gehört.

Bevor du beginnst, gib den folgenden Befehl„slappasswd“ ein, um den Passwort-Hash für deinen OpenLDAP-Server zu generieren. Gib dein Passwort ein, wiederhole es und kopiere das generierte Hash-Passwort.

slappasswd

Erstelle nun eine neue LDIF-Datei „changerootpass.ldif“ mit dem folgenden nano-Editor-Befehl. LDIF oder LDAP Data Interchange Format ist ein Dateiformat, das eine Reihe von LDAP-Einträgen enthält und zur Aktualisierung des LDAP-Servers verwendet werden kann.

nano changerootpass.ldif

Füge den folgenden Inhalt in die Datei ein und achte darauf, dass du das Hash-Passwort durch dein generiertes Passwort ersetzt.

dn: olcDatabase={0}config,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}Uf13AbVHOcs/aDWJOvDxxfBSl3omExG2

Speichere und schließe die Datei, wenn du fertig bist.

Führe nun den folgenden„ldapadd„-Befehl aus, um das OpenLDAP-Root-Passwort über die Datei„changerootpass.ldif“ zu ändern.

sudo ldapadd -Y EXTERNAL -H ldapi:/// -f changerootpass.ldif

Wenn du erfolgreich warst, solltest du eine ähnliche Ausgabe wie diese erhalten:

root-Passwort einrichten openldap

Als Nächstes gibst du den folgenden„ldapadd„-Befehl ein, um grundlegende Schemata für den OpenLDAP-Server zu importieren.

sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif 
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif

Ausgabe:

Grundschemata importieren

Zum Schluss kannst du den folgenden systemctl-Befehl eingeben, um den OpenLDAP-Dienst neu zu starten und die Änderungen zu übernehmen.

sudo systemctl restart slapd

Damit hast du das Root-Passwort konfiguriert und grundlegende Schemas für den OpenLDAP-Server importiert. Im nächsten Schritt richtest du den Standard-DN (Distinguished Name) sowie die Basisgruppen- und Organisationseinträge auf dem OpenLDAP-Server ein.

Basisdomäne konfigurieren

In diesem Abschnitt richtest du den Basis-DN (Domain Name) per LDIF-Datei für deinen OpenLDAP-Server ein. In diesem Beispiel lautet der Basis-DN für OpenLDAP „hwdomain.lan„.

Erstelle eine neue Datei„setdomain.ldif“ mit dem folgenden Befehl des nano Editors.

nano setdomain.ldif

Füge den folgenden Inhalt in die Datei ein und achte darauf, dass du den Basis-DN„dc=hwdomain,dc=lan“ durch deine Domain ersetzt. Außerdem musst du das Hash-Passwort durch dein generiertes Root-Passwort ersetzen.

# setdomain.ldif
dn: olcDatabase={1}monitor,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth"
read by dn.base="cn=Manager,dc=hwdomain,dc=lan" read by * none

dn: olcDatabase={2}mdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=hwdomain,dc=lan

dn: olcDatabase={2}mdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=Manager,dc=hwdomain,dc=lan

dn: olcDatabase={2}mdb,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}Uf13AbVHOcs/aDWJOvDxxfBSl3omExG2

dn: olcDatabase={2}mdb,cn=config
changetype: modify
add: olcAccess
olcAccess: {0}to attrs=userPassword,shadowLastChange by
dn="cn=Manager,dc=hwdomain,dc=lan" write by anonymous auth by self write by * none
olcAccess: {1}to dn.base="" by * read
olcAccess: {2}to * by dn="cn=Manager,dc=hwdomain,dc=lan" write by * read

Speichere und schließe die Datei, wenn du fertig bist.

Gib nun den folgenden„ldapmodify„-Befehl ein, um den neuen dn für deinen OpenLDAP-Server anzuwenden. In diesem Fall hast du„ldapmodify“ statt„ldapadd“ verwendet, weil du den aktuellen OpenLDAP-Server ändern willst.

sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f setdomain.ldif

Wenn du erfolgreich warst, solltest du eine Ausgabe wie diese erhalten.

Grundschema importieren

Du kannst nun den folgenden „ldapsearch“-Befehl eingeben, um den Basis-DN deines OpenLDAP-Servers zu überprüfen. Der Basis-DN des OpenLDAP-Servers ist unter„namingContexts“ gespeichert.

sudo ldapsearch -H ldap:// -x -s base -b "" -LLL "namingContexts"

Wenn du erfolgreich bist, solltest du den Basis-DN deines OpenLDAP-Servers erhalten. Der Basis-DN für den OpenLDAP-Server in diesem Beispiel ist „dn=hwdomain,dn=lan“ oder„hwdomain.lan„.

Basisdomäne überprüfen

Nachdem du den Basis-dn konfiguriert hast, richtest du als Nächstes die Basisgruppe und die Organisation ein, in der du OpenLDAP-Benutzer speichern kannst. Die Vorgehensweise ist ähnlich wie bei der Einrichtung des Basis-DN.

Basisgruppe und Organisation konfigurieren

In diesem Beispiel wirst du zwei Basisgruppen für deinen OpenLDAP-Server einrichten. Du fügst über die LDIF-Datei zwei „ou“- oder Organisationseinheiten namens„People“ und„Group“ hinzu. Du wirst alle deine OpenLDAP-Benutzer innerhalb dieser ou, People und Group speichern.

Gib den folgenden Befehl im nano-Editor ein, um eine neue Datei„addou.ldif“ zu erstellen.

nano addou.ldif

Füge den folgenden Inhalt in die Datei ein und achte darauf, dass du den Basisdomänennamen durch deine Domäne ersetzt.

# addou.ldif
dn: dc=hwdomain,dc=lan
objectClass: top
objectClass: dcObject
objectclass: organization
o: My hwdomain Organisation
dc: hwdomain

dn: cn=Manager,dc=hwdomain,dc=lan
objectClass: organizationalRole
cn: Manager
description: OpenLDAP Manager

dn: ou=People,dc=hwdomain,dc=lan
objectClass: organizationalUnit
ou: People

dn: ou=Group,dc=hwdomain,dc=lan
objectClass: organizationalUnit
ou: Group

Speichere und schließe die Datei, wenn du fertig bist.

Als Nächstes gibst du den folgenden„ldapadd„-Befehl ein, um die ou„Personen“ und„Gruppe“ hinzuzufügen. Wenn du zur Eingabe des Passworts aufgefordert wirst, gibst du das Passwort des OpenLDAP-Servers ein.

sudo ldapadd -x -D cn=Manager,dc=hwdomain,dc=lan -W -f addou.ldif

Wenn der Vorgang erfolgreich war, solltest du eine ähnliche Ausgabe wie diese erhalten.

ou zu openldap hinzufügen

Überprüfe die Liste der„ou“ auf deinem OpenLDAP-Server, indem du den folgenden„ldapsearch„-Befehl in dein Terminal eingibst.

sudo ldapsearch -x -b "dc=hwdomain,dc=lan" ou

Du solltest sehen, dass die beiden ou namens„People“ und„Group“ hinzugefügt wurden und auf dem OpenLDAP-Server verfügbar sind.

prüfen Sie

Jetzt hast du den Basis-DN oder Domänennamen und die beiden OU oder Organisationseinheiten für den OpenLDAP-Server hinzugefügt und konfiguriert. Im nächsten Schritt lernst du, wie du einen neuen Benutzer über die LDIF-Datei hinzufügst.

Hinzufügen eines neuen Benutzers zum OpenLDAP-Server

In diesem Abschnitt wirst du einen neuen Benutzer in OpenLDAP über die LDIF-Datei hinzufügen und einrichten. Die Schritte sind einfach: Du musst nur das Hash-Passwort mit„slappasswd“ generieren, dann eine neue LDIF-Datei zum Hinzufügen eines Benutzers erstellen und anschließend den Befehl „ldapadd“ ausführen, um den neuen Benutzer zum OpenLDAP-Server hinzuzufügen.

Gib zunächst den folgenden„slappasswd„-Befehl ein, um das Hash-Passwort für den neuen Benutzer zu erzeugen. Gib dein Passwort ein und wiederhole es, dann kopiere das generierte Passwort.

slappasswd

Gib nun den folgenden nano-Editor-Befehl ein, um eine neue Datei„adduser.ldif“ zu erstellen.

nano adduser.ldif

Füge den folgenden Inhalt in die Datei ein und achte darauf, dass du den Benutzernamen, das Passwort und den standardmäßigen dn änderst. In diesem Beispiel erstellst du einen neuen Benutzer namens„rocky„, der Teil der Gruppe„People“ ist.

# adduser.ldif
dn: uid=rocky,ou=People,dc=hwdomain,dc=lan
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
cn: rocky
sn: temp
userPassword: {SSHA}cDG5NuQd+rYn6rWh1r5UnysUOwJlt1uk
loginShell: /bin/bash
uidNumber: 2000
gidNumber: 2000
homeDirectory: /home/rocky
shadowLastChange: 0
shadowMax: 0
shadowWarning: 0

dn: cn=rocky,ou=Group,dc=hwdomain,dc=lan
objectClass: posixGroup
cn: rocky
gidNumber: 2000
memberUid: rocky

Speichere und schließe die Datei, wenn du fertig bist.

Gib nun den folgenden„ldapadd„-Befehl ein, um deinen neuen Benutzer über die Datei„adduser.ldif“ hinzuzufügen.

sudo ldapadd -x -D cn=Manager,dc=hwdomain,dc=lan -W -f adduser.ldif

Gib den OpenLDAP-Server ein, wenn du dazu aufgefordert wirst, und wenn du erfolgreich bist, solltest du eine Ausgabe wie diese erhalten.

Benutzer hinzufügen

Gib den folgenden„ldapsearch„-Befehl ein, um den neuen Benutzer„rocky“ zu überprüfen und sicherzustellen, dass er auf deinem OpenLDAP-Server hinzugefügt und verfügbar ist. Dieser Befehl gibt alle verfügbaren Benutzer im Verzeichnis„People“ aus.

sudo ldapsearch -x -b "ou=People,dc=hwdomain,dc=lan"

Eine Ausgabe wie diese bestätigt, dass der OpenLDAP-Benutzer„rocky“ erstellt und dem OpenLDAP-Server hinzugefügt wurde.

Benutzer verifizieren

Sichern von OpenLDAP mit SSL/TLS

In diesem Abschnitt wirst du sicheres LDAPS auf dem OpenLDAP-Server einrichten und aktivieren. Du erstellst SSL/TLS-Zertifikate, die vom OpenLDAP-Server verwendet werden, richtest dann OpenLDAP für die Verwendung von SSL/TLS-Zertifikaten ein und aktivierst das sichere LDAPS-Protokoll.

Gib den folgenden„openssl„-Befehl ein, um die selbstsignierten SSL/TLS-Zertifikate zu erzeugen. Gib detaillierte Informationen über deine Zertifikate ein. Wenn du fertig bist, werden deine Zertifikate im Verzeichnis„/etc/pki/tls/“ gespeichert.

sudo openssl req -x509 -nodes -days 365 \
  -newkey rsa:2048 \
  -keyout /etc/pki/tls/ldapserver.key \
  -out /etc/pki/tls/ldapserver.crt

tls erzeugen

Sobald die SSL/TLS-Zertifikate erstellt sind, änderst du den Besitz der SSL/TLS-Zertifikate auf den Benutzer„ldap“ und die Gruppe„ldap„. Dadurch kann OpenLDAP auf die Zertifikatsdateien zugreifen.

sudo chown ldap:ldap /etc/pki/tls/{ldapserver.crt,ldapserver.key}

Als Nächstes erstellst du mit dem folgenden nano-Editor-Befehl eine neue LDIF-Datei „tls.ldif“.

sudo nano tls.ldif

Füge die folgenden Konfigurationen in die Datei ein. Achte darauf, die Details der Zertifikatsdatei und den vollständigen Pfad zu ändern, wenn du eigene Zertifikate verwendest.

# tls.ldif

dn: cn=config
changetype: modify
add: olcTLSCACertificateFile
olcTLSCACertificateFile: /etc/pki/tls/ldapserver.crt

add: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/pki/tls/ldapserver.key

add: olcTLSCertificateFile
olcTLSCertificateFile: /etc/pki/tls/ldapserver.crt

Speichere und schließe die Datei, wenn du fertig bist.

Als Nächstes gibst du den folgenden„ldapadd„-Befehl ein, um SSL/TLS auf dem OpenLDAP-Server anzuwenden.

sudo ldapadd -Y EXTERNAL -H ldapi:/// -f tls.ldif

Wenn die Anwendung erfolgreich war, solltest du eine Ausgabe wie diese erhalten.

tls aktivieren

Öffne nun die OpenLDAP-Serverkonfiguration „/etc/openldap/ldap.conf“ mit dem folgenden nano-Editor-Befehl.

sudo nano /etc/openldap/ldap.conf

Entferne das Kommentarzeichen im Parameter„TLS_CACERT“ und ändere den Wert mit dem Pfad der von dir erstellten CA-Zertifikatsdatei. Füge dann einen neuen Parameter„TLS_REQCERT“ hinzu und setze ihn auf„never„, weil du selbstsignierte Zertifikate verwendest.

TLS_CACERT     /etc/pki/tls/ldapserver.crt

# because you’re using Self-Signed Certificate – you must add this
TLS_REQCERT never

Speichere und schließe die Datei, wenn du fertig bist.

Gib nun den folgenden systemctl-Befehl ein, um den OpenLDAP-Dienst„slapd“ neu zu starten und die Änderungen zu übernehmen.

sudo systemctl restart slapd

Damit läuft der OpenLDAP-Server jetzt sowohl mit dem LDAP- als auch mit dem LDAPS-Protokoll. Gib den folgenden Befehl ein, um zu überprüfen, ob LDAPS auf deinem OpenLDAP-Server aktiviert ist.

sudo ldapsearch -x -b dc=hwdomain,dc=lan -ZZ

Wenn LDAPS aktiviert ist, solltest du eine Ausgabe mit allen Einstellungen deines OpenLDAP-Servers erhalten. Der Parameter„-ZZ“ zwingt dich, eine sichere LDAPS-Verbindung zu verwenden.

tls verifizieren

Jetzt hast du sicheres LDAPS auf deinem OpenLDAP-Server konfiguriert und aktiviert. Im nächsten Schritt erfährst du, wie du einen Linux-Host-Rechner zum OpenLDAP-Server hinzufügst.

Hinzufügen des Client-Rechners zum OpenLDAP-Server

In diesem Abschnitt fügst du den Client-Rechner über den OpenLDAP-Client und den SSSD-Dienst zum OpenLDAP-Server hinzu. In diesem Beispiel fügst du einen Rocky-Linux-Client-Rechner mit dem Hostnamen „client“ und der IP-Adresse„192.168.5.80“ hinzu.

Im Folgenden findest du einige detaillierte Schritte zum Hinzufügen eines Hosts zum OpenLDAP-Server:

  • Einrichten von fqdn und der Datei /etc/hosts.
  • Installieren der Pakete OpenLDAP Client und SSSD.
  • Aktivieren von SSSD als Authentifizierungsquelle
  • OpenLDAP-Client und SSSD-Dienst konfigurieren.

Beginnen wir nun damit, den Rocky-Linux-Client-Rechner zum OpenLDAP-Server hinzuzufügen.

FQDN und /etc/hosts einrichten

Gib den folgenden„hostnamectl„-Befehl ein, um den FQDN des Client-Rechners einzurichten.

sudo hostnamectl set-hostname client.hwdomain.lan

Öffne nun die Datei „/etc/hosts“ mit dem folgenden nano-Editor.

sudo nano /etc/hosts

Füge die folgenden Zeilen in die Datei ein und achte darauf, dass du die Angaben zu Hostname und IP-Adresse mit den Angaben zum OpenLDAP-Server abgleichst.

# ip - fqdn - hostname
192.168.5.25    ldap.hwdomain.lan   ldap

Speichere und schließe die Datei, wenn du fertig bist.

Installation der Pakete OpenLDAP Client und SSSD

Als Nächstes gibst du den folgenden dnf-Befehl ein, um das„plus„-Repository auf dem Rocky-Linux-Client-Rechner zu aktivieren. Überprüfe dann die Liste des aktivierten Repositorys mit dem folgenden Befehl.

sudo dnf config-manager --set-enabled plus
sudo dnf repolist

Eine Ausgabe wie diese bestätigt, dass das„plus„-Repository hinzugefügt und aktiviert wurde.

Client Repo einrichten

Installiere nun die Pakete OpenLDAP-Client und SSSD (System Security Services Daemon) mit dem Befehl „dnf install“ (siehe unten).

sudo dnf install openldap-clients sssd sssd-ldap oddjob-mkhomedir

Wenn du dazu aufgefordert wirst, gib zur Bestätigung y ein und drücke ENTER, um fortzufahren.

openldap-Clients und sssd installieren

Nachdem du den OpenLDAP-Client und die SSSD-Pakete installiert hast, kannst du den OpenLDAP-Server einrichten und eine Verbindung zu ihm herstellen.

Aktiviere die SSSD-Authentifizierungsquelle

Gib den folgenden„authselect„-Befehl ein, um die Authentifizierungsquelle„sssd“ auf dem Rocky Linux Client zu aktivieren. Der Parameter„with-mkhomedir“ ermöglicht es SSSD-authentifizierten Benutzern, automatisch ein Home-Verzeichnis zu erstellen.

sudo authselect select sssd with-mkhomedir --force

Du solltest eine ähnliche Ausgabe wie diese erhalten, die dich auch anweist, den Dienst„oddjobd“ zu starten und zu aktivieren.

Standard-Authentifizierung einrichten

Als Nächstes gibst du den folgenden „systemctl“-Befehl ein, um den „oddjobd“-Dienst zu starten und zu aktivieren. Überprüfe dann den oddjobd-Dienst, um sicherzustellen, dass der Dienst läuft.

sudo systemctl enable --now oddjobd.service
sudo systemctl status oddjobd.service

Die folgende Ausgabe bestätigt, dass der oddjobd-Dienst aktiviert ist und beim Systemstart automatisch gestartet wird. Und der Status des oddjobd-Dienstes lautet „running“.

oddjobd-Dienst überprüfen

Nachdem die Authentifizierungsquelle sssd aktiviert ist und der oddjobd-Dienst läuft, fügst du nun den OpenLDAP-Server zu deiner Konfiguration hinzu.

OpenLDAP-Client und SSSD-Dienst konfigurieren

Öffne die Konfigurationsdatei„/etc/openldap/ldap.conf“ mit dem folgenden nano-Editor-Befehl.

sudo nano /etc/openldap/ldap.conf

Entferne die Kommentare zu den Parametern„URI“ und„BASE“ und ändere den Wert mit dem Domänennamen deines OpenLDAP-Servers und der Basisdomäne.

URI ldap://ldap.hwdomain.lan/
BASE dc=hwdomain,dc=lan

Speichere und beende die Datei, wenn du fertig bist.

Als nächstes erstellst du eine neue SSSD-Konfigurationsdatei„/etc/sssd/sssd.conf“ mit dem folgenden nano-Editor-Befehl.

sudo nano /etc/sssd/sssd.conf

Füge die folgenden Zeilen in die Datei ein und achte darauf, dass du die Angaben zum OpenLDAP-Server in den Parametern „ldap_uri“ und„ldap_search_base“ änderst.

[domain/default]
id_provider = ldap
autofs_provider = ldap
auth_provider = ldap
chpass_provider = ldap
ldap_uri = ldap://ldap.hwdomain.lan/
ldap_search_base = dc=hwdomain,dc=lan
ldap_id_use_start_tls = True
ldap_tls_cacertdir = /etc/openldap/certs
cache_credentials = True
ldap_tls_reqcert = allow

[sssd]
services = nss, pam, autofs
domains = default

[nss]
homedir_substring = /home

Speichere und schließe die Datei, wenn du fertig bist.

Ändere nun die Berechtigung der SSSD-Konfigurationsdatei „/etc/sssd/sssd.conf“ mit dem unten stehenden chmod-Befehl auf 600.

sudo chmod 0600 /etc/sssd/sssd.conf

Gib abschließend den folgenden systemctl-Befehl ein, um den SSSD-Dienst zu starten und zu aktivieren.

sudo systemctl start sssd
sudo systemctl enable sssd

Gib nun den folgenden Befehl ein, um den SSSD-Dienst zu überprüfen und sicherzustellen, dass der Dienst läuft.

sudo systemctl status sssd

Die folgende Ausgabe bestätigt, dass der SSSD-Dienst läuft und aktiviert ist. Das bedeutet, dass der SSSD-Dienst beim Systemstart automatisch gestartet wird.

sssd überprüfen

Damit hast du den Rocky Linux Client-Rechner über den OpenLDAP-Client und SSSD zum OpenLDAP-Server hinzugefügt. Im nächsten Schritt überprüfst du sowohl den OpenLDAP-Server als auch den OpenLDAP-Client, indem du dich über den von dir erstellten OpenLDAP-Benutzer „rocky“ am Client-Rechner anmeldest.

Verbindung zum Client-Rechner über OpenLDAP-Benutzer

In diesem Abschnitt überprüfst du die Installation des OpenLDAP-Servers und des OpenLDAP-Clients, indem du dich über den OpenLDAP-Benutzer auf dem Client-Rechner anmeldest. Du meldest dich also mit dem Benutzer„rocky„, den du auf dem OpenLDAP-Server angelegt hast, auf dem Client-Rechner mit der IP-Adresse„192.168.5.80“ an.

Gib auf dem OpenLDAP-Server den folgenden „ssh“-Befehl ein, um dich auf dem Client-Rechner mit der Adresse„192.168.5.80“ anzumelden. Bestätige den SSH-Fingerabdruck des Client-Rechners mit yes und gib dann das Passwort für den OpenLDAP-Benutzer„rocky“ ein.

ssh rocky@192.168.5.80

Wenn du erfolgreich warst, solltest du in der Shell des Client-Rechners angemeldet sein. Gib nun den folgenden Befehl ein, um den aktuellen Benutzer zu überprüfen.

id
whoami

Die Ausgabe„rocky“ bestätigt, dass du dich mit dem OpenLDAP-Benutzer„rocky“ auf dem Client-Rechner angemeldet hast. Damit ist deine Installation des OpenLDAP-Servers auf Rocky Linux 9 abgeschlossen.

test login

Fazit

In dieser Anleitung hast du den OpenLDAP-Server auf dem Rocky Linux 9 Server installiert. Außerdem hast du die OpenLDAP-Installation mit den selbstsignierten SSL/TLS-Zertifikaten abgesichert. Außerdem hast du die grundlegenden Funktionen einiger OpenLDAP-Dienstprogramme kennengelernt, z. B. „ldapadd“ zum Hinzufügen neuer Einträge wie Benutzer und neuer Konfigurationen, „ldapsearch“ zum Durchsuchen von Einträgen, die auf dem OpenLDAP-Server verfügbar sind, und „ldapmodify“ zum Bearbeiten der aktuellen Konfiguration des OpenLDAP-Servers.

Außerdem hast du den Rocky-Linux-Client-Computer über den OpenLDAP-Client und SSSD (System Security Services Daemon) zum OpenLDAP-Server hinzugefügt und konfiguriert. Dann hast du die Installation des OpenLDAP-Servers und des Clients überprüft, indem du dich mit dem von dir erstellten OpenLDAP-Benutzer auf dem Client-Rechner angemeldet hast.

Nun kannst du weitere Client-Rechner zum OpenLDAP-Server hinzufügen, um eine zentrale Benutzerverwaltung über OpenLDAP zu ermöglichen. Du kannst den OpenLDAP-Server auch in deine Anwendungen integrieren. Weitere Einzelheiten findest du in der offiziellen Dokumentation von OpenLDAP.

Das könnte dich auch interessieren …