pam_sss(sshd:account): Доступ запрещен для пользователя AD

Вопрос или проблема

sssd.conf:

[sssd]
domains = corp.com
config_file_version = 2
services = nss, pam

[domain/corp.com]
ad_domain = corp.lecapam.com
krb5_realm = CORP.COM
realmd_tags = manages-system joined-with-samba
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = False
fallback_homedir = /home/%u@%d
access_provider = simple
simple_allow_groups = RootUser,NonRootUser

Проблема в том, что члены групп AD NonRootUser не могут установить SSH-соединение, в то время как члены RootUser могут. Я недавно добавил группу AD NonRootUser в конфигурацию и перезапустил службы sshd и sssd.

Ошибки:

sshd[29077]: pam_sss(sshd:auth): успех аутентификации; logname= uid=0 euid=0 tty=ssh ruser= rhost=ad01.corp.com user=corp\test
sshd[29077]: pam_sss(sshd:account): Доступ запрещен для пользователя corp\test: 6 (Доступ запрещён)
sshd[29077]: Неудачная попытка входа для  corp\\test с 1.1.1.1 порт 60235 ssh2
sshd[29077]: фатально: Доступ запрещен для пользователя corp\\\\test по конфигурации PAM аккаунта [preauth]

Является ли corp\test членом групп RootUser/NonRootUser? Я предполагаю, что нет.

Ответ или решение

Анализ проблемы: доступ к SSH для пользователей Active Directory

Введение

Ваша проблема связана с тем, что пользователи, входящие в группу NonRootUser Active Directory, не могут получить доступ к SSH, в то время как пользователи из группы RootUser имеют такой доступ. Давайте подробно рассмотрим конфигурацию, ошибки и предоставим рекомендации для решения данной проблемы.

Конфигурация SSSD

Ваш файл конфигурации sssd.conf выглядит следующим образом:

[sssd]
domains = corp.com
config_file_version = 2
services = nss, pam

[domain/corp.com]
ad_domain = corp.lecapam.com
krb5_realm = CORP.COM
realmd_tags = manages-system joined-with-samba
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = False
fallback_homedir = /home/%u@%d
access_provider = simple
simple_allow_groups = RootUser,NonRootUser

Ошибки при аутентификации

Из приведенных вами логов видно, что пользователю corp\test не разрешен доступ:

sshd[29077]: pam_sss(sshd:account): Access denied for user corp\test: 6 (Permission denied)
sshd[29077]: fatal: Access denied for user corp\\\\test by PAM account configuration [preauth]

Эти строки указывают, что аутентификация прошла успешно, однако доступ к учетной записи был отклонен. Ключевым моментом является то, что используется access_provider = simple и simple_allow_groups = RootUser,NonRootUser.

Причины проблемы

  1. Проверка групп: Вам необходимо убедиться, что пользователь corp\test действительно является членом группы NonRootUser. Это можно сделать, выполнив команду на соответствующем сервере:

    id corp\test

    Если corp\test не будет перечислен среди членов группы NonRootUser, то это основной источник проблемы.

  2. Кэширование учётных данных: Поскольку cache_credentials установлено в True, возможно, это связано с тем, что информация о группах была закэширована. Попробуйте выполнить команды для очистки кэша:

    sudo systemctl restart sssd
  3. Конфигурация PAM: Убедитесь, что конфигурация PAM для SSH (обычно это файл /etc/pam.d/sshd) правильно настроена и не содержит дополнительных правил, которые могут блокировать доступ для группы NonRootUser.

  4. Проверка прав доступа: Кроме групп, следует проверить, не заданы ли какие-либо другие ограничения на доступ для этой группы, например в файле /etc/security/access.conf или аналогичных.

Рекомендации по решению

  • Проверьте членство в группах: Убедитесь, что пользователь corp\test находится в группе NonRootUser.

  • Очистите кэш SSSD: Перезапустите службу SSSD и проверьте, доступен ли пользователь после очистки кэша.

  • Проверьте конфигурацию PAM: Убедитесь, что в конфигурации PAM нет дополнительных ограничений для пользователей из группы NonRootUser.

  • Перезагрузите SSH: После внесения изменений в конфигурацию перезапустите службу SSH, чтобы убедиться, что изменения вступили в силу.

Заключение

Проблема с доступом пользователя corp\test по SSH из группы NonRootUser скорее всего связана с неправильно настроенной групповой принадлежностью или ограничениями в конфигурации PAM. Внимательно следуя приведенным рекомендациям, вы сможете решить данную проблему и обеспечить необходимый доступ для всех пользователей соответствующих групп.

Оцените материал
Добавить комментарий

Капча загружается...