Blog de web-eau.net

D'après un article publié le 06 août 2014 par Zineb Ait Bahajji et Gary Illyes, analystes Webmaster Trends chez Google, le HTTPS favoriserait le ranking SEO. En effet, le caractère "sécurité" d'un site est un des critères primordiaux aux yeux du géant de Mountain View. D'ailleurs, vous n'y avez sans doute pas prêté attention jusqu'ici mais le HTTPS est déjà en vigueur sur Google+, Gmail, Google Drive, Youtube... Je ne suis pas devin mais je crois que l'on nous montre le chemin à suivre !

Afin d'avoir une vue aussi complète que possible, je vous propose de faire le tour de cette question au travers d'un tutoriel consacré au HTTPS. Pour simplifier, le HTTPS est une combinaison du HTTP avec une couche de chiffrement SSL (ou TLS). Nous verrons dans un premier temps que cela implique et ensuite, comment le mettre en oeuvre sur votre site Joomla!

Joomla! et le HTTPS

Joomla! et le HTTPS

Pourquoi utiliser le HTTPS sur mon site ?

Le protocole TLS (anciennement SSL jusqu'en 2001), c'est ce petit cadenas qui est apparu sur les pages Web depuis Netscape 2.0 en 1996. D'une manière générale, on a prit l'habitude de croire que ce type de protocole est réservé aux sites e-commerce, aux sites financiers et/ou sensibles alors qu'en fait, n'importe quel site Internet peut en bénéficier, y compris votre site Joomla!. Vous n'avez même pas besoin d'installer des extensions supplémentaires puisque cette fonctionnalité est intégrée nativement dans pour Joomla!. Vous pouvez donc l'activer dès maintenant pour proposer vos utilisateurs une navigation plus sécurisée.

Je n'ai rien de spécial à protéger

Sans doute mais n'oubliez jamais qu'une des données les plus importantes de votre site Joomla! sont votre identifiant et votre mot de passe pour accéder au backend. Si vous n'utilisez pas au minimum le protocole SSL, des personnes malveillantes peuvent tenter de compromettre votre site en dérobant vos accès. Ensuite, ils leur suffit de modifier le mot de passe et alors, votre site vous est définitivement perdu.

Ok, quel est le risque ?

Voyons cela plus en détail. Quand une personne s'inscrit ou s'identifie sur votre site, ses identifiants et mot de passe sont envoyés par Internet au serveur. C'est à ce moment précis que peuvent être interceptés le nom d'utilisateur et le mot de passe, c'est à dire n'importe où entre le navigateur de l'utilisateur, le routeur sans fil et jusqu'au serveur lui-même.
Cependant avec la généralisation des réseaux Wi-Fi gratuits dans certains lieux publics (les restaurants et les cafés, par exemple), ces données peuvent être interceptées dès la sortie de l'ordinateur et avant qu'elles n'arrivent sur Internet.

Qu'est-ce que l'on peut faire avec les données d'identification de mon site ?

Si vous êtes (super)administrateur, on peut en faire ce que l'on veut : c'est un piratage complet qui vous attend.
Pour les utilisateurs, la sur-utilisation du mot de passe est un problème extrêmement répandu en sécurité informatique. Vous ne pensez sans doute pas que ces données puissent être précieuses mais elles peuvent l'être si par exemple, un de vos utilisateurs a le même mot de passe sur tous les sites où il est enregistré : un site e-commerce, son hébergeur, ou n'importe quel site plus ou moins sensible. Vous comprenez alors l'intérêt et la valeur que peuvent représenter ce type d'informations pour des personnes indélicates.

Comment le protocole TLS peut-il réduire cela ?

C'est finalement assez simple, en fait. Dans le module de connexion de Joomla!, il est un réglage "Connexion cryptée". Lorsque vous avez un certificat SSL activé sur votre site, ce paramètre cryptera les données de connexion dans le navigateur de l'utilisateur avant qu'elles ne soient envoyé sur Internet à votre serveur. C'est tout!

Les cookies de session sont également vulnérables

Quand un utilisateur se connecte en frontend ou au backend de votre site Joomla!, un cookie de session est envoyé dans le navigateur pour identifier cet utilisateur. Ce cookie est transmis à chaque chargement de la page afin que Joomla! identifie l'utilisateur qui consulte la page. Ce cookie leur accorde alors les privilèges en fonction de leur rang (utilisateur, auteur, administrateur, etc).

Bien que le cookie ne soit pas réellement une menace en soi car il finira par expirer, c'est toujours quelque chose qui peut être intéressant de sécuriser, en fonction du contenu de votre site. En utilisant simplement le protocole TLS sur votre site, ce cookie sera lui aussi crypté. Encore une fois, sécuriser ce détail est très simple : il suffit d'activer le paramètre "Forcer SSL" dans la configuration globale de Joomla!. Réglez-le sur "Administration seulement" ou "Administration et site".
Si vous avez un certificat SSL, il n'y a aucune raison valable de laisser le réglage sur "Aucun". Vous devriez au minimum choisir "Administration seulement», ce qui sécurisera le cookie de session de votre backend, empêchant ainsi l'accès à toute la partie "administration" de votre site.

Vraiment, c'est possible de faire ça ?

En 2010, un addon de Firefox nommé Firesheep a été mis en circulation. Cet addon balaye automatiquement un réseau Wi-Fi et permet d'afficher et d'utiliser des cookies de session pour des sites comme Facebook et Google. Il n'y a peut-être pas d'addons spécifiques pour Joomla! mais le risque est bien réel.

Quels sont les inconvénients ?

Les principaux inconvénients d'un certificat SSL sont le coût et un possible impact sur la performance du site. En fonction de votre hébergeur, un certificat SSL coûte en moyenne 40€ par an. Vous avez également la possibilité d'en acheter un auprès d'un fournisseur tiers, à condition toute fois que votre hébergeur accepte de l'installer ensuite sur son serveur.

Si le prix est acceptable selon le type de contenu de votre site, l'autre point à considérer est que ce certificat peut engendrer une baisse de performance. En effet, les images, les fichiers Javascript, les fichiers CSS seront cryptées. De ce fait, le navigateur de l'utilisateur ne sera pas en mesure de les mettre en cache. Cela signifie qu'il y aura plus de demandes par page. Cela dit, l'impact devrait cependant être minime, compte tenu de votre hébergement et de la volumétrie de trafic de votre site.

Pour quoi, pour quoi ?

Soyons clair, cela ne s'adresse pas à tous les sites en circulation. Si vous avez un site vitrine, le protocle HTTPS n'est pas fait pour vous. Idem pour un site e-commerce puisque la partie "paiement" est gérée par la banque. Reste les sites dits communautaires où chaque membre s'inscrit pour accéder au contenu (forums, réseaux sociaux, sites de rencontre, etc). Dans ce cas, on peut effectivement envisager la mise en place d'une protection des données personnelles par cryptage. Mais opter pour le HTTPS rien que pour céder aux sirènes du référencement de Google ne me semble pas être une raison valable.

Joomla! et le HTTPS

L'installation et l'activation

Dans cette seconde partie, nous allons voir en détail, comment configurer et activer le HTTPS dans Joomla!

Pour exécuter ce tutoriel, on suppose que vous avez déjà installé le protocole SSL sur votre serveur d'hébergement. Si non, vous devez d'abord acheter un certificat SSL (Secure Socket Layer) auprès de votre hébergeur ou auprès d'un revendeur de certificat. Bien que le protocole de cryptage SSL ne protège pas le site en lui-même car il ne chiffre que le trafic vers et depuis le serveur, il peut empêcher l'espionnage et protège les données sensibles de votre site.

Si vous avez un site e-commerce de type boutique en ligne, il est particulièrement important d'activer le HTTPS dans votre site Joomla! pour sécuriser les données des cartes de crédit, le contenu confidentiel, les mots de passe et toutes les données sécurisées. Une bonne utilisation de ce certificat SSL vous aidera à gagner la confiance de vos clients et à vendre plus.

Les versions 2.5 et 3 de Joomla! ont grandement amélioré la gestion du SSL. L'ajout d'un certificat SSL sur votre Joomla! permet de vous connecter avec le protocole sécurisé HTTPS au lieu de la norme HTTP. Vous pouvez activer ce protocole depuis le panneau d'administration pour l'ensemble du site (recommandé) ou pour certaines pages.

Activation sur l'ensemble du site

Ouvrez le panneau d'administration puis ouvrez "Système", puis "Configuration". Dans l'onglet "Serveur", vous avez le paramètre "Forcer SSL" qui propose 3 choix :

  • Aucun : par défaut, le SSL n'est pas activé
  • Administration : le SSL ne sera activé que sur la partie administration du site
  • Administration et site : le SSL sera activé sur l'ensemble du site.

Choisissez cette dernière option, puis enregistrez.
Si le protocole SSL n'est pas activé pour votre domaine auprès de votre hébergeur, cela va générer immédiatement une erreur en sauvegardant.

Important: la configuration de Joomla! vous permet de configurer le SSL mais si un internaute arrive sur une page de votre site via le préfixe HTTP, il ne sera pas automatiquement redirigé vers la page HTTPS correspondante. Pour cela, nous allons devoir modifier le fichier configuration.php à la racine de votre site.

Ouvrez configuration.php avec votre éditeur de texte préféré et repérez la ligne :

var $live_site =”;

remplacez-la par :

var $live_site = 'https://www.mon-site.com';

Ensuite, ouvrez le fichier .HTACCESS et ajoutez ces lignes à la fin du fichier :

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Activation sur certaines pages

Pour cela, vous devrez utiliser un plugin comme Yireo SSL Redirection Joomla Extension Directory qui fera parfaitement l'affaire. Qui plus est, il est gratuit et bénéficie d'excellents rating.

N'oubliez pas avant d'expérimenter le SSL que cela risque de réduire les performances de votre site.

Conclusion

Nous l'avons vu, cette mise en application demande une certaine technicité et votre webmaster sera à même d'effectuer cette opération pour vous. Cependant, le protocole HTTPS s'adresse surtout à un certain type de site. Cela est intéressant à mettre en place dès lors qu'il y a une connexion avec des données privées (identifiant et mot de passe). Cela permet d'éviter que ces données confidentielles transitent sans cryptage sur Internet. Les gros sites communautaires (avec ou sans forum) ont donc intérêt à s'y intéresser. Pour les sites e-commerce, c'est la partie "paiement" qui doit être sécurisée. Cette sécurisation incombe aux établissements bancaires, pas au commerçant. Enfin, pour la majeure partie des sites (type vitrine), il n'y a AUCUN intérêt à passer au HTTPS, même pour des raisons de référencement.

L'argument avancé par Google pour favoriser la sécurité des sites et ensuite, favoriser leur référencement est, selon moi, un argument non recevable. D'abord parce que tous les sites n'ont pas besoin de ce type de sécurisation (si vous ne recueillez pas de données personnelles ou financières, je n'en vois pas l'utilité) et parce qu'en terme de sécurité, il existe d'autres outils qui eux, font le job. Donc, l'argument sécuritaire (assez prisé en ce moment...) ne me semble pas suffisant pour franchir le pas.
Par ailleurs, Google stipule que cette mise en avant du HTTPS aura "moins de poids que d’autres signaux tels que le contenu de haute qualité". Sur la base des tests effectués par Google, le moteur de recherche estime que cette nouveauté a un impact sur "moins de 1% des requêtes mondiales", mais qu’il peut renforcer le signal en cas de besoin. Bref, l'impact sera vraiment à la marge.

Je ne saurais trop vous conseiller de prendre avis auprès de votre webmaster pour savoir ce qu'il convient de faire. Avant de se ruer sur le premier certificat SSL qui passe, il me semble plus prudent de voir comment va évoluer cette tendance et si elle sera un jour, devenue la norme. Pour le moment, je reste prudent et attentiste.


 

A PROPOS DE L'AUTEUR :
Webmaster freelance passionné par Joomla depuis 2007, Daniel défend la veuve et l'orphelin du web en créant des sites respectueux du W3C. Fort d'une expérience de plusieurs années, il partage ses connaissances avec les néophytes aussi bien qu'avec les personnes plus expérimentées.

1 1 1 1 1 1 1 1 1 1 Rating 0.00 (0 Votes)

Ajouter vos commentaires

Poster un commentaire en tant qu'invité

0
Vos commentaires sont soumis à la modération de l'administrateur.

Participant à cette conversation

  • Jean

    Bonjour,
    J'ai monté un site avec joomla 3.3.6 que j'ai d'ailleurs installé très bien sur le serveur la première fois. J'ai par la suite voulu sécuriser en utilisant le protocole https. Dans joomla, j'ai cliqué sur le menu "Système", puis "Configuration". Dans l'onglet "Serveur", j'ai choisi "Administration et site" pour l'élément "Forcer SSL". Sans configurer le fichier .htaccess comme le suggérait mon tuto, Je suis allé visiter le site qui est passé en https mais rediriger ailleurs. J'ai donc remis mon dossier d'installation puisque même le coté administration était redirigé. La procédure d'installation lancée, je me retrouve coincé au niveau de la restauration de la base de données. En fait, que les paramètres de connexion à la bd soient bonnes ou mauvaises, j'obtiens toujours le message: Clé de base de données invalide
    De quel clé s'agit-il et comment faire pour la supprimer et poursuivre mon installation?
    Merci d'avance pour votre précieuse aide.

  • En réponse à: Jean

    Bonsoir Jean,

    Merci pour votre message.
    Vous trouverez les réponses nécessaires à votre question sur le forum de Joomla.fr

  • Aliona

    Bonjour, en passant mon site sous SSL je n'arrive plus à me connecter à "administrator". Je reçois l'erreur "Alerte
    Le mot de passe ne correspond pas au nom d'utilisateur, ou vous n'avez pas encore de compte". Avez-vous une idée la-dessus ? Merci d'avance. Aliona

  • En réponse à: Aliona

    Bonjour Aliona,

    Merci pour votre message.

    Étape n°1 : récupérer l'accès au panneau d'administration de votre site.
    Pour cela, ouvrez votre client FTP (FileZila, p.ex) et connectez-vous au serveur où est hébergé votre site Joomla.
    Récupérez sur votre ordinateur le fichier configuration.php qui est à la racine du site.
    Ouvrez le avec votre éditeur de texte (Notepad++, p.ex) et repérez la ligne suivante :
    - public $force_ssl = 'x'; <-- ici, vous remplacez la valeur indiquée (1 ou 2) par 0
    Vous enregistrez la saisie et vous renvoyez le fichier configuration.php sur le serveur.
    Maintenant, vous avez désactivé le SSL mais avez de nouveau accès à l'administration de votre site.

    Étape n°2 : activer et paramétrer correctement le SSL
    Installez l'extension suivante : http://extensions.joomla.org/extensions/extension/site-management/url-redirection/yireo-ssl-redirection
    La documentation est ici (en anglais) : https://www.yireo.com/tutorials/joomla/joomla-extension-tutorials/1538-using-ssl-redirect-in-joomla

    Vous pouvez également lire le tutoriel suivant : http://www.web-eau.net/pour-continuer/40-la-securite/224-activer-le-protocole-ssl-avec-joomla

    J'espère que cela vous sera utile ;)

    Dernière édition du commentaire il y a environ 2 ans par Daniel
  • Nice Job.
    Merci pour ce tuto très sympa.
    Je ne sais pas si les liens vont m'aider, mais, sans aucun doute, cela va m'aider à mieux y voir.
    Pour le moment, https semble disponible, mais, quand j'active le HTTPS, je perd mes styles css en Front, et, idem, pas de login fonctionnel. Snifeu. Je croise les doigts pour trouver les bonnes informations. Je vais consulter tes documents de référence.
    A bientôt.

    Dernière édition du commentaire il y a environ 2 ans par Daniel
  • Pour l’utilisation des fonctions " notifications push " le https est fortement recommandé voir obligatoire !

  • Bonsoir Daniel et merci pour ce post, je viens tout juste de passer Alexeo.fr en HTTPS. Je pensais qu'il suffisait juste de faire la manipulation depuis la partie configuration de l'admin mais non. Heureusement que ton post était là ! Bonne soirée.

  • Merci pour ton passage, Monsieur Alexeo :)

  • Résolu pour le problème des css qui ne s'affichent pas avec https.
    Je ne savais pas encore pour le contenu mixe qui ne permet pas de valider le https si le code source de la page fait appel à des liens qui ne sont pas https , exemple , intégrer une css avec http:// sans le s , ou encore faire appel à une image depuis cette css, appelée avec http://

    Si les liens sont tous en https, tout est fonctionnel. Cadenas au vert.

  • Bonjour, je déterre ce post car en 2017 apparemment google favoriserait réellement les sites en https.
    Mon hébergeur me propose l'installation du SSL gratuitement du côté serveur.
    De mon côté avec vos explications cela me parraît très simple.
    Par contre, je me pose la question de mon référencement. Est-ce que juste avec ces modifications je ne vais pas perdre en positionnement ? N'y a t-il pas d'autres choses à mettre en place ?

    Dernière édition du commentaire il y a environ 1 an par Daniel
Charger plus

web-eau.net is not affiliated with or endorsed by the Joomla! Project or Open Source Matters. The Joomla! name and logo is
used under a limited license granted by Open Source Matters the trademark holder in the United States and other countries.