Перейти к содержимому

Sécuriser NGINX dans Docker avec Let's Encrypt (HTTPS + Certbot)

Yes We Code

0:00 / 0:00

Sécuriser NGINX dans Docker avec Let's Encrypt (HTTPS + Certbot)

78 просмотров · 2 мес. назад
Yes We Code
59 подписчиков
78 просмотров · 2 мес. назад
Dans cette vidéo, je te montre comment sécuriser en HTTPS un site servi par NGINX dans Docker, grâce à Let's Encrypt et Certbot. Nous allons ajouter Certbot au même fichier Docker Compose que NGINX, obtenir gratuitement un certificat TLS, activer HTTPS, rediriger automatiquement le trafic HTTP vers HTTPS et préparer le renouvellement des certificats. Cette vidéo fait suite à l'installation de NGINX dans Docker réalisée dans la vidéo précédente. Nous repartons de cette configuration existante pour lui ajouter HTTPS progressivement, sans interrompre le fonctionnement du site en HTTP avant que le certificat soit disponible. Le guide GitHub contenant les commandes, le fichier Docker Compose et les configurations NGINX est disponible ici : 👉 https://github.com/YesWeCodeFr/nginx-... Vidéo précédente — Installer NGINX dans Docker avec Docker Compose : 👉    • Installe NGINX dans Docker avec Docker Com...   Chapitres : 00:00 Introduction 00:46 Comprendre HTTPS, TLS et Let's Encrypt 01:42 Fonctionnement global de Let's Encrypt 03:28 Déployer Certbot avec Docker Compose 07:41 Demander et vérifier le certificat TLS 09:20 Activer HTTPS dans NGINX 10:56 Rediriger HTTP vers HTTPS 11:54 Renouveler les certificats 13:55 Conclusion Nous commencerons par distinguer simplement HTTPS, TLS et Let's Encrypt. Un diagramme permettra ensuite de comprendre les échanges entre Certbot, Let's Encrypt, NGINX et les volumes Docker partagés pendant la validation du nom de domaine. Nous créerons les dossiers nécessaires aux challenges, aux certificats et aux journaux de Certbot, puis nous appliquerons les droits adaptés avec le groupe `nginx-admin`. Nous compléterons ensuite le service NGINX et ajouterons un service Certbot dans le fichier `compose.yaml`. Nous configurerons NGINX pour rendre accessible le challenge HTTP-01 sur le port `80`. Certbot pourra alors prouver à Let's Encrypt que nous contrôlons le domaine, récupérer le certificat et conserver sa clé privée dans un volume partagé avec NGINX. Une fois le certificat obtenu, nous ajouterons progressivement le bloc HTTPS sur le port `443`. Nous vérifierons d'abord que HTTP et HTTPS fonctionnent, avant de mettre en place une redirection permanente de HTTP vers HTTPS. Enfin, nous verrons comment lister les certificats installés et leurs dates d'expiration, tester leur renouvellement avec `--dry-run`, les renouveler avec Certbot et recharger NGINX. Pour une installation en production, ces opérations pourront ensuite être automatisées avec un script exécuté régulièrement par Cron. Au programme : Comprendre le rôle de HTTPS, de TLS et d'un certificat Découvrir Let's Encrypt et le protocole ACME Comprendre le challenge HTTP-01 Ajouter Certbot au même fichier Docker Compose que NGINX Utiliser un profil Docker Compose pour exécuter Certbot ponctuellement Partager les challenges et les certificats avec des volumes Docker Préparer les dossiers et leurs droits d'accès Ouvrir le port HTTPS `443` Configurer le chemin `.well-known/acme-challenge` Demander un certificat avec Certbot en mode `webroot` Lister les certificats et vérifier leur date d'expiration Configurer le certificat et la clé privée dans NGINX Tester le site en HTTPS Rediriger définitivement HTTP vers HTTPS Tester le renouvellement des certificats Recharger NGINX après un renouvellement Préparer l'automatisation avec un script et Cron Cette vidéo s'adresse aux développeurs, administrateurs débutants, freelances et curieux qui souhaitent sécuriser un site NGINX conteneurisé, administrer leurs propres certificats TLS ou améliorer leur installation Docker sur un VPS. Prérequis : avoir suivi la vidéo précédente ou disposer d'une installation NGINX fonctionnelle avec Docker Compose, posséder un nom de domaine pointant vers le serveur et rendre les ports TCP `80` et `443` accessibles depuis Internet. Abonne-toi à Yes We Code pour d'autres vidéos autour du développement, du DevOps, de Linux, de Docker, de l'hébergement et de l'IA. #NGINX #Docker #DockerCompose #LetsEncrypt #Certbot #HTTPS #TLS #DevOps #Linux #VPS #AutoHebergement #YesWeCode