SSSD-SUDO(5) Dateiformate und Konventionen SSSD-SUDO(5) NAME sssd-sudo - Sudo mit dem SSSD-Backend konfigurieren BESCHREIBUNG Diese Handbuchseite beschreibt, wie sudo(8) konfiguriert wird, damit es zusammen mit sssd(8) funktioniert und wie SSSD Sudo-Regeln zwischenspeichert. SUDO SO KONFIGURIEREN, DASS ES MIT SSSD ZUSAMMENARBEITET Um SSSD als eine Quelle von Sudo-Regeln zu aktivieren, fugen Sie dem Eintrag sudoers in nsswitch.conf(5) sss hinzu. Um zum Beispiel Sudo so zu konfigurieren, dass es zuerst die Regeln in der Standarddatei sudoers(5) nachschlagt (diese sollten Regeln umfassen, die fur lokale Benutzer gelten) und dann die in SSSD, sollte die Datei >>nsswitch.conf<< die folgende Zeile enthalten: sudoers: files sss Weitere Informationen uber die Konfiguration der Suchreihenfolge der >>sudoers<< aus der Datei >>nsswitch.conf<< sowie das LDAP-Schema, das zum Speichern von Sudo-Regeln im Verzeichnis benutzt wird, konnen Sie unter sudoers.ldap(5) finden. Hinweis: Um Netzgruppen oder IPA-Hostgruppen in sudo-Regeln verwenden zu konnen, muss nisdomainname(1) korrekt auf den entsprechenden NIS-Domainnamen gesetzt werden. Dieser entspricht dem IPA-Domainnamen, wenn Hostgruppen verwendet werden. SSSD ZUM ABRUFEN VON SUDO-REGELN KONFIGURIEREN Alle auf der SSSD-Seite erforderliche Konfiguration ist die Erweiterung der Liste der Dienste mit "sudo" im Abschnitt [sssd] der Handbuchseite zu sssd.conf(5). Um LDAP-Suchvorgange zu beschleunigen, konnen Sie auch die Suchbasis fur sudo-Regeln mit der Option ldap_sudo_search_base festlegen. Das folgende Beispiel zeigt, wie SSSD konfiguriert wird, damit es die Sudo-Regeln von einem LDAP-Server herunterladt. [sssd] config_file_version = 2 services = nss, pam, sudo domains = EXAMPLE [domain/EXAMPLE] id_provider = ldap sudo_provider = ldap ldap_uri = ldap://example.com ldap_sudo_search_base = ou=sudoers,dc=example,dc=com It's important to note that on platforms where systemd is supported there's no need to add the "sudo" provider to the list of services, as it became optional. However, sssd-sudo.socket must be enabled instead. When SSSD is configured to use IPA as the ID provider, the sudo provider is automatically enabled. The sudo search base is configured to use the IPA native LDAP tree (cn=sudo,$SUFFIX). If any other search base is defined in sssd.conf, this value will be used instead. The compat tree (ou=sudoers,$SUFFIX) is no longer required for IPA sudo functionality. DER ZWISCHENSPEICHERMECHANISMUS FuR SUDO-REGELN Die grosste Herausforderung bei der Entwicklung von Sudo-Unterstutzung in SSSD war es, sicherzustellen, dass beim Ausfuhren von Sudo mit SSSD die Datenquelle dieselbe Benutzererfahrung bereitstellt und so schnell wie Sudo ist, aber weiterhin so viele aktuelle Regelsatze wie moglich bereitstellt. Um diesen Anforderungen zu genugen, verwendet SSSD drei Arten von Aktualisierungen. Sie werden als vollstandiges Aktualisieren, kluges Aktualisieren und Regelaktualisierung bezeichnet. Das kluge Aktualisieren ladt periodisch Regeln herunter, die neu sind oder seit der letzten Aktualisierung geandert wurden. Das Hauptziel hierbei ist es, die Datenbank anwachsen zu lassen, indem nur kleine Erweiterungen abgerufen werden, die keinen grossen Netzwerkverkehr erzeugen. Das vollstandige Aktualisieren loscht einfach alle im Zwischenspeicher abgelegten Regeln und ersetzt sie durch die auf dem Server gespeicherten Regeln. Dies wird benutzt, um den Zwischenspeicher dadurch konsistent zu halten, dass jede von Server geloschte Regel entfernt wird. Ein vollstandiges Aktualisieren kann jedoch eine hohe Last erzeugen und sollte daher nur gelegentlich abhangig von der Grosse und Stabilitat der Sudo-Regeln ausgefuhrt werden. Die Regelaktualisierung stellt sicher, dass dem Benutzer nicht mehr Rechte als definiert gewahrt werden. Es wird jedesmal ausgelost, wenn der Benutzer Sudo ausfuhrt. Regelaktualisierung wird alle Regeln suchen, die fur diesen Benutzer gelten, ihren Ablaufzeitpunkt prufen und sie erneut herunterladen, falls sie erloschen sind. Im Fall, dass irgendwelche der Regeln auf dem Server fehlen, wird SSSD ausser der Reihe ein vollstandiges Aktualisieren durchfuhren, da moglicherweise weitere Regeln (die fur andere Benutzer gelten) geloscht wurden. SSSD wird, falls aktiviert, nur Regeln speichern, die auf diese Maschine angewandt werden konnen. Das bedeutet, Regeln, die einen der folgenden Werte im Attribut sudoHost enthalten: o Schlusselwort ALL o Platzhalter o Netzgruppe (in der Form >>+Netzgruppe<<) o Rechnername oder voll qualifizierter Domain-Namen dieser Maschine o eine der IP-Adressen dieser Maschine o eine der IP-Adressen des Netzwerks (in der Form >>Adresse/Maske<<) Es gibt viele Konfigurationsoptionen, die benutzt werden konnen, um das Verhalten anzupassen. Bitte lesen Sie >>ldap_sudo_*<< in sssd-ldap(5) und "sudo_*" in sssd.conf(5). TUNING THE PERFORMANCE SSSD uses different kinds of mechanisms with more or less complex LDAP filters to keep the cached sudo rules up to date. The default configuration is set to values that should satisfy most of our users, but the following paragraphs contain few tips on how to fine- tune the configuration to your requirements. 1. Index LDAP attributes. Make sure that following LDAP attributes are indexed: objectClass, cn, entryUSN or modifyTimestamp. 2. Set ldap_sudo_search_base. Set the search base to the container that holds the sudo rules to limit the scope of the lookup. 3. Set full and smart refresh interval. If your sudo rules do not change often and you do not require quick update of cached rules on your clients, you may consider increasing the ldap_sudo_full_refresh_interval and ldap_sudo_smart_refresh_interval. You may also consider disabling the smart refresh by setting ldap_sudo_smart_refresh_interval = 0. 4. If you have large number of clients, you may consider increasing the value of ldap_sudo_random_offset to distribute the load on the server better. SIEHE AUCH sssd(8), sssd.conf(5), sssd-ldap(5), sssd-ldap-attributes(5), sssd- krb5(5), sssd-simple(5), sssd-ipa(5), sssd-ad(5), sssd-files(5), sssd- sudo(5), sssd-session-recording(5), sss_cache(8), sss_debuglevel(8), sss_obfuscate(8), sss_seed(8), sssd_krb5_locator_plugin(8), sss_ssh_authorizedkeys(8), sss_ssh_knownhostsproxy(8), sssd-ifp(5), pam_sss(8). sss_rpcidmapd(5) AUTHORS The SSSD upstream - https://github.com/SSSD/sssd/ SSSD 04/09/2024 SSSD-SUDO(5)