Работа Linux-компьютера в корпоративном домене требует надежного механизма идентификации пользователей, проверки учетных данных и взаимодействия с централизованной службой каталога. В экосистеме ALD Pro эту задачу выполняет служба SSSD — System Security Services Daemon.
Она обеспечивает доступ к информации каталога и механизмам централизованной аутентификации, связывая Linux-компьютер с доменной инфраструктурой.
Что представляет собой SSSD
SSSD является важным компонентом работы Linux-системы в домене. Служба предназначена для:
- получения информации об учетных записях;
- получения информации о группах из удаленного каталога;
- для обработки запросов, связанных с аутентификацией и доступом.
В ALD Pro, построенном на базе FreeIPA, в конфигурации доменного компьютера в качестве поставщика идентификационных данных используется ipa. При этом sssd интегрируется с системными механизмами Linux. Для аутентификации служба использует модуль pam_sss.so, включенный в стек PAM, а для получения информации о пользователях и группах подключается к NSS.
Архитектура службы SSSD
SSSD состоит из нескольких взаимодействующих компонентов. Такая архитектура позволяет разделить задачи по обработке запросов, взаимодействию с доменом, управлению процессами и предоставлению информации приложениям.
Центральную роль играет монитор. Он запускает и контролирует остальные процессы службы, обеспечивает их взаимодействие и следит за их состоянием. Монитор также обрабатывает конфигурацию SSSD и управляет запуском бэкендов и ответчиков.
Ответчики служат промежуточным звеном между клиентскими приложениями, кэшем и бэкендами. Например, NSS-ответчик предоставляет информацию о пользователях и группах, а PAM-ответчик участвует в обработке запросов аутентификации. Отдельные процессы предусмотрены и для других задач, включая работу с правилами sudo.
Кэширование данных SSSD
Одной из важных особенностей SSSD является использование кэширования. Оно уменьшает количество обращений к серверу каталога и позволяет компьютеру продолжать выполнять определенные операции при временном отсутствии связи с доменной инфраструктурой.
Основной локальный кэш хранится в базе данных в каталоге /var/lib/sss/db/. Полученная из каталога информация записывается туда бэкендами, после чего ответчики могут использовать ее для обработки последующих запросов. У каждого объекта есть срок актуальности, однако в автономном режиме система может использовать устаревшие данные в предусмотренных сценариях.



