triton_dehydrated
triton-dehydrated
Ansible плейбук для установки и настройки triton-dehydrated для генерации сертификатов Let's Encrypt.
Требования
Этот плейбук будет работать только на виртуальных инстансах, созданных в Triton. Любое изображение, предоставленное Joyent, должно работать.
Датацентр Triton должен иметь настроенный CNS и быть доступен глобально.
Модуль triton-ansible-inventory также может оказаться полезным, но не является обязательным.
Переменные Роли
Эта роль требует объект letsencrypt
, который поддерживает следующие
свойства. Любые свойства могут быть опущены, и будет использоваться подходящее значение по умолчанию.
По крайней мере, одно из свойств domains
, suffix_domains
, ecesa_domains
,
ecdsa_suffix_domains
должно быть указано для выдачи сертификатов. Если нет,
dehydrated будет установлен и настроен для работы, но он завершит работу
немедленно.
ca
: Должен быть$prod_ca
или$staging_ca
, или допустимый URL CA Let's Encrypt. Значение по умолчанию —$staging_ca
. Оставьте это значение$staging_ca
во время разработки, чтобы не превысить лимит запросов. Измените на$prod_ca
, когда будете готовы к развертыванию в продакшн.certdir
: Директория, в которую будут выводиться сертификаты. Значение по умолчанию —/opt/ssl
.contact
: Электронный адрес аккаунта Let's Encrypt.domains
: Массив RSA сертификатов для выдачи. Каждый элемент будет выданным сертификатом. Дополнительные имена SAN разделяются пробелами.ecdsa_domains
: Массив ECDSA сертификатов для выдачи. В противном случае — так же, какdomains
.ecdsa_suffix_domains
: Массив суффиксов доменов для ECDSA сертификатов. То есть, имя хоста будет добавлено к каждому имени, и сертификат будет сгенерирован.owner
: Владение файлами UNIX. Значение по умолчанию —root:root
. Это значение передается вchown
.restart_services
: Массив сервисов, которые будут перезапущены.suffix_domains
: Массив суффиксов доменов для RSA сертификатов. То есть, имя хоста будет добавлено к каждому имени, и сертификат будет сгенерирован.well_known
: ДиректорияWELLKNOWN
Let's Encrypt. Значение по умолчанию —/var/www/dehydrated
.
Дополнительно есть переменные верхнего уровня triton_dehydrated_version
и
triton_dehydrated_download_url
, которые могут быть переопределены в случае необходимости.
Зависимости
Этот плейбук должен работать на любом изображении, опубликованном Joyent и работающем на Triton с настроенными именами CNS для глобального разрешения.
Пример Плейбука
- hosts: servers
roles:
- role: joyent.triton-dehydrated
vars:
letsencrypt:
ca: "$prod_ca"
contact: "[email protected]"
domains:
- www.example.com api.backend.example.com
restart_services:
- nginx
Лицензия
MPL-2.0. См. LICENSE.txt в этом репозитории.
Информация об Авторе
Copyright 2021 Joyent, Inc.
Generate Let's Encrypt Certificates with triton-dehydrated
ansible-galaxy install joyent/ansible-triton-dehydrated