Comment protéger votre blog WordPress avec le protocole HTTPS

Dès octobre 2017, Google Chrome affichera une alerte « No Secure » lors de la visites des sites non sécurisés ! Avec la peur de l’alerte, le géant du Web oblige ainsi les possesseurs de sites Internet à passer le cap du HTTPS.

Même s’il y a aucun rapport avec le référencement (pour le moment), dans l’idée du collectif, le cadenas vert à côté d’une URL rassure, et c’est le message qui est transmis.

Mais pour beaucoup de blogueurs acquérir et installer un certificat de sécurité SSL fait peur ! Je le sais, j’étais dans la même cas avant de passer le cap. Au final, avec un peu de rigueur, en listant chaque point, j’ai fini par y arriver seul, alors pourquoi pas vous ?

Préconisation avant de passer son blog en HTTPS

Sauvegardez votre blog en FTP sur votre ordinateur, puis à l’aide d’un plugin de sauvegarde (comme Updraftplus) pour votre base de donnée. Désactivez votre plugin de cache si vous en possédez-un (à réactivez dès les opérations terminées).

UpdraftPlus plugin WordPress de Sauvegarde

Lisez ce tuto en entier afin de bien comprendre chaque étape.

Retour sur le HTTP

Les sites en HTTP (Hypertext Transfer Protocol) dont l’url commencent traditionnellement par « http:// » ne sont pas sécurisés. Les données échangées peuvent-être lisibles à qui sait les voler, puis les analyser, afin d’en gagner de l’argent en les vendant à des tiers (ou vous hacker).

Même si votre blog ne vous semble pas intéressant, vous avez peut-être des données personnelles, les photos de vos enfants, des informations concernant vos abonnées qui peuvent rapidement devenir monnayables !

Rassurez-vous, pour le moment rien ne vous empêchera de visiter un site en HTTP. Mais le label Google « A vos risques et périls » (Tadaaaaaaaaa musique qui fait peur) apparaîtra.

Le HTTPS c’est quoi exactement ?

Le HTTPS c’est l’addition du classique « HTTP » avec un certificat de sécurité nommé « SSL », ce qui donne le « HTTPS ».

Grâce au HTTPS, les données échangées deviennent chiffrées. Le certificat assure une confidentialité des données et l’intégrité des informations échangées entre votre ordinateur et le serveur.

Remarque : le HTTPS ne cache en rien votre identité numérique (adresse IP, …) ! Il faut bien chasser et (re)trouver les personnes mal-intentionnées sur le Net, non ?

Certificat sécurisé SSL/TLS

cadenas-vert-certificat-ssl

Il est facile d’obtenir un certificat SSL gratuitement sur certains hébergements (comme OVH, Infomaniak, O2Switch, Nuxit, …).
Manuellement, c’est plus dur et ferait l’objet d’un article entier sur le sujet (de plus je n’ai pas tout saisi). Google étant votre ami, vous pourrez y trouver toutes les informations nécessaires.

Recherchez sur l’admin de votre hébergement, ou contacter l’aide en ligne afin de comprendre comment activer votre certificat SSL/TLS.

Pour de simples blogueurs comme nous, il n’est pas demandé d’informations supplémentaires administratives, c’est une procédure simplifiée et généralement gratuite (comprise dans votre abonnement) pour un certificat simplifié.

Petit tour d’horizon rapide sur les certifications SSL

Comme pour toutes solutions technologiques, il existe des niveaux de certifications en fonction des besoins et de l’assurance souhaitée.

Certifications SSL payantes

– Certification à validation de domaine (DV)

Solution qui vérifie simplement si vous êtes propriétaire du nom de domaine

– Certificat à validation de l’organisation (OV)

Solution qui vérifie que vous êtes la personne morale propriétaire du nom de domaine avec documents justificatifs associés, extrait de KBIS, de domiciliation, …

– Certificat à validation étendue (EV)

