L-P.acmetool
ansible-role-acmetool
Instalar, configurar y ejecutar acmetool
para generar certificados TLS de Let's Encrypt.
acmetool
se configurará para usar su modo redirector
. Escuchará en
el puerto 80 y redirigirá (HTTP 308) cualquier
cosa que no sea una solicitud de desafío.
Consulta acme en GitHub para más detalles.
Requisitos
become: true
es necesario ya que la mayoría de las acciones deben ejecutarse como root; el resto se ejecuta bajoacme
, que será creado por el rol.Debes abrir el puerto 80/TCP para que
acmetool
pueda servir los desafíos.Como se usa el modo
redirector
por defecto, no se requiere un servidor HTTP para funcionar. Puedes instalar el servidor que desees ejecutar después de ejecutar este rol para que pueda usar los certificados generados.Elige tu proveedor y establece su punto final API en
acmetool_server
, consulta más abajo.El paquete
cron
es necesario para la renovación automática.
Variables del Rol
Requeridas
# Dirección utilizada para registrar dominios con LetsEncrypt.
acmetool_email: "[email protected]"
# lista de dominios a registrar separados por espacio.
acmetool_domains: "www.ejemplo.com ejemplo.com"
Otras
# Servidor CA. Esto se establece de forma predeterminada en el servidor acme-staging para fines de prueba.
# Necesitarás cambiar esto al servidor de producción:
# https://acme-v01.api.letsencrypt.org/directory
acmetool_server: "https://acme.ejemplo.com/directory"
# Cambia esto a RSA si tu servidor no soporta claves EC (por ejemplo, murmur).
acmetool_key_type: "ecdsa"
# Si no confías en que acmetool ejecute hooks como root (sudo), establece esto en falso.
acmetool_enable_hooks: false
Consulta los valores predeterminados para la lista completa.
Ejemplo de Playbook
- hosts: all
roles:
- { role: "L-P.acmetool", become: true }
Debido a que en Debian los servicios se habilitan y se inician automáticamente con su
configuración predeterminada al ser instalados, nginx fallará al instalarse y dejará
dpkg en un estado semi-roto.
Para evitar esto, puedes ejecutar el siguiente play entre la instalación de
acmetool y nginx. Solo se ejecutará si nginx no está aún configurado.
- hosts: all
become: true
tasks:
- name: Detener acmetool
tags: "nginx"
command: "service acmetool stop"
args:
creates: "/etc/nginx/nginx.conf"
Puedes adaptar esto para cualquier otro servicio que falle de la misma manera.
Licencia
MIT
Install acmetool on Ubuntu 16.04
ansible-galaxy install L-P.acmetool