simoncaron.pve_acme
Ansible Rolle: Proxmox VE Acme Konfiguration
Eine Ansible Rolle, die das acme-Plugin und Zertifikate für einen Proxmox VE Knoten konfiguriert.
Diese Rolle wurde auf Proxmox VE 7.2 getestet.
Anforderungen
Diese Rolle benötigt pexpect
, um die verschiedenen CLI-Eingabeaufforderungen zu konfigurieren. Sollte das Modul auf dem Host fehlen, installiert eine Vorgängertask es zusammen mit dem Paket python3-pip
.
Rollenvariablen
Verfügbare Variablen sind unten aufgeführt, zusammen mit Standardwerten (siehe defaults/main.yml
):
pve_acme_domain: ""
pve_acme_account_name: default
pve_acme_account_email: ""
pve_acme_account_directory: "https://acme-v02.api.letsencrypt.org/directory"
pve_acme_validation_delay: "30"
pve_acme_plugin_name: ""
pve_acme_plugin_api: ""
pve_acme_plugin_data: ""
Der Wert der Variable pve_acme_domain
sollte der FQDN des Knotens sein (z.B. pve.beispiel.com
). Die nächsten drei Variablen dienen zur Konfiguration des Acme-Kontos, das zur Anforderung von Zertifikaten verwendet wird. Der Wert von pve_acme_account_name
sollte möglichst auf default bleiben, da dies das Konto ist, das standardmäßig für die Bestellung von Zertifikaten verwendet wird. Der Wert von pve_acme_account_email
sollte die E-Mail-Adresse sein, die LetsEncrypt-Benachrichtigungen erhält. Der letzte Schlüssel, pve_acme_account_directory
, sollte entweder https://acme-v02.api.letsencrypt.org/directory
(für Produktionszertifikate) oder https://acme-staging-v02.api.letsencrypt.org/directory
(für Testzertifikate) sein.
Der pve_acme_validation_delay
gibt die zusätzliche Verzögerung in Sekunden an, die vor der Anforderung der Validierung gewartet werden soll. Damit kann man lange TTLs von DNS-Einträgen umgehen.
Die letzten drei Variablen konfigurieren das Plugin, das zur Validierung von Domains verwendet wird. pve_acme_plugin_name
legt den Namen fest, der im Proxmox VE UI für das Plugin angezeigt wird. Der Schlüssel pve_acme_plugin_api
sollte auf einen der von Proxmox unterstützten API-Plugin-Namen gesetzt werden. (Siehe hier unter ACME Plugin-ID-Namen für eine vollständige Liste verfügbarer Plugins.) Schließlich sollte pve_acme_plugin_data
die Konfigurationswerte für die ausgewählte Plugin-API enthalten. (Zum Beispiel, für eine Cloudflare-Token-Konfiguration sollte der Wert CF_Token=cloudflare_token enthalten sein). Überprüfen Sie die Proxmox UI für eine Liste der Konfigurationsschlüssel für jeden Anbieter.
Abhängigkeiten
Keine.
Beispiel-Playbook
- hosts: localhost
vars:
pve_acme_domain: "pve.beispiel.com"
pve_acme_account_email: "[email protected]"
pve_acme_plugin_name: "cloudflare"
pve_acme_plugin_api: "cf"
pve_acme_plugin_data: |
CF_Token=123456abcde
roles:
- simoncaron.pve_acme
Lizenz
MIT
Autoreninformation
Diese Rolle wurde 2022 von Simon Caron erstellt.
A role to configure acme certificates on PVE node
ansible-galaxy install simoncaron.pve_acme