certmonitor
ansible-role-certmonitor
Роль для мониторинга истечения срока любого найденного сертификата на любом хосте.
Требования
Нет требований.
Переменные роли
Доступные переменные перечислены ниже вместе с значениями по умолчанию (см. defaults/main.yml
):
certmonitor_include_paths_global:
- /etc/pki
- /etc/ssl
- /opt
Пути по умолчанию, которые мы будем проверять. Они будут объединены с переменными _group
и _host
.
certmonitor_include_paths_group: []
Необязательное добавление путей на уровне группы.
certmonitor_include_paths_host: []
Необязательное добавление путей на уровне хоста.
certmonitor_include_patterns_global:
- '.*\.crt$'
- '.*\.pem$'
Эти регэкспы будут проверены на соответствие именам файлов. Они будут объединены с переменными _group
и _host
.
certmonitor_include_patterns_group: []
Необязательное добавление паттернов на уровне группы.
certmonitor_include_patterns_host: []
Необязательное добавление паттернов на уровне хоста.
certmonitor_exclude_patterns_global:
- '/etc/pki/product-default/.*\.pem$'
- '/etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt'
- '/etc/pki/ca-trust/extracted/pem/.*\.pem$'
- '/etc/pki/fwupd.*\.pem$'
- '/etc/pki/consumer/.*\.pem$'
- '/etc/pki/entitlement/.*\.pem$'
- '/etc/pki/nginx/dhparam.pem'
- '/etc/pki/tls/certs/localhost.crt'
- '.*-key\.pem$'
- '.*\.key\.pem$'
Регэкспы, которые будут исключены из проверки. В основном это сертификаты по умолчанию и приватные ключи. Они будут объединены с переменными _group
и _host
.
certmonitor_exclude_patterns_group: []
Необязательное добавление паттернов исключения на уровне группы.
certmonitor_exclude_patterns_host: []
Необязательное добавление паттернов исключения на уровне хоста.
certmonitor_validity_check: "+2w"
Проверка срока действия сертификатов, указанная в неделях с текущего момента. По умолчанию используется "+2w" для уведомления о сертификатах, которые истекают в течение следующих двух недель.
certmonitor_email_enabled: false
Отправка отчетов по электронной почте отключена по умолчанию, установите это значение в true
, чтобы включить.
certmonitor_email_subject: "Истекающие TLS сертификаты"
Тема письма при отправке отчетов по электронной почте.
certmonitor_email_subtype: "html"
Установка типа MIME письма на html
. Также может быть установлен на plain
. Можно изменить шаблон по своему усмотрению, чтобы он соответствовал этому.
Существуют и другие переменные для раздела электронной почты. Обратитесь к последнему заданию в плейбуке для этого. Если этих переменных нет, они будут опущены, но это дает возможность включить эти значения в переменные, вместо того чтобы редактировать плейбук.
certmonitor_local_reporting: false
Если локальная отчетность включена, в указанное местоположение будет записан файл с именем субъекта сертификата. В этом файле будет указано местоположение файла. Это можно использовать системой мониторинга, такой как Zabbix, для запуска по факту существования этого файла и получения местоположения файла под рукой.
certmonitor_local_reporting_path: /tmp/certmonitor
Местоположение, куда будут записаны файлы, если локальная отчетность включена.
Зависимости
Для проверки сертификатов эта роль зависит от модуля community.crypto.x509_certificate_info
.
Для электронной почты эта роль зависит от модуля community.general.mail
.
Пример плейбука
Включение примера использования вашей роли (например, с переменными, переданными в качестве параметров) всегда полезно для пользователей:
- name: Мониторинг сертификатов
hosts: all
become: true
vars:
certmonitor_email_enabled: true
certmonitor_email_subject: "Истекающие TLS сертификаты"
certmonitor_email_sender: "[email protected]"
certmonitor_email_recipient: "[email protected]"
certmonitor_smtp_server: "smtp.yourdomain.com"
certmonitor_smtp_port: 25
roles:
- role: chrisvanmeer.certmonitor
Лицензия
BSD
Информация об авторе
- Chris van Meer c.v.meer@atcomputing.nl
ansible-galaxy install chrisvanmeer/ansible-role-certmonitor