Solution qui vérifie votre existence légale, physique, numéro de téléphone, adresse, et tout un tas d’autres justificatifs et ce annuellement.

Certifications SLL gratuites (avec Let’s Encrypt)

Facebook, Free, OVH, Automattic, Google, … participent à l’élaboration du certificat Let’s Encrypt 

Certifications SLL gratuites (avec Let’s Encrypt)

C’est la solution à adopter pour de simples site Internet. Si votre hébergeur ne propose pas de solution automatique, toute la documentation pour générer et gérer un certificat SSL soi-même se trouve ici : https://letsencrypt.org/docs/

Pensez à noter sur votre agenda à -90, -60 et -30 jours le renouvellement de cette certification limitée dans le temps. Votre hébergeur le fera pour vous de manière automatique (sur O2Switch c’est le cas).

Activer le SSL sur O2Switch

Avant j’étais sur Easy Hébergement. Je m’étais déjà renseigné sur le comment du pourquoi, et j’avoue avoir eu de sacré sueurs et frayeurs.

Entre-temps je suis passé sur O2Switch (vu leurs offres de bourrins, franchement c’est super rentable). Et là magique, tout ce fait en quelques clics ! Il faut tout de même rester rigoureux, car si vous possédez plusieurs nom de domaine pour le même site (.fr et .com) avec une redirection, il va falloir tous les passer en HTTPS !

L’outil let’s encrypt SSL de cPanel (ladmin de O2Switch) permet d’installer un certificat SSL gratuitement (compris dans l’offre) délivré par l’autorité de certificat Let’s Encrypt.

Une explication en vidéo ?

Sinon rendez-vous sur l’outil Let’s Encrypt de cPanel O2Switch.

activer un certificat Let's Encrypt sur cPanel

Puis cliquez sur le lien « Générer » en face du nom de domaine que lequel vous souhaitez installer le certificat.

Ensuite cochez les domaines qui devront être inclus dans le certificats (avec ww, sans www, sous-domaine, …).
Vous pouvez aussi choisir de cocher la case « Installer le certificat SSL pour les emails de… », dans le cas où vous voulez aussi certifier la partie email de votre hébergement.

Activation du certificat SSL sur un ou plusieurs domaines

En cas de succès, un message indiquant que le certificat SSL a bien été installé. Dans ce cas le navigateur renvoi un cadenas vert dans l’url.

cadenas vert url en https - Certificat Let's Encrypt actif

Let’s Encrypt défini un quota de licences gratuites pour éviter les abus. Si vous la dépassez, vous aurez un message d’erreur vous prévenant du problème.

Adapter son blog WordPress au passage en HTTPS

Rappel : n’oubliez pas de sauvegardez votre site et votre base de données avant toutes modifications.

1/ Redirection vers le HTTPS

Un passage de HTTP => HTTPS implique une demande de redirection de TOUT votre site. Sinon vos visiteurs et les moteurs de recherche auront accès à votre contenu dans les deux versions, on appelle cela le Duplicate Content, et Google n’aime pas cela du tout !

Certains hébergeur possèdent des options pour gérer ces redirections directement dans leur admin client, sinon suivez la manipulation suivante.

Redirection sous .htacess

Rapatrier votre fichier .htacess depuis un client FTP (comme Filezilla), il se trouve à la racine de votre site internet. Faites-en une sauvegarde dans un autre répertoire.

Puis ouvrez le fichier original dans un fichier .txt, puis ajoutez les lignes suivantes :

# Redirection vers HTTPS
RewriteCond %{SERVER_PORT} ^80$ [OR]
RewriteCond %{HTTPS} =off
RewriteRule ^(.*)$ https://votre-ndd/$1 [R=301,L]

# Redirection du www vers non-www en HTTPS
RewriteCond %{HTTP_HOST} ^www\.votre-ndd\.com [NC]
RewriteRule ^(.*)$ https://votre-ndd/$1 [R=301,L]

