Ai-je besoin d'un certificat SSL générique pour l'inclure dans la liste de préchargement HSTS?

9

Je souhaite soumettre mon site personnel à la liste de préchargement Chrome HSTS .

Le site dit:

Pour être inclus dans la liste de préchargement HSTS, votre site doit:

  • Avoir un certificat valide.
  • Redirigez tout le trafic HTTP vers HTTPS - c'est-à-dire uniquement HTTPS.
  • Servir tous les sous-domaines via HTTPS.
  • Servir un en-tête HSTS sur le domaine de base:
    • L'expiration doit être d'au moins dix-huit semaines (10886400 secondes). Le jeton includeSubdomains doit être spécifié. Le jeton de précharge doit être spécifié. Si vous servez une redirection, cette redirection doit avoir l'en-tête HSTS, pas la page vers laquelle elle redirige.

Est-ce à dire que mon certificat doit être valide pour tous les sous-domaines, ou seulement qu'ils sont disponibles / servis via HTTPS? (J'ai un certificat pour sub.example.com, mais pas la racine.)

Puis-je appliquer à la liste de préchargement HSTS avec un sous-domaine, comme sub.example.com?

Kevin Burke
la source

Réponses:

5

Tous les sous-domaines doivent-ils utiliser HTTPS?

Techniquement, pour être inclus, seul le domaine racine doit utiliser HTTPS, mais une fois que vous êtes inclus, tous les sites sous le domaine racine doivent utiliser HTTPS, sinon la connexion échouera, donc pratiquement vous souhaiterez que tous les sous-domaines utilisent HTTPS.

Puis-je postuler à la liste de préchargement HSTS avec un sous-domaine, comme sub.example.com?

Non, si vous essayez de tester un sous-domaine, vous obtiendrez l'avertissement suivant

example.jrtapsell.co.ukest un sous-domaine. Veuillez précharger à la jrtapsell.co.ukplace. (En raison de la taille de la liste de préchargement et du comportement des cookies dans les sous-domaines, nous n'acceptons que les soumissions automatisées de listes de préchargement de domaines enregistrés entiers.)

La façon dont cela est vérifié est via une liste de suffixes publique, comme celle-ci: https://publicsuffix.org/list/

Dois-je utiliser un certificat générique pour demander la liste de préchargement?

Non, tant que la configuration SSL est valide, vous pouvez postuler, le type de certificat n'a pas d'importance.

jrtapsell
la source
3

Bien que je ne l'ai pas essayé personnellement, après avoir lu la norme HSTS ( RFC 6797 ), j'interprète / comprends ce qui suit:

  • Si le domaine parent est conforme HSTS, il n'est pas obligé mais peut appliquer la stratégie pour que les sous-domaines soient également conformes HSTS en émettant la directive includeSubDomains dans l'en-tête HTTP STS.

  • Si le domaine parent n'est pas compatible HSTS, cela n'empêchera pas un sous-domaine d'être conforme HSTS. Un sous-domaine doit pouvoir fonctionner pleinement avec HSTS à condition qu'il émette les en-têtes HTTP appropriés et fonctionne correctement sur https://subdomain.example.com/ .

richhallstoke
la source
3

Il n'est pas obligatoire d'avoir un certificat SSL générique pour l'inclusion dans la liste de préchargement HSTS.

Si vous avez un seul domaine, vous pouvez utiliser n'importe quel certificat SSL validé par domaine pour l'inclusion dans la liste de préchargement HSTS plutôt que d'utiliser le certificat SSL générique.

Jake Adley
la source
1
Bien que je pense que cela est vrai, avez-vous une référence pour le sauvegarder?
Andrew Lott
1

Il est nécessaire d'inclure tous les sous-domaines en tant que SSL pour entrer dans la liste de préchargement comme ici https://hstspreload.appspot.com/

  1. Avoir un certificat valide.
  2. Redirigez tout le trafic HTTP vers HTTPS - c'est-à-dire uniquement HTTPS.
  3. Servir tous les sous-domaines via HTTPS.
  4. Servir un en-tête HSTS sur le domaine de base:
    • L'expiration doit être d'au moins dix-huit semaines (10886400 secondes).
    • Le jeton includeSubdomains doit être spécifié.
    • Le jeton de précharge doit être spécifié.
    • Si vous servez une redirection, cette redirection doit avoir l'en-tête HSTS, pas la page vers laquelle elle redirige.

Cela signifie-t-il que vous avez besoin d'un caractère générique? Nan. Vous pouvez obtenir des certificats SSL individuels pour chaque sous-domaine. Ce serait probablement la route la moins chère. Vous pouvez choisir un caractère générique, mais jusqu'à ce que vous ayez plus de 5 sous-domaines à protéger, cela ne vaut pas la peine financièrement. Dans tous les cas, tous les sous-domaines doivent être en mode HTTPS si vous souhaitez être préchargé.

En utilisant cette pensée, si vous utilisez un sous-domaine en tant que racine, vous devrez protéger le sous-domaine du sous-domaine de la même manière :) Ou bien sûr, en arrière également, vous ne pouvez pas déclarer HSTS sur un sous-marin sans protéger le TLD racine.

dhaupin
la source
Donc, pour être clair, je ne pourrais pas soumettre sub.example.com si example.com n'a pas validé avec SSL.
Kevin Burke
@KevinBurke C'est bien Brotha. C'est comme une relation parent à enfant qui sort du TLD. Je ne sais pas si sub.example nécessiterait cependant un SSL TLD (je n'ai jamais eu à HSTS un sous sur un sous). Je suppose que ce serait depuis sa politique basée sur l'autorité / portée du domaine "racine".
dhaupin
@KevinBurke Notes: Assurez-vous également que votre cache HSTS dispose de plus de 180 jours pour passer Quelys / PCI et que tout SSL que vous achetez est RSA2 (56). Si vous décidez de ne pas précharger les sous-marins, définissez un cache de 0 pendant une semaine ou 2 pour effacer les clients avant de supprimer l'indicateur de précharge.
dhaupin