bendews.letsencrypt-cloudflare
LetsEncrypt-Cloudflare
Diese Rolle vereinfacht den Prozess der Erneuerung von LetsEncrypt-Zertifikaten, wenn Cloudflare als DNS-Anbieter verwendet wird.
Anforderungen
- Python >= 2.6
- OpenSSL (wird automatisch installiert, wenn unterstützt)
Rollenvariablen
Verfügbare Variablen sind unten aufgeführt, zusammen mit Standardwerten (siehe defaults/main.yml
für viele weitere veränderbare Variablen)
Erforderliche Felder:
letsencrypt_email: ""
cloudflare_email: ""
cloudflare_api_key: "" # 'Globaler' API-Schlüssel für das angegebene Cloudflare-Konto
cloudflare_domain: "" # Cloudflare gehostete DNS-Zone für die Einträge, die erstellt werden sollen
Wichtige Hinweise:
Standardmäßig verwendet die Rolle den Inventar-Hostnamen als den allgemeinen Namen für die Anforderung eines Zertifikats und legt alle generierten/empfangenen Zertifikatsdateien in /etc/ssl/[Zertifikat allgemeiner Name]
und alle LetsEncrypt-Kontodateien in /etc/ssl/lets_encrypt
ab. Diese Pfade können alle überschrieben werden (siehe defaults/main.yml
).
Darüber hinaus können die Zertifikatsdateien nach der Erstellung auch an einen anderen Ort kopiert und umbenannt werden, indem beliebige der folgenden Variablen geändert werden:
copy_csr_full_path: ""
copy_crt_full_path: ""
copy_key_full_path: ""
copy_intermediate_full_path: "" # Erfordert include_intermediate, auf 'yes' gesetzt
copy_fullchain_full_path: "" # Erfordert include_intermediate, auf 'yes' gesetzt
Die Rolle verwendet auch standardmäßig die "staging"-Letsencrypt-Endpunkte, die funktional korrekte, jedoch nicht vertrauenswürdige Zertifikate erzeugen. Um gültige Zertifikate zu erstellen, setzen Sie:
letsencrypt_production: yes
Generierte Dateien können nach Gebrauch entfernt werden, indem die folgende Variable angegeben wird:
cleanup_all: yes
Beispiel Playbook
- hosts: servers
tasks:
- name: SSL-Zertifikate erneuern/herunterladen
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
TODO:
- Unterstützung für mehrere CNs hinzufügen
Lizenz
MIT
Autoreninformation
Erstellt 2017 von Ben Dews
ansible-galaxy install bendews.letsencrypt-cloudflare