У меня есть некоторые Linux-боксы, которые используют проверку подлинности Windows Active Directory, которая прекрасно работает (Samba + Winbind).
Теперь я хотел бы разрешить вход только определенным людям или определенным группам с использованием учетных данных Active Directory. В настоящее время любой пользователь с действующей учетной записью AD может войти в систему. Я хочу ограничить это только несколькими группами. Это выполнимо?
(Я говорю о самбе 3 здесь, сейчас нет опыта по самбе 4).
Нет необходимости редактировать эти файлы /etc/pam.d/xxx. pam_winbind.conf - это файл, который вы хотите, обычно он находится в /etc/security/pam_winbind.conf .
Это файл конфигурации модуля pam_winbind, который работает как для CentOS / Redhat, так и для Debian / Ubuntu. Вы можете прочитать справочную страницу pam_winbind.conf для справки.
Вот пример файла.
источник
В настоящее время я использую
AllowGroups
директиву/etc/ssh/sshd_config
для ограничения того, кто может войти в систему. Укажите одну или несколько групп AD в этой строке, и эти люди будут единственными, кто сможет войти в систему.Имейте в виду , что это работает только если пользователи только доступ к серверу удаленно через SSH. Если они поют локально, вам нужно найти другое решение.
источник
Да, есть несколько способов сделать это в зависимости от того, что именно вы пытаетесь достичь.
Первый способ можно сделать через конфиг samba. Это позволит только этим пользователям подключаться к Samba, другие пользователи могут по-прежнему входить через другие службы (ssh, локальный термин и т. Д.). С этим вы захотите добавить строку в ваш [global] раздел в smb.conf:
Другой метод заключается в изменении правил PAM. В разных дистрибутивах есть небольшие различия, но, вообще говоря, есть правила PAM для каждой службы, а также общие правила, вы можете решить, что лучше. Вы хотите добавить ограничение учетной записи с помощью модуля pam_require. Например, на моем ноутбуке (Fedora 13) можно изменить раздел учетной записи в /etc/pam.d/system-auth, чтобы:
Чтобы упростить администрирование, вы можете создать новую группу в AD для отслеживания пользователей, которые могут войти на этот сервер.
источник
Я изо всех сил пытался заставить все вышеперечисленное работать на меня в RHEL 7. Ниже приведено то, что я смог получить на работе.
/etc/sssd/sssd.conf
Изменить
access_provider = ad
наaccess_provider = simple
+simple_allow_groups = @group1-admins@xxx.xxx.com, @group2@xxx.xxx.com
visudo
%group1-admins@xxx.xxx.com ALL=(ALL) ALL
перезапустите службу sssd.
источник
Я добился, чтобы только один AD_USER или AD_GROUP для входа в систему SSH через Linux аутентификации AD.
Детали перечислены здесь: (обратите внимание на шаги 7 и 8)
https://gist.githubusercontent.com/xianlin/8c09d916994dac7630b9/raw/ee07817a03bc5904a5404a7e7c94e08ea0c7560a/CentOS_AD_Integration
источник