Проблема

Проблемы с аутентификацией: доменный пользователь не может войти в систему.

Диагностика

  • Проверить, что после ввода логина и пароля от доменной учетной записи появляется сообщение "Вход неудачен".

Возможная причина: Превышено число неудачных попыток входа. Перейти к решению.


  • Проверить параметры в конфигурационном файле /etc/nsswitch.conf.

Возможная причина: Некорректные параметры в /etc/nsswitch.conf. Перейти к решению.


  • Проверить в файле /var/log/auth.log наличие строк следующего вида:

    fly-dm: :0[965]: pam_parsec_mac(fly-dm:auth): Unknown user domain.example\user
    fly-dm: :0[965]: pam_krb5(fly-dm:auth): authentication failure; logname=domain.example\user uid=0 euid=0 tty=/dev/tty7 ruser= rhost=
    fly-dm: :0[965]: pam_unix(fly-dm:auth): check pass; user unknown
    fly-dm: :0[965]: pam_unix(fly-dm:auth): authentication failure; logname= uid=0 euid=0 tty=/dev/tty7 ruser= rhost=
    
    CODE

Возможная причина: Установлен пакет vmtools. Перейти к решению.


  • Проверить наличие NTP-служб и их корректную настройку, например, в конфигурационных файлах /etc/ntp.conf или /etc/systemd/timesyncd.conf.

Возможная причина: Рассинхронизация времени с контроллером домена. Перейти к решению.


  • Проверить возможность консольного входа (<Ctrl+Alt+F1>).

Возможная причина: Проблема с домашним каталогом доменного пользователя. Перейти к решению.


  • Проверить в конфигурационном файле /etc/samba/smb.conf значение параметра winbind separator.

Возможная причина: Не задано значение параметра winbind separator. Перейти к решению.


  • При входе с использованием доменной учетной записью после ввода пароля происходит возврат на окно логина.
  • При выполнении команды:
    sudo login <имя_доменного_пользователя>
    CODE
    появляется сообщение:
    Превышен лимит размера файла
    CODE
  • Проверить в файле /var/log/auth.log наличие ошибок вида:

    fly-dm: :0[1037]: pam_unix(fly-dm:auth): authentication failure; logname= uid=0 euid=0 tty=/dev/tty7 ruser= rhost=  user=test
    fly-dm: :0[1037]: pam_sss(fly-dm:auth): authentication success; logname= uid=0 euid=0 tty=/dev/tty7 ruser= rhost= user=test
    fly-dm: :0[1037]: pam_unix(fly-dm:session): session opened for user test by (uid=0)
    systemd-logind[778]: New session 3 of user test.
    systemd: pam_unix(systemd-user:session): session opened for user test by (uid=0)
    fly-dm: :0[1037]: pam_unix(fly-dm:session): session closed for user test
    systemd-logind[778]: Removed session 3.
    systemd: pam_unix(systemd-user:session): session closed for user test
    CODE

Возможная причина: Включены системные ограничения ulimits. Перейти к решению.


  • Проверить содержимое файла /etc/pam.d/common-auth на наличие записи вида:

    auth	[success=6 default=ignore]	pam_krb5.so minimum_uid=2500
    CODE

Возможная причина: Используется модуль pam_krb5. Перейти к решению.


  • Проверить при авторизации pam_winbind с более чем одним realm AD наличие сообщения вида:

    NT_STATUS_OBJECT_NAME_NOT_FOUND
    CODE

Возможная причина: Некорректная работа повторной авторизации в PAM-стеке. Перейти к решению.


  1. Войти в систему, используя учетную запись локального администратора, и последовательно выполнить следующие команды:

    sudo systemctl stop smbd nmbd winbind
    sudo net cache flush
    sudo rm /var/lib/samba/winbindd_cache.tdb
    sudo rm /var/lib/samba/winbindd_idmap.tdb
    sudo rm /var/lib/samba/group_mapping.tdb
    sudo systemctl start smbd nmbd winbind
    CODE

    В результате выполнения команд будет очищен кеш Samba.

  2. Выйти из сессии локального администратора и выполнить вход, используя доменную учетную запись пользователя.

Возможная причина: Некорректный или поврежденный кеш Samba. Перейти к решению.


  • В журнале /var/log/sssd/sssd_domain.local.log присутствуют сообщения вида:
    [krb5_child_timeout] (0x0040): Timeout for child [770889] reached. In case KDC is distant or network is slow you may consider increasing value of krb5_auth_timeout.
    [krb5_auth_done] (0x0020): child timed out!
    [fo_set_port_status] (0x0100): Marking port 389 of server 'dc01.domain.local' as 'not working'
    ...
    Marking port 389 of server 'dc03.domain.local' as 'not working'
    Marking port 389 of server 'dc02.domain.local' as 'not working'
    Marking port 389 of server 'dc01.domain.local' as 'not working'
    Marking port 389 of server 'dc04.domain.local' as 'not working'
    CODE

Возможная причина: SSSD отметила 389 порт как нерабочий. Перейти к решению.


  • В журнале /var/log/sssd/krb5_child.log присутствуют сообщения вида:
    Disk quota exceeded
    CODE

Возможная причина: Превышение дисковой квоты в пользовательском пространстве ключей ядра. Перейти к решению.


Возможные причины