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:// | ||