simoncaron.pve_acme
Rol de Ansible: Configuración de Acme para Proxmox VE
Un rol de Ansible que configura el plugin acme y los certificados para un nodo Proxmox VE.
Este rol fue probado en Proxmox VE 7.2.
Requisitos
Este rol requiere pexpect
para configurar los diferentes mensajes del CLI. Si el módulo no está instalado en el host, una tarea previa lo instalará junto con el paquete python3-pip
.
Variables del Rol
Las variables disponibles se enumeran a continuación, junto con sus valores predeterminados (ver 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: ""
El valor de la variable pve_acme_domain
debe ser el FQDN del nodo (ej: pve.ejemplo.com
). Las siguientes tres variables permiten configurar la cuenta Acme utilizada para solicitar certificados. Se recomienda dejar pve_acme_account_name
en su valor predeterminado, ya que esta es la cuenta que se utilizará para solicitar certificados. El valor de pve_acme_account_email
debe ser el correo electrónico que recibirá las notificaciones de Let's Encrypt. La última clave, pve_acme_account_directory
, debe ser bien https://acme-v02.api.letsencrypt.org/directory
(para certificados de producción) o https://acme-staging-v02.api.letsencrypt.org/directory
(para certificados de prueba).
El pve_acme_validation_delay
representa el tiempo de espera extra en segundos antes de solicitar la validación. Esto se hace para manejar un alto TTL de registros DNS.
Las últimas tres variables configuran el plugin que se utilizará para validar los dominios. pve_acme_plugin_name
establece el nombre que se mostrará para el plugin en la interfaz de Proxmox VE. La clave pve_acme_plugin_api
debe establecerse en uno de los nombres de plugin api soportados por Proxmox. (Consulte aquí Nombre de ID del Plugin ACME para una lista completa de plugins disponibles). Finalmente, pve_acme_plugin_data
debe contener los valores de configuración para el plugin api seleccionado. (por ejemplo, para la configuración de un token de Cloudflare, debe contener el valor CF_Token=token_cloudflare). Consulte la interfaz de Proxmox para una lista de claves de configuración para cada proveedor.
Dependencias
Ninguna.
Ejemplo de Playbook
- hosts: localhost
vars:
pve_acme_domain: "pve.ejemplo.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
Licencia
MIT
Información del Autor
Este rol fue creado en 2022 por Simon Caron.
A role to configure acme certificates on PVE node
ansible-galaxy install simoncaron.pve_acme