L-P.acmetool

ansible-role-acmetool

Installer, configurer et exécuter acmetool pour générer des certificats TLS Let's Encrypt.

acmetool sera configuré pour utiliser son mode redirector. Il écoutera sur le port 80 et redirigera (HTTP 308) tout ce qui n'est pas une demande de défi.

Consultez acme sur GitHub pour plus de détails.

Exigences

  • become: true est requis car la plupart des actions doivent être exécutées en tant que root, le reste sera exécuté sous acme qui sera créé par le rôle.

  • Vous devez ouvrir le port 80/TCP pour que acmetool puisse servir des défis.

  • Comme le mode redirector est utilisé par défaut, aucun serveur HTTP n'est nécessaire pour fonctionner. Vous pouvez installer le serveur de votre choix après avoir exécuté ce rôle afin qu'il puisse utiliser les certificats générés.

  • Choisissez votre fournisseur et définissez son point d'accès API dans acmetool_server, voir ci-dessous.

  • Le package cron est requis pour le renouvellement automatique.

Variables de rôle

Requis

# Adresse utilisée pour enregistrer des domaines auprès de LetsEncrypt.
acmetool_email: "[email protected]"
# liste d'espaces des domaines à enregistrer.
acmetool_domains: "www.example.com example.com"

Autres

# Serveur CA. Cela utilise par défaut le serveur acme-staging à des fins de test.
# Vous devez le changer pour le serveur de production :
# https://acme-v01.api.letsencrypt.org/directory
acmetool_server: "https://acme.example.com/directory"

# Changez ceci en RSA si votre serveur ne prend pas en charge les clés EC (ex. murmur).
acmetool_key_type: "ecdsa"

# Si vous ne faites pas confiance à acmetool pour exécuter des hooks en tant que root (sudo), définissez ceci sur false.
acmetool_enable_hooks: false

Voir les paramètres par défaut pour la liste complète.

Exemple de Playbook

- hosts: all
  roles:
    - { role: "L-P.acmetool", become: true }

Parce que sur Debian, les services sont automatiquement activés et démarrés avec leur configuration par défaut lors de leur installation, nginx échouera à s'installer et laissera dpkg dans un état semi-cassé.
Pour éviter cela, vous pouvez exécuter le play suivant entre l'installation de acmetool et nginx. Il ne s'exécutera que si nginx n'est pas encore configuré.

- hosts: all
    become: true
    tasks:
    - name: Arrêter acmetool
      tags: "nginx"
      command: "service acmetool stop"
      args:
        creates: "/etc/nginx/nginx.conf"

Vous pouvez adapter cela pour tout autre service qui échoue de la même manière.

Licence

MIT

À propos du projet

Install acmetool on Ubuntu 16.04

Installer
ansible-galaxy install L-P.acmetool
Licence
mit
Téléchargements
355
Propriétaire