joyent.triton_dehydrated

triton-dehydrated

一个 Ansible 剧本,用于安装和配置 triton-dehydrated 以生成 Let's Encrypt 证书。

需求

此剧本仅适用于在 Triton 中创建的虚拟实例。任何 Joyent 提供的镜像都可以正常工作。

Triton 数据中心必须配置 CNS,并且必须可以全局解析。

triton-ansible-inventory 模块可能会有帮助,但不是必需的。

角色变量

此角色需要一个 letsencrypt 对象,支持以下属性。可以省略任何属性,将使用适当的默认值。必须提供 domainssuffix_domainsecesa_domainsecdsa_suffix_domains 中的至少一个,以便签发证书。如果没有提供,将仍然安装和配置 dehydrated,但会立即退出。

  • ca: 必须是 $prod_ca$staging_ca,或有效的 Let's Encrypt CA URL。默认为 $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: Let's Encrypt 的 WELLKNOWN 目录。默认为 /var/www/dehydrated

另外,还可以覆盖顶级变量 triton_dehydrated_versiontriton_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。

作者信息

版权 © 2021 Joyent, Inc.

安装
ansible-galaxy install joyent.triton_dehydrated
许可证
mpl-2.0
下载
111
拥有者