Arch manual pages

SSSD-SUDO(5) Dateiformate und Konventionen SSSD-SUDO(5)

sssd-sudo - Sudo mit dem SSSD-Backend konfigurieren

Diese Handbuchseite beschreibt, wie sudo(8) konfiguriert wird, damit es zusammen mit sssd(8) funktioniert und wie SSSD Sudo-Regeln zwischenspeichert.

Um SSSD als eine Quelle von Sudo-Regeln zu aktivieren, fügen 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) nachschlägt (diese sollten Regeln umfassen, die für lokale Benutzer gelten) und dann die in SSSD, sollte die Datei »nsswitch.conf« die folgende Zeile enthalten:

sudoers: files sss

Weitere Informationen über 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, können Sie unter sudoers.ldap(5) finden.

Hinweis: Um Netzgruppen oder IPA-Hostgruppen in sudo-Regeln verwenden zu können, muss nisdomainname(1) korrekt auf den entsprechenden NIS-Domainnamen gesetzt werden. Dieser entspricht dem IPA-Domainnamen, wenn Hostgruppen verwendet werden.

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-Suchvorgänge zu beschleunigen, können Sie auch die Suchbasis für 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 herunterlädt.

[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.

Die größte Herausforderung bei der Entwicklung von Sudo-Unterstützung in SSSD war es, sicherzustellen, dass beim Ausführen von Sudo mit SSSD die Datenquelle dieselbe Benutzererfahrung bereitstellt und so schnell wie Sudo ist, aber weiterhin so viele aktuelle Regelsätze wie möglich bereitstellt. Um diesen Anforderungen zu genügen, verwendet SSSD drei Arten von Aktualisierungen. Sie werden als vollständiges Aktualisieren, kluges Aktualisieren und Regelaktualisierung bezeichnet.

Das kluge Aktualisieren lädt periodisch Regeln herunter, die neu sind oder seit der letzten Aktualisierung geändert wurden. Das Hauptziel hierbei ist es, die Datenbank anwachsen zu lassen, indem nur kleine Erweiterungen abgerufen werden, die keinen großen Netzwerkverkehr erzeugen.

Das vollständige Aktualisieren löscht 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 gelöschte Regel entfernt wird. Ein vollständiges Aktualisieren kann jedoch eine hohe Last erzeugen und sollte daher nur gelegentlich abhängig von der Größe und Stabilität der Sudo-Regeln ausgeführt werden.

Die Regelaktualisierung stellt sicher, dass dem Benutzer nicht mehr Rechte als definiert gewährt werden. Es wird jedesmal ausgelöst, wenn der Benutzer Sudo ausführt. Regelaktualisierung wird alle Regeln suchen, die für diesen Benutzer gelten, ihren Ablaufzeitpunkt prüfen und sie erneut herunterladen, falls sie erloschen sind. Im Fall, dass irgendwelche der Regeln auf dem Server fehlen, wird SSSD außer der Reihe ein vollständiges Aktualisieren durchführen, da möglicherweise weitere Regeln (die für andere Benutzer gelten) gelöscht wurden.

SSSD wird, falls aktiviert, nur Regeln speichern, die auf diese Maschine angewandt werden können. Das bedeutet, Regeln, die einen der folgenden Werte im Attribut sudoHost enthalten:

•Schlüsselwort ALL

•Platzhalter

•Netzgruppe (in der Form »+Netzgruppe«)

•Rechnername oder voll qualifizierter Domain-Namen dieser Maschine

•eine der IP-Adressen dieser Maschine

•eine der IP-Adressen des Netzwerks (in der Form »Adresse/Maske«)

Es gibt viele Konfigurationsoptionen, die benutzt werden können, um das Verhalten anzupassen. Bitte lesen Sie »ldap_sudo_*« in sssd-ldap(5) und "sudo_*" in sssd.conf(5).

sssd(8), sssd.conf(5), sssd-ldap(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)

The SSSD upstream - https://pagure.io/SSSD/sssd/
09/16/2019 SSSD