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.

Установить
ansible-galaxy install joyent/ansible-triton-dehydrated
Лицензия
mpl-2.0
Загрузки
96
Владелец