technical
Activer HSTS
MetricSpot recherche un en-tête Strict-Transport-Security. HSTS force les navigateurs à utiliser HTTPS à chaque visite, refermant la fenêtre d'attaque par rétrogradation laissée ouverte par HTTPS seul.
Ce que vérifie ce contrôle
Inspecte les en-têtes de réponse HTTP pour Strict-Transport-Security (HSTS). Cette directive demande à chaque navigateur de refuser les connexions HTTP simples vers votre domaine pendant toute la durée du max-age.
Pourquoi c’est important
Même avec HTTPS activé, la toute première requête d’un nouveau visiteur passe généralement en clair — il tape votredomaine.com et le navigateur tente HTTP. Cette première requête est une fenêtre pour les attaques par rétrogradation (man-in-the-middle de type sslstrip sur un Wi-Fi hostile).
HSTS referme cette fenêtre. Une fois qu’un navigateur a vu un en-tête HSTS valide, il réécrit automatiquement chaque future requête en HTTPS pour toute la durée du max-age, en ignorant les URL http:// tapées par l’utilisateur.
Comment le corriger
Envoyez l’en-tête sur chaque réponse HTTPS. Une valeur de production sûre :
Strict-Transport-Security: max-age=31536000; includeSubDomains
nginx :
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
Apache :
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
Cloudflare : SSL/TLS → Edge Certificates → HTTP Strict Transport Security (HSTS) → activer, fixer max-age à 12 mois, activer Include subdomains.
Une fois sûr de votre configuration, ajoutez ; preload et soumettez votre domaine à la liste de préchargement Chrome — voir la page HSTS preload pour les prérequis.
Questions fréquentes
Quel max-age dois-je utiliser ?
Commencez par max-age=300 (5 minutes) pendant les tests, puis montez à 31536000 (un an). HSTS preload exige au moins un an.
HSTS me bloque-t-il si HTTPS casse ?
Oui — c’est le but. Si votre certificat expire ou si votre config TLS casse, les utilisateurs qui ont déjà visité votre site ne peuvent plus l’atteindre en HTTP comme repli. Renouvelez les certificats de manière fiable (Let’s Encrypt + timer systemd) et surveillez les expirations.
Et si je n’ai pas le contrôle des sous-domaines ?
Retirez includeSubDomains. Le contrôle passe quand même avec juste max-age, mais vous perdez la protection sur *.votredomaine.com. Vous ne pouvez pas vous inscrire au preload sans includeSubDomains.
Sources
Dernière mise à jour 2026-05-11