Créer un certificat Let's Encrypt avec Certbot et un challenge DNS
Afin de créer un certificat, Let's Encrypt propose de vérifier votre domaine par l'échange d'une information secrète.
Par défaut, cet échange est fait par HTTP, mais il peut être fait par DNS, et DNS est imposé pour la création d'un certificat wildcard (certificat pour tous les sous domaines d'un domaine).
Pour utiliser le challenge DNS entre Let's Encrypt et les serveurs DNS de LeBureau.coop, vous devez obtenir une clef TSIG en la demandant à notre support.
Sur votre serveur, vous devez alors installer le plugin dns_rfc2136 pour certbot et créer le fichier de configuration suivant à partir des informations de clef reçues :
# Serveur DNS (adresse IPv4 ou IPv6, pas un nom d'hôte)
# décommentez une des 4 lignes
#dns_rfc2136_server = 2a01:e34:ec4d:a570::2
#dns_rfc2136_server = 2a0e:e701:1010::1
#dns_rfc2136_server = 45.13.107.8
#dns_rfc2136_server = 78.196.218.87
# Port DNS cible
dns_rfc2136_port = 53
# nom de la clef TSIG
dns_rfc2136_name = lebureau_coop_example_com
# le secret de la clef TSIG
dns_rfc2136_secret = 4q4wM/2I180UXoMyN4INVhJNi8V9BCV+jMw2mXgZw/CSuxUT8C7NKKFs AmKd7ak51vWKgSl12ib86oQRPkpDjg==
# l'algorithme de la clef TSIG
dns_rfc2136_algorithm = HMAC-SHA512
Enfin, lancez certbot en activant le plugin et en utilisant le fichier créé ci dessus :
certbot certonly \
--dns-rfc2136 \
--dns-rfc2136-credentials ~/.secrets/certbot/lebureau_coop_example_com.ini \
-d example.com
Vos certificats devraient alors se trouver dans /etc/letsencrypt/live/example.com/