Правила OpenLDAP sudo-ldap не работают

У меня есть сервер OpenLDAP на Ubuntu 22.04 с пользователями, связанными с группой posix «group1».
я настроилsudo-ldapтак что права sudo управляются сервером иsssdдля кэширования и запроса прав sudo.
Проблема в том, что правила не работают, когда я пытаюсь выполнить команду sudo с пользователем1 или пользователем3, я всегда получаю «пользователь не авторизован для запуска команды sudo на ..."

Я настроил sudoRoles в ldap с помощью этого файла.sudo.ldif:

      dn: cn=admins,ou=sudoers,dc=example,dc=fr
objectClass: sudoRole
objectClass: top
cn: admins
sudoCommand: ALL
sudoHost: ALL
sudoRunAsUser: ALL
sudoUser: user1,user2


dn: cn=defaults,ou=SUDOers,dc=example,dc=fr
objectClass: top
objectClass: sudoRole
cn: defaults
description: Default sudoOption's go here
sudoOption: env_keep+=SSH_AUTH_SOCK
sudoOption: insults
sudoOption: pwfeedback
sudoCommand: /sbin/shutdown
sudoCommand: /bin/mount
sudoCommand: /bin/umount
sudoCommand: /usr/bin/make
sudoCommand: /usr/bin/dpkg
sudoCommand: /usr/bin/aptitude
sudoCommand: /usr/bin/apt-get
sudoCommand: /usr/bin/apt-key
sudoCommand: /usr/bin/apt
sudoCommand: /usr/bin/add-apt-repository
sudoCommand: /usr/bin/apt-add-repository
sudoCommand: /sbin/reboot
sudoCommand: /usr/bin/npm
sudoUser: %group1

Таким образом, user1 и user2 имеют полные права администратора, а для остальных правило по умолчанию применяется только к пользователям из группы unix.

Типичный пользователь имеет эти атрибуты (извлеченные изslapcatкоманда:

      dn: uid=user3,dc=example,dc=fr
cn: user3
uid: user3
uidNumber: 2266
loginShell: /bin/bash
homeDirectory: /home/user3
gidNumber: 2000
userPassword:: e2NyeXB0fUVKeHNLazM3SkxWRkk=
shadowLastChange: 19265
objectClass: posixAccount
objectClass: shadowAccount
objectClass: inetOrgPerson
objectClass: person
sn: user3
structuralObjectClass: inetOrgPerson
entryUUID: 68a16f0c-d51d-103c-98b5-a194ee75d300
creatorsName: cn=admin,dc=dsimb,dc=inserm,dc=fr
createTimestamp: 20220930150756Z
ou: Users
ou: SUDOers
o: group1
entryCSN: 20230110145746.062358Z#000000#000#000000
modifiersName: cn=admin,dc=example,dc=fr
modifyTimestamp: 20230110145746Z

У меня есть группа posixgroup1с gid 2000 на всех машинах, связанных со всеми пользователями, а также я создал группу ldap group1:

      dn: cn=group1,ou=Groups,dc=example,dc=fr
structuralObjectClass: posixGroup
entryUUID: c8816a74-c7c3-103c-9b5d-cf252e8ef64c
creatorsName: cn=admin,dc=example,dc=fr
createTimestamp: 20220913152337Z
objectClass: posixGroup
userPassword:
cn: group1
gidNumber: 2000
memberUid: user1
memberUid: user2
memberUid: user3

Мойsssd.confфайл:

      [sssd]
config_file_version = 2
domains = example.fr
services = nss,pam,sudo

[nss]

[pam]

[sudo]

[domain/example.fr]
id_provider = ldap
auth_provider = ldap
chpass_provider = ldap
ldap_uri = ldap://example.fr
cache_credentials = True
ldap_search_base = dc=example,dc=fr
override_homedir = /home/%u
enumerate = true
sudo_provider = ldap
ldap_sudo_search_base = ou=SUDOers,dc=example,dc=fr
ldap_sudo_full_refresh_interval=86400
ldap_sudo_smart_refresh_interval=3600

The nsswitch.conf:

      # /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd:         files sss ldap
group:          files sss ldap
shadow:         files sss
gshadow:        files

hosts:          files mdns4_minimal [NOTFOUND=return] dns
networks:       files

protocols:      db files
services:       db files sss
ethers:         db files
rpc:            db files

netgroup:       nis sss
automount:      sss
sudoers:        sss

вsudo-ldap.conf:

      #
# LDAP Defaults
#

# See ldap.conf(5) for details
# This file should be world readable but not world writable.

BASE    dc=example,dc=fr
URI     ldap://example.fr

sudoers_base ou=SUDOers,dc=example,dc=fr

#SIZELIMIT      12
#TIMELIMIT      15
#DEREF          never

# TLS certificates (needed for GnuTLS)
TLS_CACERT      /etc/ssl/certs/ca-certificates.crt

Я что-то пропустил ?

0 ответов

Другие вопросы по тегам