• HOME
  • HTML
  • CSS
  • PHP
    • Début d'une page - Variable
    • Afficher et Concaténer des variables
    • Symboles à connaître
    • Conditions: IF, ELSE, ELSEIF
    • Conditions AND, OR
    • Conditions SWITCH
    • Boucles WHILE, FOR
    • Les tableaux / EN COUR ...
    • Les fonctions / Bientôt ...
  • SQL
    • Installer MYSQL
    • Interroger une base de données
    • Requete SQL / prochainement
    • PhpMyadmin serveur / prochainement
  • RÉSEAU
    • Afficher le mot de passe wifi
    • Le model OSI
    • Cisco Packet Tracer
    • WINDOWS 10 : LA DÉCOUVERTE DU RÉSEAU NE FONCTIONNE PAS
  • LINUX
    • Mettre à jour linux
    • Commandes Linux
    • permissions
    • Installer nginx (Serveur Web)
    • Installer Composer 2
    • Installer Symfony
    • Installer Mysql sur Ubuntu
    • VIM + liste commande
    • Installer Prestashop
    • Odoo / prochainement
    • Sécuriser un site avec HTTPS (Cerbot)
    • Android Téléphone Virtuel
    • Espace d'échange (swap)
    • Raspberry Pi : Authentification SSH par certificat
    • Ubuntu Software
  • WINDOWS
    • Créer une clé USB multiboot / prochainement
    • WSL2
    • WSL2 accéder aux fichiers Linux depuis Windows
    • WSL2 Sauvegarder et restaurer vos distrib Linux
    • Mot de passe Windows perdu
    • Effacer totalement un disque dur ou un SSD
    • Sauvegarder / Restaurer les drivers Windows
    • VMware Workstation / prochainement
    • Comment activer le bac à sable dans Windows 11 / prochainement
  • RASPBERRY
    • Créez une carte SD Raspbian pour votre Raspberry Pi depuis Windows
    • Premier démarrage
    • Mettre à jour son Raspberry
    • Mettre à Jour Raspberry Pi OS
    • Voir le réseau raspberry depuis Windows
    • Se connecter au bureau de son Raspberry depuis un PC Windows
    • Ouvrir les ports
    • SSH
    • Faire un NAS
    • Transmission
    • HTML - PHP - MYSQL - PHP ADMIN / Bientôt ...
    • Plusieurs sites Web à partir d'un seul et même serveur
    • Plex seveur multimédia
    • Recalbox / Kodi pour raspberrypi 3b+ / Bientôt
    • Mettre tout le système sur disque dur USB ou SSD
    • Installer Spotify
  • DIVERS
    • Programme
    • Ebook
    • Formation
    • LIENS

Let's Encrypt

Mis à jour le 21 Novembre 2021

Depuis quelques années maintenant, il est possible de bénéficier d'un certificat SSL gratuitement par l'intermédiaire de Let's Encrypt. Cette autorité de certification publie des certificats reconnus par les navigateurs. Les certificats délivrés sont valables pour une durée de 90 jours renouvelables. Sa configuration ne pourra se faire qu'avec un domaine et un DNS actif qui garantit un minimum la véracité du contenu (une méthode existe pour produire un certificat local si nécessaire).

Il faudra donc remplacer le nom exemple.com dans les lignes ci-dessous par le nom de votre domaine.

image

Table des matières

  • 1. Installer un certificat Let's Encrypt
    • 1.2. On active le module SSL pour Apache
    • 1.3. Relancer le serveur Web

1. Installer un certificat Let's Encrypt :

Télécharger le client cerbot-auto de Let's Encrypt et de le sauvegarder dans le répertoire /usr/bin du serveur :

sudo wget https://dl.eff.org/certbot- auto -0 /usr/sbin/certbot-auto
sudo chmod a+x /usr/sbin/certbot-auto

Récupérer un certificat de Let's Encrypt. Après vérification de l'authenticité, le certificat est alors envoyé :

sudo certbot-auto certonly --standalone -d exemple.com -d www.exemple.com

À la suite de quoi on vous demande une adresse email qui sera utilisée pour l'envoi d'alertes concernant le certificat. C'est ce script qui va créer et envoyer le fameux certificat SSL dans le répertoire vHost d'Apache. Si toutes les étapes se sont bien déroulées, on peut vérifier la présence des certificats :

ls /etc/letsencrypt/live/exemple.com 
cert.pem 
chain.pem 
fullchain.pem 
privkey.pem

Pour la suite, il est nécessaire d'adapter le fichier vHost pour qu'il prenne en compte ce nouveau certificat en ajoutant quelques lignes.

cd /etc/apache2/sites-enabled/
sudo vim exemple.com.conf

Puis on ajoute les lignes suivantes et on enregistre :

SSLEngine on
SSLCertificateFile
/etc/letsencrypt/live/exemple.com/cert.pem SSLCertificateKeyFile
/etc/letsencrypt/live/exemple.com/privkey- pem
SSLCertificateChainFile
/etc/letsencrypt/live/exemple.com/chain. pem

  • Maintenant, on active le module SSL pour Apache :
sudo a2enmod ssl

  • On relance le serveur Web :
sudo Systeemat1 roload apache2

Pour finir, on ajoute une ligne au fichier crontab pour lancer le renouvellement automatique du certificat avant son échéance :

0 2 * * * sudo /usr/sbin/certbot-auto -q renew

Ici, cette ligne va déclencher une demande de certificat tous les jours à 2h du matin, Attention, on ne recevra pas pour autant un nouveau certificat tous les jours, mais uniquement quand il arrive à expiration.