Site icon IT Draft

Уведомление об истечении срока действия пароля в FreeIPA

Уведомление об истечении срока действия пароля в FreeIPA 1

FreeIPA expiring password notification

FreeIPA — открытый проект для создания централизованной системы по управлению идентификацией пользователей, задания политик доступа и аудита для сетей на базе Linux и Unix.

Установка утилиты ipa-enp

Для отправки уведомлений об истечении срока действия пароля в FreeIPA используется утилита ipa-enp, расположенная в репозитории Appstream

Устанавливаем пакет

$ sudo dnf -y install ipa-client-epn

Настройка ipa-enp

Отредактируем файл конфигурации epn.conf

$ sudo nano /etc/ipa/epn.conf

В нем задаются параметры подключения к почтовому серверу, а так же за какое количество дней до истечения срока действия пароля отправлять уведомления.
По умолчанию уведомляются отправляются пользователям, срок действия паролей которых истекает через 28, 14, 7, 3 и 1 дней (notify_ttls).

Selectel — ведущий провайдер облачной инфраструктуры и услуг дата-центров

Компания занимает лидирующие позиции на рынке на рынке выделенных серверов и приватных облаков, и входит в топ-3 крупнейших операторов дата-центров в России.


...
notify_ttls = 28, 14, 7, 3, 1
...

Для проверки, авторизуемся в домене и меняем срок действия пароля одного из пользователей

$ kinit admin
$ ipa user-mod m.makarov --setattr=krbPasswordExpiration=20230817011529Z

Запускаем утилиту ipa-epn с параметром dry-run, что бы уведомление не отправилось на email пользователя

$ sudo ipa-epn --dry-run
[
    {
        "uid": "m.makarov",
        "cn": "Максим Андреевич Макаров",
        "givenname": "Максим Андреевич",
        "sn": "Макаров",
        "krbpasswordexpiration": "2023-02-19 01:15:29",
        "mail": "['admin@itdraft.ru']"
    }
]

Дополнительные флаги

Утилиту можно запускать с флагами from-nbdays и to-nbdays чтобы определить, у какого количества пользователей истекает срок действия паролей в заданный промежуток времени.

$ sudo ipa-epn --from-nbdays 0 --to-nbdays 7 --dry-run

Это можно использовать для настройки системы мониторинга

Если запускать утилиту ipa-epn с флагами –from-nbdays и –to-nbdays, она автоматически запускается в тестовом режиме (dry-run)

Флаг –mail-test отправит отправит уведомление на email администратора, который прописан в конфиге /etc/ipa/epn.conf для параметра smtp_admin в /etc/ipa/epn.conf. Это можно использовать, что б не рассылать уведомления пользователям (например, если Вы не задаете почтовые адреса при добавлении пользователей), или для тестирования и настройки почтового шаблона

$ sudo ipa-epn --mail-test

Флаг mail-test не запускается совместно с dry-run, в консоли будет ошибка и ipa-epn не отработает

Почтовый шаблон

Для настройки почтового шаблона отредактируем файл expire_msg.template

$ sudo nano /etc/ipa/epn/expire_msg.template
Hi {{ fullname }},

Your password will expire on {{ expiration }}.

Please change it as soon as possible.

В шаблоне можно использовать следующие переменные:

Сервис ipa-epn.timer

Сервис ipa-epn.timer используется для автоматической рассылки уведомлений об истечении срока действия пароля пользователям. Он анализирует файл epn.conf и отправляет уведомление пользователям, срок действия паролей которых истекает через 28, 14, 7, 3 и 1 дней (параметр notify_ttls)

Запускаем сервис

$ sudo systemctl start ipa-epn.timer

После запуска сервиса ipa-epn.timer, он по умолчанию рассылает уведомления ежедневно в час ночи.

Exit mobile version