bendews.letsencrypt-cloudflare

Statut de Construction

LetsEncrypt-Cloudflare

Ce rôle simplifie le processus de renouvellement des certificats LetsEncrypt lors de l'utilisation de Cloudflare en tant que fournisseur DNS.

Exigences

  • Python >= 2.6
  • OpenSSL (sera automatiquement installé si supporté)

Variables du Rôle

Les variables disponibles sont listées ci-dessous, avec leurs valeurs par défaut (voir defaults/main.yml pour beaucoup d'autres variables qui peuvent être modifiées)

Champs Obligatoires:

letsencrypt_email: ""
cloudflare_email: ""
cloudflare_api_key: "" # clé API 'Globale' pour le compte Cloudflare spécifié
cloudflare_domain: "" # Zone DNS hébergée par Cloudflare pour les entrées à créer

Notes Importantes:

Par défaut, le rôle utilisera le nom d'hôte de l'inventaire comme Nom Commun pour demander un certificat, et placera tous les fichiers de certificats générés/reçus dans /etc/ssl/[Nom Commun du Certificat], et tous les fichiers de compte LetsEncrypt dans /etc/ssl/lets_encrypt. Ces chemins peuvent tous être remplacés (voir defaults/main.yml).

De plus, les fichiers de certificat peuvent également être copiés et renommés vers un autre emplacement après leur génération, en modifiant l'une des variables suivantes :

copy_csr_full_path: ""
copy_crt_full_path: ""
copy_key_full_path: ""
copy_intermediate_full_path: "" # Nécessite que include_intermediate soit réglé sur 'yes'
copy_fullchain_full_path: "" # Nécessite que include_intermediate soit réglé sur 'yes'

Le rôle utilise également par défaut les points de terminaison "staging" de letsencrypt, qui généreront des certificats fonctionnellement corrects mais non approuvés. Pour générer des certificats valides, réglez :

letsencrypt_production: yes

Les fichiers générés peuvent être supprimés après utilisation en spécifiant la variable suivante :

cleanup_all: yes

Exemples de Playbook

- hosts: serveurs
  tasks:
    - name: Renouveler/Télécharger de nouveaux certificats SSL
      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

À FAIRE:

  • Ajouter le support pour plusieurs CN's

Licence

MIT

Informations sur l'Auteur

Créé en 2017 par Ben Dews

À propos du projet

LetsEncrypt renewal using Cloudflare DNS

Installer
ansible-galaxy install bendews.letsencrypt-cloudflare
Licence
mit
Téléchargements
4.5k
Propriétaire
Engineer with a passion for network & infrastructure automation