{"id":442,"date":"2022-06-16T10:00:00","date_gmt":"2022-06-16T08:00:00","guid":{"rendered":"https:\/\/nicolasheudron.com\/?p=442"},"modified":"2023-05-16T10:53:35","modified_gmt":"2023-05-16T08:53:35","slug":"passer-votre-site-web-en-https","status":"publish","type":"post","link":"https:\/\/nicolasheudron.com\/index.php\/passer-votre-site-web-en-https\/2022\/06\/","title":{"rendered":"Passer votre site web en HTTPS"},"content":{"rendered":"\n<p>Vous naviguez quotidiennement sur Internet, mais savez-vous r\u00e9ellement comment vos donn\u00e9es sont s\u00e9curis\u00e9es lors de vos interactions avec les sites web ? C&rsquo;est l\u00e0 que le chiffrement SSL entre en jeu. Dans cet article, nous allons plonger dans les myst\u00e8res du chiffrement SSL et d\u00e9couvrir comment il prot\u00e8ge vos informations sensibles en ligne.<\/p>\n\n\n\n<p>Nous verrons \u00e0 la fin comment mettre en place le SSL avec let&rsquo;sEncrypt sur un site web Apache2. <\/p>\n\n\n\n<p>Un prochain article d\u00e9criera la m\u00e9thode pour un reverse proxy Nginx. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Qu&rsquo;est-ce que le chiffrement SSL ?<\/h2>\n\n\n\n<p>SSL, pour Secure Sockets Layer, est un protocole de s\u00e9curit\u00e9 qui permet d&rsquo;\u00e9tablir une connexion s\u00e9curis\u00e9e entre un navigateur et un serveur web. Son successeur, le TLS (Transport Layer Security), est aujourd&rsquo;hui plus couramment utilis\u00e9, mais le terme SSL est encore largement utilis\u00e9 pour d\u00e9signer le chiffrement des connexions HTTPS.<\/p>\n\n\n\n<p>Le chiffrement SSL est essentiel pour pr\u00e9venir l&rsquo;interception et la manipulation de donn\u00e9es confidentielles, telles que les mots de passe, les informations de paiement ou les messages priv\u00e9s. Il cr\u00e9e une \u00ab\u00a0tunnel s\u00e9curis\u00e9\u00a0\u00bb entre le navigateur de l&rsquo;utilisateur et le serveur web, rendant les donn\u00e9es illisibles pour les personnes malveillantes qui pourraient tenter de les intercepter.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Comment fonctionne le chiffrement SSL ?<\/h2>\n\n\n\n<p>Le chiffrement SSL repose sur un processus en plusieurs \u00e9tapes. Tout d&rsquo;abord, le navigateur et le serveur web entament une \u00ab\u00a0poign\u00e9e de main\u00a0\u00bb pour n\u00e9gocier les param\u00e8tres de chiffrement et \u00e9tablir une cl\u00e9 de session commune. Cette cl\u00e9 de session est utilis\u00e9e pour chiffrer et d\u00e9chiffrer les donn\u00e9es \u00e9chang\u00e9es entre les deux parties.<\/p>\n\n\n\n<p>Une fois que la cl\u00e9 de session est \u00e9tablie, le navigateur et le serveur utilisent des algorithmes de chiffrement pour chiffrer les donn\u00e9es. Les donn\u00e9es chiffr\u00e9es sont ensuite envoy\u00e9es via Internet, o\u00f9 elles ne peuvent \u00eatre lues que par le navigateur et le serveur qui poss\u00e8dent la cl\u00e9 de session correspondante.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Les diff\u00e9rents types de certificats SSL<\/h2>\n\n\n\n<p>Lorsque vous visitez un site web s\u00e9curis\u00e9, vous avez peut-\u00eatre remarqu\u00e9 un petit cadenas vert \u00e0 c\u00f4t\u00e9 de l&rsquo;URL, ainsi qu&rsquo;un \u00ab\u00a0https\u00a0\u00bb au lieu de \u00ab\u00a0http\u00a0\u00bb. Cela indique que le site utilise un certificat SSL valide.<\/p>\n\n\n\n<p>Il existe deux types de certificats SSL : les certificats auto-sign\u00e9s et les certificats \u00e9mis par une autorit\u00e9 de certification (CA). Les certificats auto-sign\u00e9s sont g\u00e9n\u00e9r\u00e9s par les propri\u00e9taires de sites web eux-m\u00eames, tandis que les certificats \u00e9mis par une CA sont d\u00e9livr\u00e9s par des entit\u00e9s de confiance reconnues.<\/p>\n\n\n\n<p>Les certificats \u00e9mis par une CA offrent un niveau de confiance suppl\u00e9mentaire, car ils sont v\u00e9rifi\u00e9s et sign\u00e9s par une tierce partie ind\u00e9pendante. Cela garantit que le site web est authentique et que les donn\u00e9es \u00e9chang\u00e9es sont s\u00e9curis\u00e9es. Les navigateurs web font confiance aux autorit\u00e9s de certification et signalent les probl\u00e8mes potentiels si un certificat n&rsquo;est pas valide ou a expir\u00e9.<\/p>\n\n\n\n<p>Dans la prochaine partie de cet article, nous allons aborder les aspects pratiques de la configuration du chiffrement SSL sur un serveur web. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mise en place avec Let&rsquo;s Encrypt<\/h2>\n\n\n\n<div class=\"wp-block-group has-shadow-dark has-border-background-color has-background is-layout-constrained wp-container-core-group-is-layout-301020a0 wp-block-group-is-layout-constrained\" style=\"border-radius:17px;padding-top:var(--wp--preset--spacing--50);padding-right:var(--wp--preset--spacing--50);padding-bottom:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)\">\n<p><strong>Pr\u00e9-requis <\/strong><\/p>\n\n\n\n<p>Veillez \u00e0 bien configurer vous vhost dans \/etc\/apache2\/sites-available\/<\/p>\n\n\n\n<p>Vous devez avoir un virtualhost sur le port 80 avec le nom du site pr\u00e9d\u00e9finit. Par la suite, nous utiliserons le nom du site pour placer automatiquement le certificat dans le vhost. Si ce n&rsquo;est pas fait automatiquement, il n&rsquo;y a aucun soucis. Il suffira de r\u00e9cup\u00e9rer le path des certificat et de les d\u00e9clarer dans le vhost. <\/p>\n<\/div>\n\n\n\n<p>Certbot est un outil pratique qui permet d\u2019automatiser la configuration de certificats SSL\/TLS pour des sites internet.\u00a0Il utilise Let\u2019s Encrypt, une autorit\u00e9 de certification gratuite et open-source<sup>1<\/sup>. CertBot est un script qui permet de d\u00e9ployer facilement le HTTPS sur votre serveur.\u00a0C\u2019est un client officiel de Let\u2019s Encrypt qui g\u00e9n\u00e8re gratuitement des certificats SSL. Certbot est un outil automatique, compatible avec les serveurs web majeurs (dont Apache et Nginx), ainsi qu\u2019avec les OS Linux les plus courants.\u00a0Il est plac\u00e9 sous l\u2019\u00e9gide de l\u2019EFF (Electronic Frontier Foundation). <\/p>\n\n\n\n<p>Sachant ceci, nous pouvons installer Certbot :<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro padding-bottom-disabled\" style=\"font-size:.875rem;line-height:1.25rem\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"sudo apt install certbot python3-certbot-apache\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #88C0D0\">sudo<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">apt<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">install<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">certbot<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">python3-certbot-apache<\/span><\/span><\/code><\/pre><span style=\"display:flex;align-items:flex-end;padding:10px;width:100%;justify-content:flex-end;background-color:#2e3440ff;color:#c8d0e0;font-size:12px;line-height:1;position:relative\">Bash<\/span><\/div>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro padding-bottom-disabled\" style=\"font-size:.875rem;line-height:1.25rem\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"sudo which certbot\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #88C0D0\">sudo<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">which<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">certbot<\/span><\/span><\/code><\/pre><span style=\"display:flex;align-items:flex-end;padding:10px;width:100%;justify-content:flex-end;background-color:#2e3440ff;color:#c8d0e0;font-size:12px;line-height:1;position:relative\">Bash<\/span><\/div>\n\n\n\n<p>Il est maintenant temps de g\u00e9n\u00e9rer le certificat. On utilise ici l&rsquo;URL du site que nous avions pr\u00e9-configurer dans le vhost de paahce2 afin de cibler le fichier. <\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro padding-bottom-disabled\" style=\"font-size:.875rem;line-height:1.25rem\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"certbot --apache -d www.nicolasheudron.com\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #88C0D0\">certbot<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">--apache<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">-d<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">www.nicolasheudron.com<\/span><\/span><\/code><\/pre><span style=\"display:flex;align-items:flex-end;padding:10px;width:100%;justify-content:flex-end;background-color:#2e3440ff;color:#c8d0e0;font-size:12px;line-height:1;position:relative\">Bash<\/span><\/div>\n\n\n\n<p>Vous pouvez ex\u00e9cuter plusieurs fois ce m\u00eame script si jamais des erreurs surviennent. <\/p>\n\n\n\n<p>Le script vous pose quelques questions. Laissez-vous guider. <\/p>\n\n\n\n<p>Votre site web est maintenant en HTTPS. <\/p>\n\n\n\n<p>Votre site web n&rsquo;est pas prot\u00e9g\u00e9. C&rsquo;est pr\u00e9cis\u00e9ment la connexion entre le serveur et le client qui est chiffr\u00e9e. Ainsi, des donn\u00e9es ne peuvent pas \u00eatre intercept\u00e9es. \u00c9galement, gr\u00e2ce au syst\u00e8me de certificat, le client est prot\u00e9g\u00e9 contre les attaques de man-in-the-middle. <\/p>\n\n\n\n<p>Merci d&rsquo;avoir lu cet article. <\/p>\n\n\n\n<p>Dans un prochain article, nous traiteront de la mise en place d&rsquo;un serveur d&rsquo;autorit\u00e9 de certification en local afin de s\u00e9curis\u00e9 les connexions web lors de l&rsquo;acc\u00e8s \u00e0 des interfaces d&rsquo;administration par exemple. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Vous naviguez quotidiennement sur Internet, mais savez-vous r\u00e9ellement comment vos donn\u00e9es sont s\u00e9curis\u00e9es lors de [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":443,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[9,10],"tags":[],"class_list":["post-442","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-informatique","category-linux"],"aioseo_notices":[],"jetpack_featured_media_url":"https:\/\/nicolasheudron.com\/wp-content\/uploads\/2023\/05\/https-g328bb8407_640.jpg","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/nicolasheudron.com\/index.php\/wp-json\/wp\/v2\/posts\/442","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nicolasheudron.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nicolasheudron.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nicolasheudron.com\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nicolasheudron.com\/index.php\/wp-json\/wp\/v2\/comments?post=442"}],"version-history":[{"count":4,"href":"https:\/\/nicolasheudron.com\/index.php\/wp-json\/wp\/v2\/posts\/442\/revisions"}],"predecessor-version":[{"id":448,"href":"https:\/\/nicolasheudron.com\/index.php\/wp-json\/wp\/v2\/posts\/442\/revisions\/448"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nicolasheudron.com\/index.php\/wp-json\/wp\/v2\/media\/443"}],"wp:attachment":[{"href":"https:\/\/nicolasheudron.com\/index.php\/wp-json\/wp\/v2\/media?parent=442"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nicolasheudron.com\/index.php\/wp-json\/wp\/v2\/categories?post=442"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nicolasheudron.com\/index.php\/wp-json\/wp\/v2\/tags?post=442"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}