Я использую openSUSE 11.4, в котором конфигурация Active Directory встроена в Yast (который выполняет все функции pam_winbind, Kerberos, nss, Samba-client за вас), и я могу успешно пройти аутентификацию в моем домене AD.
Я создал группу AD под названием LinuxAdmins, и я хотел бы, чтобы люди в этой группе могли либо выполнять su на определенных серверах Linux без пароля root, либо sudo на этих машинах, используя свои собственные пароли.
Как openSUSE настраивает AD, он устанавливает имя пользователя с префиксом домена. Итак, мое имя пользователя будет MYDOMAN \ djsumdog. Если я попытаюсь добавить одну из следующих строк в файл sudoers, я все равно не смогу sudo с моим пользователем. Я все время получаю «MYDOMAIN \ djsumdog отсутствует в файле sudoers. Об этом инциденте будет сообщено». Я пробовал использовать как одинарную, так и двойную косую черту для имен пользователей и групп.
%MYDOMAIN\LinuxAdmins ALL=(ALL) ALL
MYDOMAIN\djsumdog ALL=(ALL) ALL
Я знаю, что на моем компьютере Gentoo следующая строка в /etc/pam.d/su позволяет пользователям в группе wheel выполнять su без пароля:
auth sufficient pam_wheel.so use_uid trust
Но, похоже, это не работает в openSUSE (даже с локальными пользователями), тем более с пользователями AD. Я также пробовал использовать модуль pam_winbind.so:
#%PAM-1.0
auth sufficient pam_rootok.so
auth include common-auth
auth sufficient pam_winbind.so require_membership_of=MYDOMAIN\\LinuxAdmins
account sufficient pam_rootok.so
account include common-account
password include common-password
session include common-session
session optional pam_xauth.so
Но я не думаю, что это сработает, поскольку параметр require_membership_of, похоже, предназначен для первичной аутентификации на всей машине.
Я знаю, что sudo с паролем пользователя более безопасен, но я был бы рад, если бы смог заставить либо su, либо sudo работать, проверяя пользователя по его или ее группе AD.
Комментарий Per Hadyman5, я выполнил следующее:
id MYDOMAIN\\djsumdog
... и увидел, что моя группа на самом деле была MYDOMAIN \ linuxadmins, все строчные. Затем я добавил в свою конфигурацию sudo следующее:
%MYDOMAIN\\linuxadmins ALL=(ALL) ALL
И sudo теперь отлично работает с пользователями в этой группе.
Используя инструкции по добавлению коробки centos 7 в мой домен 2012r2, расположенный Вот, Я смог добавить в свой домен. Добавление группы AD в sudoers потребовало от меня форматирования группы как %GroupName@DOMAIN ALL=(ALL) ALL
и это сработало.