Введение
FreeIPA Health Check – утилита для диагностики работоспособности сервера FreeIPA.
Её основное назначение – автоматическая проверка корректности настроек, безопасности, доступности репликации и работы сервисов FreeIPA.
Программа предназначена для администраторов, требующих быстрой диагностики и своевременного обнаружения неисправностей.
Цели использования:
Обеспечение устойчивости работы серверов FreeIPA.
Выявление потенциальных ошибок в настройке.
Контроль состояния репликации и конфигурации Kerberos.
Своевременное оповещение о сбоях и нарушениях в системе.
Описание стенда
Запуск утилиты производится на настроенном контроллере ЕПП FreeIPA. Порядок установки см. в статье:
Никаких настроек более не требуется.
Установка пакета
Пакет freeipa-healthcheck входит в репозитории Astra Linux. Установить необходимый пакет можно используя Графический менеджер пакетов synaptic, или из командной строки:
sudo apt install freeipa-healthcheck
После установки будут созданы конфигурационный файл /etc/ipahealthcheck/ipahealthcheck.conf и служба ipa-healthcheck.service в systemd.
Настройка. Конфигурация и интеграция
Файл конфигурации разделён как минимум на два раздела:
- Раздел [default]. В этом разделе задаются значения параметров, влияющих на работу инструмента проверки состояния (healthcheck).
- Раздел [excludes]. Этот раздел используется для фильтрации или подавления определённых результатов по имени источника, имени проверки или конкретному ключу результата. Это особенно полезно для игнорирования известных незначительных проблем в окружении.
Рассмотрим некоторые параметры из этих разделов.
Параметры в разделе [default]:
- cert_expiration_days
Указывает порог в днях до истечения срока действия сертификата, после которого сертификат начнёт выдавать предупреждение.
Значение по умолчанию: 28
2. timeout
Назначение:
Определяет, сколько секунд даётся на выполнение каждой проверки, прежде чем она будет считаться превышающей время и, соответственно, сообщена как ошибка.Значение по умолчанию:
10 секунд.Применение:
Этот параметр можно увеличить, если система работает медленно или определённые проверки требуют больше времени (например, timeout = 20).
3. Опции вывода и логирования
Хотя эти опции могут не быть показаны в базовых примерах конфигурации (и могут варьироваться в зависимости от версии или дистрибутива), многие параметры, доступные через командную строку, можно также задать в файле конфигурации. Они включают:
output_type:
Определяет формат вывода. Возможные значения:json (машиночитаемый формат, по умолчанию)
human (удобочитаемый формат для пользователей)
prometheus (формат для экспозиции метрик Prometheus)
output_file:
Задаёт файл, в который будет записываться вывод вместо стандартного вывода (stdout).indent:
При использовании JSON-вывода этот параметр задаёт уровень отступов для красивого форматирования.verbose / debug:
Активируют дополнительные сообщения логирования или отладки.
Замечание: При автоматическом запуске (например, через systemd) эти опции могут быть нежелательны, так как порождают большое количество дополнительного вывода.
Параметры в разделе [excludes]:
source:
Фильтрует результаты, поступающие из определённого источника (например,ipahealthcheck.ipa.certs).check:
Позволяет подавлять конкретные имена проверок (например,IPADNSSystemRecordsCheck).key:
Фильтрует результаты по конкретному ключу (обычно это уникальный идентификатор, например, ID запроса на сертификат).