N’oubliez pas de remplacer « votre-ndd » par votre votre nom de domaine.

Si vous avez paramétré la lecture de votre site par un www. obligatoire, c’est ce code-ci que vous aurez besoin.

# Redirection vers HTTPS
RewriteCond %{SERVER_PORT} ^80$ [OR]
RewriteCond %{HTTPS} =off
RewriteRule ^(.*)$ [R=301,L]

# Redirection du www vers non-www en HTTPS
RewriteCond %{HTTP_HOST} ^votre-ndd.com [NC]
RewriteRule ^(.*)$ [R=301,L]

Validation de la redirection .htacess

Afin de vous assurez que votre travail est bien fait, entrez l’url de votre site sur LINKSSPY. Après validation, les informations sur la redirection seront affichées. En cas de soucis, revenez en arrière grâce à votre fichier de sauvegarde, et corriger le tir.

Free SEO SSL Scanner

2/ Mise à jour du WP-ADMIN (administration)

Dans certains cas, l’admin de votre blog pointera toujours vers HTTP et non HTTPS (cela ne m’est pas arrivé).

Téléchargez, sauvegardez puis ouvrez le fichier wp-config.php de votre thème.

Ajoutez la ligne suivante au tout début du fichier, sauvegardez puis remettez en ligne.

// Forcer le HTTPS dans l’administration
define(‘FORCE_SSL_ADMIN’, true);

Rendez-vous à nouveau sur l’admin de votre site et vérifiez l’url.

Inutile de modifier le wp-config.php si tout fonctionne correctement !

3/ Mise à jour de vos liens internes

Votre url est en HTTPS certes, mais certains de vos liens internes peuvent encore pointer vers le HTTP (paramétrages d’admin, de plugin …).

Modification des réglages généraux

Dans l’admin de WordPress, rendez-vous dans « Réglages » et affichez la partie « Général ». Modifier au besoin les urls visibles dans les différents champs (Adresse Web de Worpress et Adresse Web du site URL). Les deux doivent pointer vers un « https » et non http.

Modification des réglages généraux

Really Simple SSL

Really sample SLL - Plugin wordpress rediriger les pages chargées en HTTP vers HTTPS

Ce plugin officiel WordPress « Really Simple SSL » vous aidera dans cette tâche difficile.
Cette extension permet de rediriger les pages et autres contenus mixtes dont l’url commence par HTTP vers votre version en HTTPS.

Note : le contenu mixte est un mélange de pages en HTTP et HTTPs sur l’ensemble de votre site. Dans ce cas le HTTPS est bien visible dans la barre d’adresse mais le cadenas vert n’est pas présent.

Mise à jour de votre thème

Même remarque que pour l’admin, certains thèmes/templates peuvent appeler certaines urls (CSS, images, iframes, Javascripts, …) vers la version HTTP.

Même si vous avez réalisé une redirection en .htacess afin qu’un lien HTTP pointe automatiquement vers le HTTPS, les urls dans votre code restent en HTTP. Par conséquent, lorsque Google lira votre page, il ne vous concédera pas votre précieux cadenas vert. Pour lui c’est TOUT ou RIEN !

Si le plugin Really Simple SSL n’a pas fait son boulot, dans ce cas une recherche de votre url en HTTP dans le code source de votre thème (en local via un éditeur HTML : notepad++, netbeans, dreamweaver, …) sera nécessaire afin de changer tous les liens manuellement.

N’oubliez pas la sauvegarde !

4/ Mise à jour du fichier Sitemap de votre site/blog

Pensons à Google maintenant et à votre référencement. Éditez votre fichier « sitemap » (à la racine de votre site) et modifiez les urls, puis replacez-le en ligne.

5/ Mise à jour du fichier robots.txt

