Product SiteDocumentation Site

6.12. Настройка SSSD

6.12.1. Журналирование SSSD

6.12.1.1. Файлы журналов SSSD

Каждая служба SSSD записывает логи в свой собственный файл журнала в каталоге /var/log/sssd/. Например, для машины в домене AD test.alt, файлы журналов SSSD могут выглядеть следующим образом:
# ls -l /var/log/sssd/
итого 1660
-rw------- 1 _sssd _sssd       0 мая 18 12:55 gpo_child.log
-rw------- 1 _sssd _sssd       0 мая 18 12:55 krb5_child.log
-rw------- 1 _sssd _sssd       0 мая 18 12:54 ldap_child.log
-rw------- 1 root  root      261 июн 19 10:10 sssd_ifp.log
-rw------- 1 root  root     3955 июн 19 09:34 sssd.log
-rw------- 1 _sssd _sssd 1677605 июн 19 11:18 sssd_nss.log
-rw------- 1 _sssd _sssd    1134 июн 19 09:34 sssd_pac.log
-rw------- 1 _sssd _sssd    3067 июн 19 09:34 sssd_pam.log
-rw------- 1 _sssd _sssd       0 мая 18 12:54 sssd_TEST.ALT.log
krb5_child.log
Файл журнала для недолговечного вспомогательного процесса, участвующего в аутентификации Kerberos.
ldap_child.log
Файл журнала для недолговечного вспомогательного процесса, участвующего в получении билета Kerberos для связи с сервером LDAP.
sssd_<domain.name>.log
Для каждого раздела [domain] в файле sssd.conf служба SSSD записывает информацию о взаимодействии с LDAP-сервером в отдельный файл журнала.
sssd.log
Файл журнала для мониторинга SSSD и связи его с ответчиком и внутренними процессами.
sssd_ifp.log
Файл журнала для ответчика InfoPipe, который предоставляет общедоступный интерфейс D-Bus, доступный через системную шину.
sssd_nss.log
Файл журнала для ответчика Name Services Switch (NSS), который извлекает информацию о пользователях и группах.
sssd_pac.log
Файл журнала для ответчика Microsoft Privilege Attribute Certificate (PAC), который собирает PAC из билетов AD Kerberos и извлекает информацию о пользователях AD из PAC, что позволяет избежать её запроса непосредственно из AD.
sssd_pam.log
Файл журнала для ответчика Pluggable Authentication Module (PAM).
sssd_ssh.log
Файл журнала для процесса ответчика SSH.

6.12.1.2. Уровни журналирования SSSD

Таблица 6.13. Уровни журналирования SSSD

Уровень
Описание
0, 0x0010
Фатальные ошибки. Ошибки, которые не позволяют запустить службу SSSD или вызывает завершение работы сервиса
1, 0x0020
Критические ошибки. Ошибки, которые не завершают работу службы SSSD, но как минимум одна из основных функций не работает должным образом
2, 0x0040
Серьёзные ошибки. Ошибки, сообщающие о том, что определенный запрос или операция завершились неудачно. Это уровень журналирования по умолчанию
3, 0x0080
Незначительные ошибки. Ошибки, которые могут стать причиной ошибок второго уровня (ошибок при выполнении действий)
4, 0x0100
Настройки конфигурации
5, 0x0200
Данные функций
6, 0x0400
Сообщения трассировки для функций действий
7, 0x1000
Сообщения трассировки для функций внутреннего управления
8, 0x2000
Содержимое переменных внутренних функций
9, 0x4000
Информация трассировки крайне низкого уровня
9, 0x20000
Быстродействие и статистические данные. Из-за способа обработки запросов на внутреннем уровне, записанное в журнал время выполнения запроса может быть больше, чем оно было на самом деле
10, 0x10000
Информация трассировки libldb ещё более низкого уровня. Практически никогда не требуется
Установка уровня журнала также включает все уровни ниже него. Например, установка уровня журнала на 6 также включает уровни с 0 по 5.
Чтобы вести журнал для необходимых уровней журналирования, указанных в представлении битовых масок, следует просто сложить их номера. Например, чтобы вести журнал для фатальных, критических, серьёзных ошибок и для данных функций, следует использовать значение 0x0270.

6.12.1.3. Настройка уровня журналирования для SSSD в файле sssd.conf

Чтобы включить подробное журналирование, сохраняющееся при перезапуске службы SSSD, следует добавить опцию debug_level=<целое_число> в каждую секцию файла /etc/sssd/sssd.conf. Где значение <целое_число> — число от 0 до 10. Уровни до 3 регистрируют крупные сбои, а уровни начиная с 8 и выше предоставляют большое количество подробных сообщений журнала. Уровень 6 является хорошей отправной точкой для отладки проблем
Пример настройки уровня журналирования в файле /etc/sssd/sssd.conf:
[sssd]
debug_level = 6
config_file_version = 2
services = nss, pam

[domain/TEST.ALT]
debug_level = 6
id_provider = ad
…

[nss]
debug_level = 6

[pam]
debug_level = 6
Чтобы загрузить новые параметры конфигурации необходимо перезапустить службу SSSD:
# systemctl restart sssd

6.12.1.4. Настройка уровня журналирования для SSSD с помощью команды sssctl

Изменить уровень журналирования службы SSSD можно с помощью команды sssctl debug-level <целое_число>. Где значение <целое_число> — число от 0 до 10. Уровни до 3 регистрируют крупные сбои, а уровни начиная с 8 и выше предоставляют большое количество подробных сообщений журнала. Уровень 6 является хорошей отправной точкой для отладки проблем.
Просмотр текущего уровня журналирования:
# sssctl debug-level
sssd                      0x0070
nss                       0x0070
pam                       0x0070
pac                       0x0070
domain/TEST.ALT           0x0070
Установка нового уровня журналирования:
# sssctl debug-level 6
# sssctl debug-level
sssd                      0x07f0
nss                       0x07f0
pam                       0x07f0
pac                       0x07f0
domain/TEST.ALT           0x07f0

Примечание

Уровень журналирования, заданный с помощью команды sssctl debug-level будет действовать до перезапуска службы sssd.