Nsswitch — sudoers sss vs ldap, что мне не хватает
Я пытаюсь настроить nsswitch для использованияsudoers: files sss
который используется по умолчанию для системы rhel9, однако у меня это не работает, но следующееsudoers: files ldap
действительно работает.
Чего мне не хватает для работы SSSD?
Я могу успешно войти в экземпляры, используя свою учетную запись, однако мне даже не разрешено использовать sudosudoCommand: ALL
$ ldapsearch -H ldap://ipa.example.com -b ou=sudoers,dc=example,dc=com -ZZ '(&(objectClass=sudoRole))' -x
# allow_all, sudoers, EXAMPLE.COM
dn: cn=allow_all,ou=sudoers,dc=EXAMPLE,dc=COM
objectClass: sudoRole
objectClass: top
sudoUser: %host-admin
sudoHost: ALL
sudoCommand: ALL
sudoRunAsUser: ALL
sudoRunAsGroup: ALL
cn: allow_all
$ id admin
uid=6666(admin),1234(host-admins)
sssd.conf
[domain/default]
id_provider = ldap
auth_provider = ldap
sudo_provider = ldap
chpass_provider = ldap
ldap_uri = ldaps://ipa.example.com
ldap_search_base = dc=example,dc=com
ldap_id_use_start_tls = True
ldap_schema = rfc2307bis
ldap_sudo_include_regexp = true
cache_credentials = True
ldap_tls_cacertdir = /etc/openldap/certs
ldap_tls_reqcert = allow
[sssd]
services = nss, pam, sudo
domains = default
[nss]
homedir_substring = /home
[pam]
[sudo]
debug_level = 7
nsswitch.conf
sudoers: files sss <--- Does not work
sudoers: files ldap <--- Does work
1 ответ
Я собираюсь догадаться об этом
SSSD намеренно игнорирует записи «sudoers» LDAP, которые относятся к локальным группам хоста. Если я правильно помню, он принимает только записи, относящиеся к группам внутри одного «домена» SSSD.
Если вы хотите, чтобы у разных хостов были разные администраторы, вы можете вместо этого хранить имена авторизованных пользователей непосредственно в правиле sudoersLDAP (раздел
В качестве альтернативы вы можете использовать сетевые группы в стиле NIS в LDAP (которые используют