Même joueur joue encore ! Ouvrez votre fichier robots.txt (qui se trouve à la racine de votre site aussi) et modifier toutes les urls de HTTP vers HTTPS, replacez-le ne ligne

6/ Mise à jour de Google Search Console

C’est moins drôle.  Google Search Consol (GSC pour les intimes) indexe toujours votre site en HTTP.

Sur  GSC, sélectionnez le projet à modifier, puis cliquez sur la petite roue/engrenage en haut à droite de votre console.

Cliquez sur « Changement d’adresse » et suivez les étapes avec attention.

Créez une nouvelle propriété pour votre blog en HTTPS, puis validez un  » changement d’adresse » de l’ancienne propriété (http) vers le nouvelles (https).

N’oubliez pas de vérifier le contenu (et au besoin d’uploader à nouveau) vos fichiers robots.txt et sitemap avec votre nouvelle url (https).

7/ Mise à jour de Google Analytics

Ici, c’est plus simple, enfin dans l’absolu. Sur votre admin de GA, rendez-vous sur « Administration » (tout en bas à gauche), puis « Paramètres de la propriété » du projet sélectionné et choisissez « https » dans le champ URL prévu à cet effet.

Si rien ne se passe, il vous faudra recréer une entrée spécifique à votre site en « https ».

Comment modifier son url dans Google Analytics ?

Remarque : pour GSC et GA, il vous faudra patienter quelques jours à quelques semaines, pour que Google (et ses robots) enregistre vos modifications et affiche à nouveau vos données, donc pas d’inquiétude.

8/ Mise à jour de tous vos services tiers

Listez tous les services ou affiliations dont vous dépendez :

  • services de statistiques autres que Google Analytic,
  • Newsletters (MailCHimp, Aweber, Sarbacane, …),
  • Affiliation et publicité (Google Adsense, régies, flux vidéo, …),
  • Gravatar / Avatar,
  • Forums,
  • Boutons, liens et services de partage vers les réseaux sociaux,

passage en https, modifier son url sur gravatar

Et en avant la musique, modifiez moi tout cela en notant chaque étape dans un bloc note pour ne rien oublier.

9/ Mise à jour de vos boîtes email de messagerie

GMAIL/INBOX (entre autre) permettent d’importer des boites mails externes via POP/IMAP.

Dans l’admin de votre webmail / logiciel de messagerie, changez l’url de votre site pour recevoir à nouveau vos emails, sinon il resteront sur le webmail de votre hébergement.

10/ Test de votre certificat de sécurité

Personne ne vous dira si votre travail est bien fait, sauf QUALYS’SLL LABS ! Ce service en ligne vous listera toutes les erreurs de parcours avec une note bonus sur la sécurité de votre site Web. En cas d’erreur, revenez en arrière et réévaluez votre site. Bon courage !

Rapport du certificat de sécurité SSL sur un blog sur QUALYS'SLL LABS

Je suis bon élève, j’ai un bon A tout en vert…

11/ Mais pourquoi cela ne fonctionne pas (pas de cadenas vert et/ou message d’erreur)

Je n’ai pas de recette miracle, mais si vous avez tout suivi point par point, il se peut que :

  • certaines ressources mixtes (du thème, plugin, admin, …) n’ont pas été modifiées,
  • certaines ressources mixtes (du thème, plugin, admin, …) ne sont pas sur votre serveur mais sur un hébergement externe NON SECURISE !
  • certains plugins peuvent provoquez des erreurs. Si elles sont visibles (messages d’erreur sur votre page), faites une recherche Google avec les termes. Généralement vous trouverez la solution. Au besoin, désactivez le plugin impliqué (ou un plugin à la fois) et vérifiez à nouveau,
  • Votre hébergeur n’accepte pas les certificats gratuits, dans ce cas passez sur un certificat payant ou changer d’hébergement,

Sur ce, bon courage, c’est à votre tour maintenant.

Rendez-vous sur Hellocoton !

Leave a Reply