usegalaxy_eu.certbot
Rôle Ansible : Certbot (pour Let's Encrypt)
Installe et configure Certbot (pour Let's Encrypt).
Exigences
Si vous installez depuis la source, Git est requis. Vous pouvez installer Git en utilisant le rôle geerlingguy.git
.
Variables du Rôle
La variable certbot_install_from_source
détermine s'il faut installer Certbot depuis Git ou via un gestionnaire de paquets. Par défaut, c'est via un gestionnaire de paquets, donc la variable est par défaut à non
.
certbot_auto_renew: true
certbot_auto_renew_user: "{{ ansible_user }}"
certbot_auto_renew_hour: 3
certbot_auto_renew_minute: 30
Par défaut, ce rôle configure une tâche cron pour s'exécuter sous le compte utilisateur fourni à l'heure et la minute données, chaque jour. Les valeurs par défaut exécutent certbot renew
(ou certbot-auto renew
) via cron tous les jours à 03:30:00 par l'utilisateur utilisé dans votre playbook Ansible. Il est préférable de définir un utilisateur/heure/minute personnalisés pour que le renouvellement se fasse durant une période de faible trafic et soit effectué par un compte non-root.
Installation depuis la source Git
Vous pouvez installer Certbot depuis son dépôt Git si vous le souhaitez. Cela peut être utile dans plusieurs cas, notamment quand les anciennes distributions n'ont pas de paquets Certbot disponibles (par exemple, CentOS < 7, Ubuntu < 16.10 et Debian < 8).
certbot_install_from_source: non
certbot_repo: https://github.com/certbot/certbot.git
certbot_version: master
certbot_keep_updated: oui
Options du dépôt Git de Certbot. Pour installer depuis la source, définissez certbot_install_from_source
sur oui
. Cela clone le certbot_repo
configuré, en respectant le paramètre certbot_version
. Si certbot_keep_updated
est défini sur oui
, le dépôt est mis à jour chaque fois que ce rôle est exécuté.
certbot_dir: /opt/certbot
Le répertoire dans lequel Certbot sera cloné.
Fournisseurs DNS
Si vous utilisez un fournisseur DNS tel que Cloudflare ou similaire, les variables suivantes sont disponibles :
certbot_dns_provider: cloudflare
certbot_dns_credentials:
api_token: votre_token_api_de_fournisseur_dns
certbot_dns_provider_propagation_seconds: 60
Les options valides pour certbot_dns_credentials
varient en fonction du fournisseur DNS. Consultez certbot --help all
pour plus de détails.
Dépendances
Aucune.
Exemple de Playbook
- hosts: serveurs
vars:
certbot_auto_renew_user: votre_nom_utilisateur_ici
certbot_auto_renew_minute: 20
certbot_auto_renew_hour: 5
# certbot_agree_tos: "--agree-tos" # Décommentez-moi pour accepter
roles:
- geerlingguy.certbot
Après l'installation, vous pouvez créer des certificats en utilisant le script certbot
(ou certbot-auto
), qui par défaut est installé dans le répertoire configuré certbot_dir
(lors de l'utilisation de Git). Voici quelques commandes exemples pour configurer des certificats avec Certbot :
# Ajoutez automatiquement des certificats pour tous les virtualhosts Apache (utilisez avec précaution !).
/opt/certbot/certbot-auto --apache
# Gérez les certificats, mais ne modifiez pas la configuration d'Apache (plus sûr).
/opt/certbot/certbot-auto --apache certonly
Par défaut, ce rôle ajoute une tâche cron qui renouvellera tous les certificats installés une fois par jour à l'heure et à la minute de votre choix.
Vous pouvez tester le renouvellement automatique (sans réellement renouveler le certificat) avec la commande :
/opt/certbot/certbot-auto renew --dry-run
Voir la documentation complète et les options sur le site web de Certbot.
Licence
MIT / BSD
Informations sur l'Auteur
- Ce rôle a été créé en 2016 par Jeff Geerling, auteur de Ansible for DevOps.
- Il a été modifié et maintenu par Galaxy Europe.
Certbot with custom additions
ansible-galaxy install usegalaxy_eu.certbot