26 votes

Comment réparer Firefox 59 qui n'accepte plus mon certificat SSL auto-signé sur le virtualhost .dev

Sur mon environnement Apache local, j'ai un site qui nécessite SSL pour le développement, j'ai donc utilisé un certificat auto-signé. Le site local a fonctionné correctement dans Firefox et Chrome jusqu'à présent, mais après avoir mis à jour Firefox en version 59 aujourd'hui, je suis incapable de lui faire accepter l'exception de sécurité (sur Chrome, le certificat auto-signé continue de fonctionner).

Firefox me donne ces informations supplémentaires sur la page bloquée :

... utilise un certificat de sécurité invalide. Le certificat n'est pas digne de confiance car il est auto-signé. Code d'erreur : SEC_ERROR_UNKNOWN_ISSUER

Il n'y a pas d'option pour autoriser l'exception ici comme cela se faisait avant, mais je suis allé dans les Préférences de Firefox sous Certificats, puis dans l'onglet "Serveur" j'ai ajouté une exception pour le domaine local. Le certificat est alors répertorié sous le nom correct du serveur local, les détails affichent mes paramètres de certificat de Émis par et Émis pour étant les mêmes, avec une période de validité valide.

Est-ce que quelqu'un rencontre des problèmes similaires avec FF 59 ou aurait une idée de ce qu'il faut essayer pour que le certificat auto-signé fonctionne de nouveau localement ?


Édition : Je ne vois aucune mention de cela dans les notes de version de FF 59 mais quelque chose dans la nouvelle version fait que tous mes hôtes virtuels locaux sur les domaines *.dev essaient automatiquement d'établir une connexion https (c'est-à-dire que toutes les requêtes http pour *.dev sont automatiquement envoyées vers l'URL https). Peut-être que quelque chose à propos de ce comportement est également ce qui cause ces problèmes pour mes véritables hôtes virtuels https.

20voto

Andy Mercer Points 343

Il y a un moyen simple de contourner cela.

  1. Allez à about:config
  2. Recherchez "network.stricttransportsecurity.preloadlist".
  3. Définissez-le sur false.

AVERTISSEMENT : Cela désactivera entièrement le HSTS. Jetez un œil aux commentaires sur cette réponse pour voir une discussion sur les inconvénients de cette méthode. Je pense personnellement que les avantages l'emportent sur les risques, mais vous êtes responsable de votre propre sécurité.

entrer la description de l'image ici

Édition 2020: Nous avons maintenant un TLD .dev depuis plusieurs années. Il est temps d'arrêter d'utiliser .dev comme URL locale. Cette astuce fonctionne toujours, mais vous vous privez d'une sécurité accrue.

16voto

jturinetti Points 69

Je ne suis toujours pas tout à fait clair sur la façon dont tout cela se connecte exactement, mais comme indiqué dans cette réponse, les domaines .dev sont désormais des TLD officiels. En tant que tel, il semble que les navigateurs imposent une sorte de comportement HSTS et forcent les connexions https. Pour ces TLD, il semble que mon certificat auto-signé n'était plus accepté dans Firefox. Changer mes hôtes virtuels pour utiliser .test a résolu le problème sans avoir à modifier quoi que ce soit dans mes certificats auto-signés.

Il convient de noter qu'avec Firefox, même mes hôtes virtuels sans SSL ont posé problème depuis la version 59 aujourd'hui, car le comportement HSTS semblait forcer le SSL sur les hôtes virtuels que je n'avais pas configurés pour servir via SSL. Sur Chrome, cela fonctionnait encore, mais de toute façon, il est sûr de dire qu'en s'éloignant du TLD .dev désormais officiellement utilisé, on résoudra de nombreux problèmes.

13voto

Sean Aitken Points 231

Le paramètre security.enterprise_roots.enabled défini à true sur la page about:config a résolu ce problème pour moi et a permis à mon certificat auto-signé de fonctionner pendant le développement.

Il y a un peu de discussion sur les mérites de l'activer par défaut ici :
Définir security.enterprise_roots.enabled à true par défaut.

Bien que l'intention de ce drapeau soit de permettre à Firefox d'utiliser le magasin de certificats racines CA de type machine comme source valide pour les autorités de certification, cela a résolu la situation pour mon cas d'utilisation personnel où j'ai un certificat multi-domaines auto-signé que j'utilise localement pour les tests (sujets AltName). Même après avoir ajouté le certificat à la liste des certificats de Firefox, ce n'est que lorsque j'ai activé cette option que le site local pouvait se charger.

0voto

Noam Manos Points 1506

J'ai eu le même problème sur basilisk Web Browser. J'ai essayé de modifier les paramètres du Proxy réseau, ou de modifier les indicateurs "network.stricttransportsecurity.preloadlist" ou "security.enterprise_roots.enabled"... mais cela n'a pas résolu le problème du bouton manquant pour ajouter un certificat pour le site web bloqué. Seul cela a fonctionné :

  1. Allez sur about:support.
  2. Cliquez sur Ouvrir le répertoire de votre profil de navigateur.
  3. Fermez complètement le navigateur.
  4. Modifiez le fichier "SiteSecurityServiceState.txt" dans le répertoire ci-dessus.
  5. Recherchez et supprimez la ligne entière contenant le site HSTS bloqué.
  6. Enregistrez le fichier et rouvrez votre navigateur sur ce site.

-3voto

user138214 Points 31

Je suis allé pour "Let's Encrypt"

https://letsencrypt.org/

Valable uniquement pendant 3 mois à la fois, mais le renouvellement peut être automatisé.

Comme vous pouvez le voir dans les remarques, il y a un piège. Nos domaines de développement et de test s'appellent dev-www.example.com et test-www.example.com. Nous utilisons le certificat générique de production.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X