Я не уверен, что правильно понял ваш вопрос, но я предполагаю, что вы хотите, чтобы система знала пользователей, хранящихся в LDAP.
Чтобы достичь этого, вы должны указать системе nsswitch, как собирать информацию о пользователе. Отредактируйте файл /etc/nsswitch.conf из
passwd: compat group: compat shadow: compat
чтобы:
passwd: compat ldap group: compat ldap shadow: compat ldap
Таким образом, вы указываете системе выполнять поиск сначала в локальной базе данных (например, в группе, файлах passwd и shadow), а затем искать в ldap. Конечно, вам нужна правильно работающая среда LDAP, иначе система не сможет найти данные ldap. Вам нужен пакет nss_ldap, чтобы получить функцию ldap для nss. Если вы этого еще не сделали, вам необходимо настроить систему LDAP в /etc/ldap.conf или /etc/ldap/ldap.conf и / или /etc/openldap/ldap.conf в соответствии с вашей средой LDAP. Например:
BASE dc=somesite,dc=com URI ldap://my.ldap.server.somesite.com TIMELIMIT 10
Вы можете предпочесть, чтобы ваш Centos инструмент system-config-authentication (Информация / Включить поддержку LDAP) сделал это.
После этого вы сможете получить доступ к идентификаторам пользователей, выполнив команду getent passwd.
В качестве альтернативы вы можете использовать sssd в качестве посредника для связи с ldap, как описано здесь: https://wiki.contribs.org/Client_Authentication:Centos_via_sssd/ldap
Дополнительная информация:
- Если вы используете какое-либо программное обеспечение для кэширования переключателей имен (например, sssd или nslcd), вы должны обновить эту конфигурацию (при необходимости) и перезапустить службу.
- на многолюдном сайте постоянно запрашивать LDAP можно излишне. Вы можете решить эту проблему с помощью вышеупомянутых программ для кэширования (nslcd).
- получение информации о passwd / group из LDAP и аутентификация - это совершенно разные виды. Если вы хотите аутентифицироваться на ldap, вы должны изменить настройку PAM. Это другая история.