Вопрос или проблема
Мне нужно подключить хост Ubuntu 16.04 к домену Windows SRV.LOCAL.
Следующая ошибка зафиксирована в /var/log/syslog:
Список ограниченного входа – не удалось разрешить srv\DomainUsers [40071]
Ошибки в /var/log/auth:
доступ пользователю user12 отказан, так как он не находится в списке ‘требуется членство’
30 дек 08:56:47 srv3 login[1713]: PAM (login) неверный тип модуля: sessions
30 дек 08:56:47 srv3 login[1713]: PAM (other) неверный тип модуля: sessions
30 дек 08:56:50 srv3 login[1713]: [lsass-pam] [module:pam_lsass] Доступ пользователю user12 запрещен, так как он не находится в списке 'требуется членство'
30 дек 08:56:50 srv3 login[1713]: [lsass-pam] [module:pam_lsass] ошибка pam_sm_authenticate [login:user12][код ошибки:40158]
30 дек 08:56:50 srv3 login[1713]: pam_unix(login:auth): ошибка аутентификации; logname=LOGIN uid=0 euid=0 tty=/dev/tty1 ruser= rhost= пользователь=user12
30 дек 08:56:50 srv3 login[1713]: pam_sss(login:auth): Запрос к sssd не удался. Соединение отклонено
30 дек 08:56:53 srv3 login[1713]: НЕУДАЧНЫЙ ВХОД (1) на '/dev/tty1' ДЛЯ 'user12', ошибка аутентификации
/opt/pbis/bin/config –dump:
root@srv3:~# /opt/pbis/bin/config --dump
AllowDeleteTo ""
AllowReadTo ""
AllowWriteTo ""
MaxDiskUsage 104857600
MaxEventLifespan 90
MaxNumEvents 100000
DomainSeparator "\\"
SpaceReplacement "^"
EnableEventlog false
SaslMaxBufSize 16777215
Providers "ActiveDirectory"
DisplayMotd false
PAMLogLevel "verbose"
UserNotAllowedError "Доступ запрещен"
AssumeDefaultDomain true
CreateHomeDir true
CreateK5Login true
SyncSystemTime true
TrimUserMembership true
LdapSignAndSeal false
LogADNetworkConnectionEvents true
NssEnumerationEnabled true
NssGroupMembersQueryCacheOnly true
NssUserMembershipQueryCacheOnly false
RefreshUserCredentials true
CacheEntryExpiry 14400
DomainManagerCheckDomainOnlineInterval 300
DomainManagerUnknownDomainCacheTimeout 3600
MachinePasswordLifespan 2592000
MemoryCacheSizeCap 0
HomeDirPrefix "/home"
HomeDirTemplate "%H/%U"
RemoteHomeDirTemplate ""
HomeDirUmask "022"
LoginShellTemplate "/bin/bash"
SkeletonDirs "/etc/skel"
UserDomainPrefix "srv"
DomainManagerIgnoreAllTrusts false
DomainManagerIncludeTrustsList
DomainManagerExcludeTrustsList
RequireMembershipOf "srv\\DomainUsers"
Local_AcceptNTLMv1 true
Local_HomeDirTemplate "%H/local/%D/%U"
Local_HomeDirUmask "022"
Local_LoginShellTemplate "/bin/sh"
Local_SkeletonDirs "/etc/skel"
UserMonitorCheckInterval 1800
LsassAutostart true
EventlogAutostart true
BlacklistDC
root@srv3:~# /opt/pbis/bin/get-status
Статус сервера LSA:
Скомпилированная версия демона: 8.5.2.265
Версия упакованного продукта: 8.5.265.1
Время работы: 0 дней 0 часов 14 минут 5 секунд
[Поставщик аутентификации: lsa-activedirectory-provider]
Статус: В сети
Режим: Не настроен
Домен: SRV.LOCAL
SID домена: S-1-5-21-2727847642-148432537-1030246457
Лес: srv.local
Сайт: Default-First-Site-Name
Интервал проверки онлайн: 300 секунд
[Доверенные домены: 1]
[Домен: SRV]
DNS домен: srv.local
Имя Netbios: SRV
Имя леса: srv.local
Доверенное DNS имя:
Имя клиента сайта: Default-First-Site-Name
SID домена: S-1-5-21-2727847642-148432537-1030246457
GUID домена: 8ac2ba85-7313-6746-abfe-d44f9856708e
Флаги доверия: [0x001d]
[0x0001 - В лесу]
[0x0004 - Корень дерева]
[0x0008 - Основной]
[0x0010 - Нативный]
Тип доверия: Up Level
Атрибуты доверия: [0x0000]
Направление доверия: Основной домен
Режим доверия: В моем лесу Trust (MFT)
Флаги домена: [0x0001]
[0x0001 - Основной]
[Информация о контроллере домена (DC)]
Имя DC: dc1.srv.local
Адрес DC: 192.168.253.200
Сайт DC: Default-First-Site-Name
Флаги DC: [0x0000f1fd]
DC является PDC: да
DC является сервером времени: да
DC имеет записываемый DS: да
DC является глобальным каталогом: да
DC выполняет KDC: да
[Информация о глобальном каталоге (GC)]
Имя GC: dc1.srv.local
Адрес GC: 192.168.253.200
Сайт GC: Default-First-Site-Name
Флаги GC: [0x0000f1fd]
GC является PDC: да
GC является сервером времени: да
GC имеет записываемый DS: да
GC выполняет KDC: да
/opt/pbis/share/pbis.pam-auth-update
Имя: PowerBroker Identity Services (PBIS)
По умолчанию: да
Приоритет: 260
Конфликты: winbind
Тип аутентификации: Первичный
Аутентификация:
[успех=end default=ignore] pam_lsass.so try_first_pass
Аутентификация-Начальная:
[успех=end default=ignore] pam_lsass.so
Тип учетной записи: Первичный
Учетная запись:
[успех=ok new_authtok_reqd=ok default=ignore] pam_lsass.so unknown_ok
[успех=end new_authtok_reqd=done default=ignore] pam_lsass.so
Тип сеанса: Дополнительный
Сессия:
optional pam_lsass.so
Тип пароля: Первичный
Пароль:
[успех=end default=ignore] pam_lsass.so use_authtok try_first_pass
Пароль-Начальный:
[успех=end default=ignore] pam_lsass.so
/etc/pam.d/common-account
#
# /etc/pam.d/common-account - настройки авторизации, общие для всех служб
#
# Этот файл включается из других файлов конфигурации PAM, специфичных для служб,
# и должен содержать список модулей авторизации, которые определяют
# центральную политику доступа для использования в системе. По умолчанию он
# просто запрещает доступ пользователям, чьи учетные записи истекли в /etc/shadow.
#
# Начиная с pam 1.0.1-6, этот файл управляется pam-auth-update по умолчанию.
# Чтобы воспользоваться этим, рекомендуется конфигурировать любые
# локальные модули до или после блока по умолчанию и использовать
# pam-auth-update для управления выбором других модулей. См.
# pam-auth-update(8) для получения подробной информации.
#
# здесь находятся модули на пакет (блок "Первичный")
account [success=ok new_authtok_reqd=ok default=ignore] pam_lsass.so unknown_ok
account [success=2 new_authtok_reqd=done default=ignore] pam_lsass.so
account [success=1 new_authtok_reqd=done default=ignore] pam_unix.so
# вот резервный вариант, если ни один модуль не удался
account requisite pam_deny.so
# использовать положительное возвращаемое значение, если его еще нет;
# это избегает возврата ошибки только потому, что ничего не устанавливает код успеха
# поскольку выше указанные модули будут просто перескакивать
account required pam_permit.so
# и здесь находятся дополнительные модули на пакет (блок "Дополнительный")
account sufficient pam_localuser.so
account [default=bad success=ok user_unknown=ignore] pam_sss.so
# конец конфигурации pam-auth-update
/etc/pam.d/common-session:
#
# /etc/pam.d/common-session - модули, связанные с сессией, общие для всех служб
#
# Этот файл включается из других файлов конфигурации PAM, специфичных для служб,
# и должен содержать список модулей, определяющих задачи, которые выполняются
# в начале и конце сессий любого типа (как интерактивных, так и
# неинтерактивных).
#
# Начиная с pam 1.0.1-6, этот файл управляется pam-auth-update по умолчанию.
# Чтобы воспользоваться этим, рекомендуется конфигурировать любые
# локальные модули до или после блока по умолчанию и использовать
# pam-auth-update для управления выбором других модулей. См.
# pam-auth-update(8) для получения подробной информации.
# здесь находятся модули на пакет (блок "Первичный")
session [default=1] pam_permit.so
# вот резервный вариант, если ни один модуль не удался
session requisite pam_deny.so
# использовать положительное возвращаемое значение, если его еще нет;
# это избегает возврата ошибки только потому, что ничего не устанавливает код успеха
# поскольку выше указанные модули будут просто перескакивать
session required pam_permit.so
# Модуль pam_umask устанавливает umask в соответствии с системным значением по умолчанию в
# /etc/login.defs и настройками пользователя, решая проблему различных
# настроек umask с разными оболочками, дисплей-менеджерами, удаленными сессиями и т.д.
# См. "man pam_umask".
session optional pam_umask.so
# и здесь находятся дополнительные модули на пакет (блок "Дополнительный")
#session optional pam_lsass.so
sessions [success=ok default=ignore] pam_lsass.so
session required pam_unix.so
session optional pam_sss.so
session optional pam_systemd.so
# конец конфигурации pam-auth-update
session required pam_mkhomedir.so skel=/etc/skel/ umask=0022
/etc/pam.d/common-auth:
#
# /etc/pam.d/common-auth - настройки аутентификации, общие для всех служб
#
# Этот файл включается из других файлов конфигурации PAM, специфичных для служб,
# и должен содержать список модулей аутентификации, которые определяют
# центральную схему аутентификации для использования в системе
# (например, /etc/shadow, LDAP, Kerberos и т.д.). По умолчанию используется
# традиционный механизм аутентификации Unix.
#
# Начиная с pam 1.0.1-6, этот файл управляется pam-auth-update по умолчанию.
# Чтобы воспользоваться этим, рекомендуется конфигурировать любые
# локальные модули до или после блока по умолчанию и использовать
# pam-auth-update для управления выбором других модулей. См.
# pam-auth-update(8) для получения подробной информации.
# здесь находятся модули на пакет (блок "Первичный")
auth [success=3 default=ignore] pam_lsass.so
auth [success=2 default=ignore] pam_unix.so nullok_secure try_first_pass
auth [success=1 default=ignore] pam_sss.so use_first_pass
# вот резервный вариант, если ни один модуль не удался
auth requisite pam_deny.so
# использовать положительное возвращаемое значение, если его еще нет;
# это избегает возврата ошибки только потому, что ничего не устанавливает код успеха
# поскольку выше указанные модули будут просто перескакивать
auth required pam_permit.so
# и здесь находятся дополнительные модули на пакет (блок "Дополнительный")
# конец конфигурации pam-auth-update
~
~
/etc/pbis/pbis-krb5-ad.conf:
[libdefaults]
default_tgs_enctypes = AES256-CTS AES128-CTS RC4-HMAC DES-CBC-MD5 DES-CBC-CRC
default_tkt_enctypes = AES256-CTS AES128-CTS RC4-HMAC DES-CBC-MD5 DES-CBC-CRC
preferred_enctypes = AES256-CTS AES128-CTS RC4-HMAC DES-CBC-MD5 DES-CBC-CRC
dns_lookup_kdc = true
pkinit_kdc_hostname = <DNS>
pkinit_anchors = DIR:/var/lib/pbis/trusted_certs
pkinit_cert_match = &&<EKU>msScLogin<PRINCIPAL>
pkinit_eku_checking = kpServerAuth
pkinit_win2k_require_binding = false
pkinit_identities = PKCS11:/opt/pbis/lib/libpkcs11.so
Список ограниченного входа – не удалось разрешить srv\DomainUsers [40071]
Вы должны проверить, соответствует ли название группы Domain Users в настройках PBIS тому, как оно видится в PBIS.
Для этого выполните следующую команду:
/opt/pbis/bin/enum-groups | grep -i Domain
Найдите имя вашей группы Domain Users так, как оно отображается, и укажите имя группы в конфигурации в той же форме.
Ответ или решение
Проблема, с которой вы столкнулись при попытке присоединить Ubuntu 16.04 к домену Windows SRV.LOCAL, указывает на несколько возможных причин, включая неверную конфигурацию групп и проблемы с модулями PAM. Давайте рассмотрим шаги, которые помогут вам устранить эту проблему.
Шаг 1: Проверка настройки групп
Ошибка, которую вы видите: "Restricted login list – couldn’t resolve srv\DomainUsers [40071]", указывает на то, что система не может разрешить имя группы пользователей домена. Чтобы убедиться, что группа правильно определена в конфигурации PBIS, выполните следующую команду:
/opt/pbis/bin/enum-groups | grep -i Domain
Эта команда покажет список групп, связанных с вашим доменом. Убедитесь, что название группы "Domain Users" совпадает с тем, как PBIS интерпретирует его. Измените конфигурацию в PBIS, если название группы отличается. Например, если вывод команды показывает "Domain Users", вам необходимо убедиться, что в конфигурации указано:
RequireMembershipOf "srv\Domain Users"
Шаг 2: Конфигурация PAM
Извините за путаницу, но у вас могут быть неправильные или конфликтующие настройки в конфигурации PAM. Проверьте файл /etc/pam.d/common-account
и убедитесь, что порядок модулей настроен корректно:
account [success=ok new_authtok_reqd=ok default=ignore] pam_lsass.so unknown_ok
account [success=2 new_authtok_reqd=done default=ignore] pam_lsass.so
account [success=1 new_authtok_reqd=done default=ignore] pam_unix.so
account requisite pam_deny.so
account required pam_permit.so
account sufficient pam_localuser.so
account [default=bad success=ok user_unknown=ignore] pam_sss.so
Убедитесь, что pam_lsass.so
не конфликтует с другими модулями и расположен в правильном порядке.
Шаг 3: Проверка подключения к DC
Проверьте, может ли ваш сервер подключаться к контроллеру домена (Domain Controller, DC). Используйте команду:
/opt/pbis/bin/config LookupDomain
Убедитесь, что ваш сервер видит контроллер домена и может установить с ним связь.
Шаг 4: Перезагрузка служб
После внесения всех изменений перезагрузите службы PBIS, чтобы применить изменения конфигурации:
/opt/pbis/bin/lwsm restart
Шаг 5: Тестирование
Попробуйте снова выполнить логин под пользователем, который входит в группу "Domain Users". Также проверьте логи системы, чтобы увидеть любые дополнительные сообщения об ошибках:
tail -f /var/log/syslog
tail -f /var/log/auth.log
Заключение
Если проблема не будет решена после выполнения вышеуказанных шагов, возможно, следует проверить настройки сетевого подключения, наличие firewall или других механизмов безопасности, которые могут блокировать трафик. Кроме того, убедитесь, что служба времени (NTP) синхронизирована с контроллером домена, так как это также может вызвать проблемы с аутентификацией.
Если у вас остались вопросы или проблемы, дайте знать, и я помогу вам дальше.