http, https. Mais c'est quoi ça ? 🤨
pexels.com"Vérifie que l'adresse du site commence bien par https et non http !" Ne le dit-on pas assez souvent dans les médias !? Voilà une règle de base facile à suivre. D'autant plus lorsqu'on comprend ce que cela signifie.
- SOMMAIRE
- HTTP ?
- HTTPS ?
- un cryptage des données
- le contrôle d'un certificat de validité
- un meilleur référencement
- un gain de confiance pour le visiteur
- Les certificats SSL/TLS
- Installation
- Les types de certificats
- Let's Encrypt
- Rediriger HTTP vers HTTPS
L'url d'un site visité est affichée dans la barre d'adresse de ton navigateur. Elle respecte une norme bien établie qui impose un code mystérieux en son début.
Il n'est plus beaucoup mis en avant par les navigateurs et il n'est pas utile de le saisir pour trouver le site. Il s'agit pourtant d'une information de sécurité non négligeable.
Visite ton site préféré, clique sur l'adresse et tu constateras qu'elle commence par http ou plus probablement par https. Mais bon sang, qu'est ce que ça signifie exactement ?
HTTP ?
HTTP signifie HyperText Transport Protocol.
Ce protocole de communication s'assure que les blocs de données - constituant la requête d'ouverture d'une page et la page en retour - sont correctement transmis à travers le web, du navigateur vers le serveur et inversement.
En transposant cela à un voyage aérien, il s'assure que l'avion se déplace bien d'un point A à un point B sans encombre.
Il sécurise donc le transport des passagers. Par contre, aucune sécurité n'est assurée quant à leur identité.
Avec HTTP, c'est la même chose. Rien n'empêche un pirate d'intercepter - on parle alors de l'attaque de l'homme du milieu - les données transmises, de les lire et de les remplacer par d'autres.
HTTPS ?
Le S ajouté à HTTP signifie Secure.
Le transport est assuré de la même manière mais une couche logicielle a été ajoutée pour garantir la sécurité des données. Cela se traduit par :
un cryptage des données
Les informations transmises sont systématiquement cryptées.
Ainsi, un code bancaire ou un mot de passe peuvent toujours être interceptés mais ils ne sont plus lisibles directement.
le contrôle d'un certificat de validité
Le serveur du site produit un certificat de validité, obtenu auprès d'un organisme certificateur, avant toute transaction.
Par défaut, un site nouvellement créé n'est pas sécurisé. Il faut ajouter un certificat TLS (anciennement SSL) et l'adjoindre au domaine du site. La plupart des hébergeurs le font automatiquement.
Lors de l'achat d'un hébergement, il vaut donc mieux vérifier si le certificat SSL/TLS est bien compris dans le prix proposé. Il est possible de s'équiper de certificats gratuits garantis par Let's Encrypt, ceux-ci sont toutefois un peu moins sûr.
un meilleur référencement
Même si cela n'a pas été officiellement validé par Google, il semblerait que posséder un certificat SSL/TLS améliore sensiblement les résultats SEO, donc le référencement d'un site.
Autrement dit, Google privilégierais les sites https dans les résultats de recherches.
un gain de confiance pour le visiteur
Tous les médias conseillent de vérifier l'existence de l'information https devant l'url du site visité.
La plupart des navigateurs ajoutent clairement l'indication "Non sécurisé" devant l'url.
L'internaute est donc aujourd'hui moins confiant envers un site http, ce qui peut l'inciter à passer son chemin même si le site ne demande aucune information sensible.
Les certificats SSL/TLS
Une méthode simple pour savoir si un certificat est installé est de taper l'adresse du site en la précédant de https:// .
Lorsque tout est en place, la page d'accueil du site s'ouvre et un cadenas fermé est généralement affiché devant l'url.
Installation
La précédure d'installation varie selon l'hébergeur mais, en général, le centre de contrôle indique clairement ce qu'il faut faire : cliquer sur un bouton, par exemple, pour vérifier le certificat SSL. Il faut ensuite patienter un peu car l'obtention du certificat n'est pas immédiate.
Les types de certificats
Certificat à validation de domaine (DV) - Gratuit et payant
Niveau de sécurité le plus bas.
Est seulement vérifié si le demandeur est en possession du domaine.
Les informations de l'entreprise ne sont pas contrôlées.
Le certificat est donc transmis rapidement à un coût modéré, voir gratuitement.
Ces certificats sont adaptés à des sites où la sécurité n'est pas une priorité absolue (blog, site vitrine, portfolio).
Certificat à validation d'organisation (OV) - Payant
Des informations supplémentaires sont vérifiées comme par exemple le registre du commerce.
L'obtention s'&vère plus couteuse mais offre un degré de sécurité supplémentaire.
Il est indiqué dans le cas de site où des transferts de données non sensibles sont effectués.
Certificat à validation étendue (EV) - Payant
Les contrôles sont encore plus étendus et restrictifs.
Coûts et sécurités sont plus élevés.
Ils sont adaptés aux sites collectant des données bancaires ou autres informations aussi sensibles.
Let's Encrypt
L'association à but non lucratif **Let's Encrypt** fournit gratuitement des certificats de type DV.
On peut leur reprocher d'être utilisés par des hackers pour rendre leurs sites - de phishing entre autres - plus sécures.
Mais si tu n'es pas un hacker et que tu disposes d'un hébergement gratuit, c'est mieux que pas de certificat du tout.
Rediriger HTTP vers HTTPS
A ce stade, le site est toujours accessible avec HTTP.
Malheureusement, de nombreux internautes ne tapent pas l'adresse entière avec https://. Dans ce cas, http:// est généralement utilisé par défaut.
Il ne faut donc pas oublier de rediriger systématiquement toutes les adresses http vers https.
Si le gestionnaire de contenu (CMS) utilisé ne le prévoit pas déjà, cela devient un peu plus technique car il faut modifier le fichier .htconfig situé à la base du site en y ajoutant le texte suivant :
RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Et bien entendu, s'il s'agit d'une refonte de site, il vaut mieux modifier en interne et en externe toutes les url menant vers le site en remplaçant http par https.