Let's encrypt / nginx / ubuntu
-
Salouté,
Voici la solution la plus simple pour utiliser un certificat TLS de Let’s encrypt et se débarrasser de vos certificats auto-signés!
La sécurité est de plus en plus primordiale et utiliser des certificats auto-signés à forcément des désavantages. Vous gardez complètement le contrôle de votre clé privée en passant par Let’s Encrypt pour créer votre certificat.Dans ce tutoriel, j’utilise le serveur web nginx sur un serveur ubuntu.
- Vérification DNS
Il faut tout d’abord commencer par la propagation des vos DNS qui doivent être comme ceci chez votre registar.
@ 18000 IN A xxx.xxx.xxx.xxxx exemple.fr 18000 IN A xxx.xxx.xxx.xxxx www 18000 IN A xxx.xxx.xxx.xxxx
- Installation de let’s encryt
Il vous faut ajouter le ppa et mettre à jour.
sudo add-apt-repository ppa:certbot/certbot && sudo apt-get update
Ensuite vous lancez l’installation de cerbot qui est un logiciel de let’s encrypt
sudo apt-get install python-certbot-nginx
- Configuration de nginx
Vous aller compléter le nom de votre domaine :
nano /etc/nginx/sites-available/default
A la ligne :
server_name _;
Vous ajoutez :
exemple.fr www.exemple.fr
Ce qui donne :
server_name exemple.fr www.exemple.fr;
Vous vérifier la syntaxe de votre fichier de configuration :
sudo nginx -t
Vous relancer nginx :
sudo systemctl reload nginx
- Obtention du certificat
Vous lancer donc cerbot pour qu’il vous obtienne un certificat ssl :
sudo certbot --nginx -d exemple.fr -d www.exemple.fr
En retour, cerbot va vous demander si vous souhaitez garder l’accès en http ou tout rediriger sur https
Please choose whether HTTPS access is required or optional. ------------------------------------------------------------------------------- 1: Easy - Allow both HTTP and HTTPS access to these sites 2: Secure - Make all requests redirect to secure HTTPS access ------------------------------------------------------------------------------- Select the appropriate number [1-2] then [enter] (press 'c' to cancel):
il est conseillé de choisir l’option 2
Puis la validation :
IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/example.com/fullchain.pem. Your cert will expire on 2017-10-23. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - Your account credentials have been saved in your Certbot configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Certbot so making regular backups of this folder is ideal. - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
- Renouvellement automatique
Let’s encrypt certifie votre domaine que durant 3 mois, afin d’éviter de renouveler cette procédure tout les 3 mois vous pouvez demander à cron de le faire pour vous.
sudo crontab -e
Ajouter la règle suivante :
23 3 * * * /usr/bin/certbot renew --quiet
Votre certificat est donc renouvelé tout les jours à 3h23 en silence
- Vérification DNS
Sauf mention contraire, le site est placé sous double licence Creative Commons BY-SA et GNU Free Documentation License propulsé par NodeBB