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.
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.
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
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.
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.
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:
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:
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.
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„.
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.
Ü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.
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.
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.
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
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.
Ö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.
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.
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.
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.
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“.
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.
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.
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.