letsencrypt-cloudflare
LetsEncrypt-Cloudflare
Эта роль упрощает процесс обновления сертификатов LetsEncrypt при использовании Cloudflare в качестве DNS-поставщика.
Требования
- Python >= 2.6
- OpenSSL (будет автоматически установлен, если поддерживается)
Переменные роли
Доступные переменные перечислены ниже с указанными значениями по умолчанию (см. defaults/main.yml
для более многих переменных, которые можно изменить)
Обязательные поля:
letsencrypt_email: ""
cloudflare_email: ""
cloudflare_api_key: "" # 'Глобальный' API-ключ для указанной учетной записи Cloudflare
cloudflare_domain: "" # DNS-зона, размещенная в Cloudflare, под которой будут созданы записи
Важные замечания:
По умолчанию роль будет использовать имя хоста из инвентаризации в качестве Общего имени для запроса сертификата и поместит все сгенерированные/полученные файлы сертификатов в /etc/ssl/[Общее Имя Сертификата]
, а все файлы учетной записи LetsEncrypt в /etc/ssl/lets_encrypt
. Эти пути можно переопределить (см. defaults/main.yml
).
Более того, файлы сертификатов также могут быть скопированы и переименованы в другое место после генерации, изменив любые из следующих переменных:
copy_csr_full_path: ""
copy_crt_full_path: ""
copy_key_full_path: ""
copy_intermediate_full_path: "" # Требуется, чтобы include_intermediate был установлен на 'yes'
copy_fullchain_full_path: "" # Требуется, чтобы include_intermediate был установлен на 'yes'
Роль по умолчанию использует "стадионные" конечные точки letsencrypt, которые генерируют функционально правильные, но недоверенные сертификаты. Для генерации действительных сертификатов установите:
letsencrypt_production: yes
Сгенерированные файлы можно удалить после использования, указав следующую переменную:
cleanup_all: yes
Пример плейбука
- hosts: servers
tasks:
- name: Обновить/Скачать новые SSL-сертификаты
include_role:
name: letsencrypt-cloudflare
vars:
letsencrypt_email: "[email protected]"
cloudflare_email: "[email protected]"
cloudflare_domain: "abc.com"
cloudflare_api_key: "AAABBBCCCDDDEEE111222333"
letsencrypt_production: yes
include_intermediate: yes
Планы на будущее:
- Добавить поддержку нескольких Общих Имён
Лицензия
MIT
Информация об авторе
Создано в 2017 году Беном Дьюсом
ansible-galaxy install bendews/ansible-letsencrypt-cloudflare