Certificats gratuits avec Let’s Encrypt

Jusqu’à récemment pour faire du https proprement, il fallait payer une autorité de certification. Ça ralentissait la transition vers un Web sécurisé par défaut, sans compter les procédures de renouvellement souvent manuelles… Heureusement, les gens de Let’s Encrypt proposent désormais une nouvelle option.

Voici un tutoriel pour mettre en place des certificats Let’s Encrypt sur un système Debian.

Installation

Je pars du principe qu’Apache est installé sur ce système. Si ce n’est pas le cas, vous pouvez voir ce tutoriel.

On installe les paquets nécessaires :

# apt install certbot python3-certbot-apache

Le renouvellement automatique est activé par défaut :

# systemctl list-timers certbot.timer

Gérer un certificat pour un domaine

Le VirtualHost correspondant à un domaine n’a pas besoin d’être activé dans Apache, donc il est possible de préparer un certificat pour un site qui n’est pas encore en ligne.

Pour créer un certificat :

certbot certonly --apache --rsa-key-size 4096 -d domain.tld
chmod -R g-w,o-rwx /etc/letsencrypt/archive/

Let’s Encryt vérifie que l’IP qui demande un certificat pour un domaine est bien renseignée dans les DNS de ce domaine, et pour ça ils ont besoin d’interagir avec votre serveur. On dit à certbot d’utiliser Apache cette vérification (avec l’option --apache), puisque votre configuration réseau accepte déjà les connexions extérieures vers Apache. Les renouvellements automatiques pour ce domaine l’utiliseront également, on peut le vérifier en regardant le fichier /etc/letsencrypt/renewal/domain.tld.conf, qui devrait contenir les lignes suivantes :

installer = apache
authenticator = apache

Pour lister les certificats actifs sur un système :

certbot certificates |most

Pour supprimer un certificat :

certbot delete

Laisser un commentaire