getent passwd не работает; CentOS 7 и SSSD LDAP аутентификация


9

Я установил CentOS 7 на новый сервер. Все мои серверы проходят аутентификацию конечного пользователя через LDAPS в различных системах, таких как RHEL5, Debian и Solaris. Я заметил, что в CentOS 7 появился новый слой, который находится над SSS выше NSS и PAM. Во всяком случае, я пытаюсь реплицировать тот же тип соединения, что и другой сервер.

Команда ldapsearch -xявляется обязательной в LDAP, но не в LDAPS.

При копании проблемы я пытался установить соединение в LDAP, сжимая слой SSS, помещая эти строки в мой /etc/nsswitch.conf

passwd:     files ldap #sss 
shadow:     files ldap #sss 
group:      files ldap #sss 

И я добавил эту строку в /etc/sssd/sssd.conf

cache_credentials = False

И я перезапустил ssd.

systemctl restart sssd

Я проверяю с помощью команды, authconfig --testи все кажется нормально: ( http://www.heypasteit.com/clip/1LZ2 )

Ответы:


9

Я не уверен, что это правильное решение, но заметил в SSSD FAQ этот момент:

Когда мне следует включить перечисление в SSSD? или почему перечисление отключено по умолчанию?

«Перечисление» - это термин SSSD для «чтения и отображения всех значений определенной карты (пользователей, групп и т. Д.)». Мы отключаем это по умолчанию в SSSD, чтобы минимизировать нагрузку на серверы, с которыми SSSD должен связываться. В большинстве операций перечисление полного набора пользователей или групп никогда не потребуется. Приложения обычно запрашивают информацию о конкретных пользователях или группах.

Перечисление всех записей оказывает негативное влияние на нагрузку на сервер и производительность на клиенте (поскольку мы должны сохранить все сложные отношения между пользователями и группами, к которым они принадлежат, в локальном кэше). Поэтому из-за этого мы отправляем с отключенными перечислениями (такое же поведение, как в winbind проекта Samba).

Вы должны разрешать перечисления (и возникающие в результате проблемы с производительностью) только в том случае, если в вашей среде есть приложения или сценарии, которые обязательно должны иметь возможность получать полные списки. В этих случаях перечисление можно включить, установив

   [domain/<domainname>]
   enumerate = true
   ...

в вашем файле sssd.conf.

Это позволило getent passwdотображать все учетные записи, которые были доступны через SSSD. Имейте в виду, что это может быть перетаскивание производительности.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.