====== Self-hosting for teams - 3 - SSL Let's encrypt ======
//Let's encrypt// délivre des certificats pour passer votre site en HTTPS. La procédure est simple et utilise l'outil [[https://certbot.eff.org/docs/using.html|certbot]].
Installer tout d'abord ''%%certbot%%'' :
sudo apt install certbot
Puis lancez certbot (en remplaçant "votredomaine.org" par votre nom de domaine).
sudo certbot certonly --manual --preferred-challenges=dns --email="votre@email.com" --server="https://acme-v02.api.letsencrypt.org/directory" --agree-tos -d="*.votredomaine.org"
Après une ou deux validations, //Let's encrypt// vous fournira une chaîne de caractères aléatoires, copiez la. Ne confirmez pas la commande. Vous devez ensuite ajouter une règle dans votre zone DNS (de type txt) :
_acme-challenge 900 IN TXT "CHAINE_DE_CARACTERES"
Validez ensuite dans ''%%certbot%%''. Vos clés et certificats sont alors dans le répertoire ''%%/etc/letsencrypt/live/votredomaine.org/%%''.
Il faut éditer la configuration générale de Nginx, ouvrez le fichier /etc/nginx/nginx.conf
sudo nano /etc/nginx/nginx.conf
à la fin du bloc http, on remplace nos deux lignes :
# Custom
ssl_certificate /tmp/domain.crt;
ssl_certificate_key /tmp/domain.key;
par (en remplaçant "votredomaine.org" par votre nom de domaine) :
# Custom
ssl_certificate /etc/letsencrypt/live/votredomaine.org/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/votredomaine.org/privkey.pem;
Pour prendre le changement en compte, rechargez la configuration de Nginx:
sudo systemctl reload nginx
ou, s'il n'a pas démarré :
sudo systemctl start nginx
Testez dans un navigateur que vos certificats sont bien reconnus et valides !