joyent.triton_dehydrated

triton-dehydrated

Ein Ansible-Playbook zur Installation und Konfiguration von triton-dehydrated zur Generierung von Let's Encrypt Zertifikaten.

Anforderungen

Dieses Playbook funktioniert nur auf virtuellen Instanzen, die in Triton erstellt wurden. Jedes von Joyent bereitgestellte Image sollte in Ordnung sein.

Das Triton-Rechenzentrum muss CNS konfiguriert haben und global auflösbar sein.

Das triton-ansible-inventory Modul kann ebenfalls hilfreich sein, ist aber nicht erforderlich.

Rollenvariablen

Diese Rolle benötigt ein letsencrypt-Objekt, das die folgenden Eigenschaften unterstützt. Alle Eigenschaften können weggelassen werden, und ein geeigneter Standard wird verwendet. Mindestens eine von domains, suffix_domains, ecesa_domains, ecdsa_suffix_domains muss angegeben werden, damit Zertifikate ausgestellt werden. Andernfalls wird dehydrated zwar installiert und konfiguriert, aber sofort beendet.

  • ca: Muss $prod_ca oder $staging_ca oder eine gültige Let's Encrypt CA-URL sein. Standardmäßig auf $staging_ca. Lass dies während der Entwicklung auf $staging_ca, damit du die Ratenbegrenzung nicht erreichst. Ändere es auf $prod_ca, wenn du bereit bist, in die Produktion zu gehen.
  • certdir: Verzeichnis, in dem die Zertifikate ausgegeben werden. Standardmäßig auf /opt/ssl.
  • contact: E-Mail-Adresse des Let's Encrypt-Kontos.
  • domains: Array von RSA-Zertifikaten, die ausgestellt werden sollen. Jedes Element wird ein ausgestelltes Zertifikat sein. Zusätzliche SAN-Namen sind durch Leerzeichen getrennt.
  • ecdsa_domains: Array von ECDSA-Zertifikaten, die ausgestellt werden sollen. Ansonsten gleich wie domains.
  • ecdsa_suffix_domains: Array von Domain-Suffixen für ECDSA-Zertifikate. Das heißt, der Hostname wird jedem Namen vorangestellt und ein Zertifikat generiert.
  • owner: UNIX-Dateibesitz. Standardmäßig auf root:root. Dies wird an chown übergeben.
  • restart_services: Array von Diensten, die neu gestartet werden.
  • suffix_domains: Array von Domain-Suffixen für RSA-Zertifikate. Das heißt, der Hostname wird jedem Namen vorangestellt und ein Zertifikat generiert.
  • well_known: Let's Encrypt WELLKNOWN-Verzeichnis. Standardmäßig auf /var/www/dehydrated.

Zusätzlich gibt es die oberen Variablen triton_dehydrated_version und triton_dehydrated_download_url, die bei Bedarf überschrieben werden können.

Abhängigkeiten

Dieses Playbook sollte auf jedem von Joyent veröffentlichten Image funktionieren und auf Triton mit konfigurierten CNS-Namen, die global auflösbar sind.

Beispiel-Playbook

- 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

Lizenz

MPL-2.0. Siehe LICENSE.txt in diesem Repository.

Autoreninformation

Copyright 2021 Joyent, Inc.

Installieren
ansible-galaxy install joyent.triton_dehydrated
GitHub Repository
Lizenz
mpl-2.0
Downloads
111
Besitzer