FRFAM.COM >> Famille >> Technologie &Innovation >> Informatique

Configurer SSL gratuitement sur votre site avec Let's Encrypt : Guide étape par étape

Avoir un site web sécurisé avec SSL (HTTPS) est essentiel aujourd'hui. Google priorise les sites HTTPS dans ses résultats de recherche, reléguant progressivement HTTP aux oubliettes.

Découvrez comment générer et installer gratuitement des certificats SSL via Let's Encrypt en quelques minutes seulement.

SSL gratuit et simple avec Let's Encrypt

Configurer SSL n'a jamais été aussi accessible grâce à Let's Encrypt, une autorité de certification gratuite et reconnue.

Lancée en avril 2016, Let's Encrypt doit sa popularité à son outil Certbot et à son modèle gratuit, adopté par des millions de sites web.

Installer Certbot

Ce guide suppose un serveur Linux (Ubuntu/Debian) avec un nom de domaine pointant vers son IP. Connectez-vous via SSH et vérifiez l'installation de Certbot :

sudo certbot --version

Si une version s'affiche, passez à la suite. Sinon, installez-le :

sudo apt update && sudo apt install certbot -y

Générer un certificat SSL

Arrêtez temporairement votre serveur web :

sudo service nginx stop
# ou pour Apache
sudo service apache2 stop

Votre domaine doit pointer vers l'IP du serveur. Générez le certificat :

sudo certbot certonly --standalone -d votredomaine.com -d www.votredomaine.com

Certbot vérifie le contrôle du domaine et génère les fichiers dans /etc/letsencrypt/live/votredomaine.com/.

Configurer Nginx

Localisez le fichier de config (souvent dans /etc/nginx/sites-enabled/ ou /etc/nginx/conf.d/).

Éditez-le :

sudo nano /etc/nginx/sites-enabled/default

Ajoutez un bloc pour rediriger HTTP vers HTTPS :

server {
    listen 80;
    server_name votredomaine.com www.votredomaine.com;
    return 301 https://$server_name$request_uri;
}

Dans le bloc principal, modifiez listen 80; en listen 443 ssl http2; et ajoutez :

ssl_certificate /etc/letsencrypt/live/votredomaine.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/votredomaine.com/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

Enregistrez (Ctrl+O, Ctrl+X) et testez/rechargez :

sudo nginx -t && sudo systemctl reload nginx

Votre site est maintenant en HTTPS sécurisé !

Configurer Apache

Localisez le fichier dans /etc/apache2/sites-enabled/ :

sudo apache2ctl -S

Éditez :

sudo nano /etc/apache2/sites-enabled/000-default.conf

Ajoutez un VirtualHost pour HTTP :

<VirtualHost *:80>
    ServerName votredomaine.com
    Redirect permanent / https://votredomaine.com/
</VirtualHost>

Dans le VirtualHost HTTPS, changez *:80 en *:443 et ajoutez :

SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/votredomaine.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/votredomaine.com/privkey.pem

Activez SSL :

sudo a2enmod ssl

Enregistrez et redémarrez :

sudo systemctl restart apache2

Renouveler les certificats SSL

Les certificats expirent tous les 90 jours. Renouvelez-les :

sudo certbot renew

Configurez un cron job pour l'automatisation : sudo crontab -e et ajoutez 0 12 * * * /usr/bin/certbot renew --quiet.

Site sécurisé !

Félicitations ! Votre site force désormais HTTPS avec un certificat valide, sans avertissements navigateur.

Vous avez appris à installer Certbot, générer des certificats, configurer Nginx/Apache et automatiser les renouvellements.

Crédit image : Robert Avgustin/Shutterstock

[]