Аутентификация LDAP в CentOS 7: «В разрешении отказано»

Я использую экземпляр CentOS 7 VirtualBox. Я пытаюсь настроить аутентификацию LDAP через сервер Active Directory нашей компании.

Примечание. На сервере AD НЕ установлены расширения Unix.

Настройка:

  • У меня установлен nss-pam-ldapd
  • Службы nslcd и nscd запускаются при запуске
  • /etc/nsswitch.conf был отредактирован, чтобы добавить ldap:

     passwd: files ldap
    группа: файлы ldap
    тень: файлы ldap 
    хосты: файлы ldap dns myhostname
    эфиры: файлы ldap
    сети: файлы ldap
    протоколы: файлы ldap
    rpc: файлы ldap
    сервисы: файлы ldap sss
    псевдонимы: файлы ldap nisplus
    
  • /etc/pam.d/password-auth и /etc/pam.d/system-auth отредактированы, чтобы добавить:

     auth достаточный pam_ldap.so use_first_pas
    аккаунт [по умолчанию = неудачный успех = нормально user_unknown = игнорировать] pam_ldap.so
    пароль достаточный pam_ldap.so use_authok
    сеанс необязательный pam_ldap
    требуется сеанс pam_mkhomedir.so skel = / etc / skel umask = 0077
    
  • /etc/nslcd.conf отредактировал:

     uid nslcd
    gid nslcd
    
    uri ldap: //myserver.com/
    
    база dc = myserver, dc = com
    
    binddn CN = Мое имя, OU = Пользователи, OU = DV, DC = myserver, DC = com
    
    bindpw ПАРОЛЬ ЗДЕСЬ
    
    # Альтернативные сопоставления для Active Directory
    размер страницы 1000
    рефералы от
    idle_timelimit 800
    фильтр passwd (& (objectClass = пользователь) (! (objectClass = компьютер)))
    карта passwd uid userPrincipalName
    карта passwd uidNumber objectSid: CorrectSID
    карта passwd gidNumber objectSid: CorrectSID
    map passwd homeDirectory "/ home / $ cn"
    карта passwd gecos displayName
    map passwd loginShell "/ bin / bash"
    группа фильтров (objectClass = group)
    карта группы gidNumber objectSid: CorrectSID
    ssl нет
    

После перезагрузки виртуальной машины и удаленного подключения с пользователем по умолчанию я могу перечислить всех пользователей AD ( user@myserver.com) и группы, используя

    $ getent passwd
    and
    $ getent group

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

    $ ssh my.name@myserver.com@linuxboxip
    my.name@myserver.com@linuxboxip's password:
    Permission denied, please try again.

Я ответил на связанные вопросы на этом сайте через отладку и перенастроил свежее с нуля. Не повезло.

Есть мысли?

1
задан 17 February 2017 в 00:18
1 ответ

ОК, Я обнаружил проблему.

См. ссылку

При редактировании файлов PAM: /etc/pam.d/password-auth и /etc/pam.d/system-auth

Правки должны быть сделано для соответствующих разделов, а не просто добавлено в конец файла. В частности, пароль требует pam_deny.so строки ДОЛЖНЫ быть ПОСЛЕДНЕЙ записью в разделе.

Теперь я могу войти в систему с пользователем / паролем LDAP через SSH и графический интерфейс.

0
ответ дан 4 December 2019 в 05:11

Теги

Похожие вопросы