Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
tutoriel:reseau:http:serveur:nginx:ssl:letsencrypt:start [2024/09/21 10:28] – supprimée - modification externe (Unknown date) 127.0.0.1 | tutoriel:reseau:http:serveur:nginx:ssl:letsencrypt:start [2024/09/21 10:43] (Version actuelle) – ↷ Liens modifiés en raison d'un déplacement. admin | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | {{tag> | ||
+ | ====== SSL pour Nginx : mettre en place un certificat SSL Let's Encrypt avec Certbot ====== | ||
+ | |||
+ | Les protocoles Web **TLS** (et son prédécesseur **SSL**) englobent le trafic dans un contenant protégé et chiffré pour : | ||
+ | * échanger en toute sécurité sans que les messages soient interceptés par un tiers. | ||
+ | * permettre aux utilisateurs de vérifier l' | ||
+ | |||
+ | L' | ||
+ | |||
+ | Normalement, | ||
+ | |||
+ | Cette page décrit l' | ||
+ | |||
+ | Ce tutoriel utilise Certbot pour obtenir un certificat SSL gratuit pour Nginx et le configurer pour qu'il se renouvelle automatiquement. | ||
+ | |||
+ | Ce didacticiel utilise un fichier d' | ||
+ | ===== Pré-requis ===== | ||
+ | |||
+ | * **avoir enregistré officiellement le nom de domaine** avec lequel vous souhaitez utiliser le certificat. Ce nom de domaine doit être configuré et pointer vers votre site (adresse IP)<WRAP center round info 60%>Dans ce tutoriel, ce sera le domaine **mondomaine.fr**</ | ||
+ | * **Python** | ||
+ | * **[[logiciel: | ||
+ | |||
+ | ===== Première étape : Installation de Certbot ===== | ||
+ | |||
+ | Sous SSH, installez Certbot sur le serveur web :<cli prompt=' | ||
+ | USER@MACHINE: | ||
+ | |||
+ | <WRAP center round info 60%> | ||
+ | Si vous êtes sous **Apache**, installez **python-certbot-apache** au lieu de python3-certbot-nginx | ||
+ | </ | ||
+ | ===== Autres étapes ===== | ||
+ | |||
+ | Nous allons récupérer depuis Let’s Encrypt un certificat SSL pour notre serveur. | ||
+ | |||
+ | < | ||
+ | - **Obtenir et installer vos certificats** : | ||
+ | - **Configuration de Nginx** : | ||
+ | - **Certbot recherche dans votre config de Nginx une directive server_name** correspondant au domaine pour lequel vous demandez un certificat. Si vous avez bien configuré l' | ||
+ | server { | ||
+ | <...> | ||
+ | server_name mondomaine.fr www.mondomaine.fr; | ||
+ | <...> | ||
+ | } | ||
+ | </ | ||
+ | - Si c'est le cas, quittez votre éditeur et passez à l' | ||
+ | - sinon, mettez le fichier à jour pour qu'il corresponde. | ||
+ | - **Vérifiez la syntaxe** de vos modifications de configuration :<cli prompt=' | ||
+ | nginx: the configuration file / | ||
+ | nginx: configuration file / | ||
+ | - S'il y a des erreurs, rouvrez le fichier de l' | ||
+ | - Si cela fonctionne sans erreur, rechargez Nginx pour charger la nouvelle configuration :<cli prompt=' | ||
+ | - Certbot peut maintenant trouver le bon bloc **server** et le mettre à jour. | ||
+ | - **Autoriser HTTPS sur le pare-feu** ; si le pare-feu **ufw** est activé, ajustez les paramètres pour autoriser le trafic HTTPS : | ||
+ | - **Affichez le réglage actuel** :<cli prompt=' | ||
+ | Status: active | ||
+ | |||
+ | To | ||
+ | -- | ||
+ | 80 | ||
+ | 22/ | ||
+ | 80 (v6) ALLOW | ||
+ | 22/tcp (v6) ALLOW | ||
+ | - Si le port 443 n'est pas ouvert, activez-le par :<cli prompt=' | ||
+ | - **Obtention d'un certificat SSL** | ||
+ | - Certbot fournit des plugins pour obtenir des certificats SSL. Le plugin --nginx reconfigure Nginx et recharge la configuration autant que nécessaire. Pour utiliser ce plugin, tapez :<cli prompt=' | ||
+ | ... | ||
+ | Enter email address (used for urgent renewal and security notices) (Enter ' | ||
+ | cancel): votre@email.fr | ||
+ | ... | ||
+ | Please read the Terms of Service at | ||
+ | ... | ||
+ | (A)gree/ | ||
+ | <...> | ||
+ | Would you be willing to share your email address with ... | ||
+ | ... | ||
+ | (Y)es/(N)o: N | ||
+ | ... | ||
+ | Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. | ||
+ | ... | ||
+ | 1: No redirect - Make no further changes to the webserver configuration. | ||
+ | 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for | ||
+ | new sites, or if you're confident your site works on HTTPS. You can undo this | ||
+ | change by editing your web server' | ||
+ | ... | ||
+ | Select the appropriate number [1-2] then [enter] (press ' | ||
+ | < | ||
+ | - La première fois que vous exécutez certbot, vous serez invité à saisir une adresse e-mail et à accepter les conditions d' | ||
+ | - Puis certbot vérifie que vous êtes le propriétaire du domaine pour lequel vous demandez un certificat. | ||
+ | - Si cela réussit, certbot vous demande comment configurer vos paramètres HTTPS : | ||
+ | - **1** : Pas de redirection - Ne faites plus de modification à la configuration du serveur Web. | ||
+ | - **2** : Redirection - Rediriger toutes les demandes vers un accès sécurisé HTTPS. | ||
+ | - Sélectionnez votre choix puis appuyez sur < | ||
+ | - La configuration est mise à jour et Nginx se recharge pour récupérer les nouveaux paramètres. | ||
+ | - certbot termine avec un message vous indiquant que le processus a réussi et où sont stockés vos certificats :<cli prompt=' | ||
+ | IMPORTANT NOTES: | ||
+ | - Congratulations! Your certificate and chain have been saved at | ||
+ | / | ||
+ | | ||
+ | | ||
+ | " | ||
+ | | ||
+ | - Your account credentials have been saved in your Certbot | ||
+ | | ||
+ | | ||
+ | also contain certificates and private keys obtained by Certbot so | ||
+ | | ||
+ | - If you like Certbot, please consider supporting our work by: | ||
+ | |||
+ | | ||
+ | | ||
+ | </ | ||
+ | - **Rechargez votre site Web** en utilisant %%https:// | ||
+ | - **Vérification du renouvellement automatique de Certbot** : | ||
+ | - Les certificats de Let’s Encrypt ne sont valables que quatre-vingt-dix jours. | ||
+ | - certbot renouvelle automatiquement le certificat en ajoutant à /etc/cron.d un script qui s' | ||
+ | - Pour tester le processus de renouvellement :<cli prompt=' | ||
+ | - Si nécessaire, | ||
+ | - Si le processus de renouvellement automatisé échoue, Let’s Encrypt enverra un message à l' | ||
+ | - **Obtenir seulement un certificat** :<cli prompt=' | ||
+ | </ | ||
+ | ===== Conclusion ===== | ||
+ | |||
+ | Dans ce didacticiel, | ||
+ | ===== Problèmes connus ===== | ||
+ | |||
+ | ===== Voir aussi ===== | ||
+ | |||
+ | * **(fr)** [[https:// | ||
+ | * **(fr)** [[https:// | ||
+ | * **(en)** [[https:// | ||
+ | * **(en)** [[https:// | ||
+ | * **(en)** [[https:// | ||
+ | * **(en)** [[https:// | ||
+ | * **(en)** [[https:// | ||
+ | * **(en)** [[https:// | ||
+ | * **(en)** [[https:// | ||
+ | * **(en)** [[https:// | ||
+ | |||
+ | ---- | ||
+ | //Basé sur << [[https:// |