Page 1 sur 1

Problème sec_error_bad_signature avec CA maison [résolu]

Publié : 01 mars 2011, 17:26
par Grunt
Bonjour à tous,

J'essaie de me créer une autorité de certification perso, pour me signer des certificats persos. Je précise que je n'ai pas de certificat signé par une autorité tierce (même pas CACert, rien).

J'ai suivi ce tuto:
http://artisan.karma-lab.net/node/1153

J'ai donc une autorité de certification, avec laquelle j'ai signé un certificat pour "grunt.fdn.fr".

Ma conf apache est la suivante:

Code : Tout sélectionner

SSLCertificateFile    /etc/ssl/apache/https.grunt.fdn.fr.crt
SSLCertificateKeyFile /etc/ssl/apache/https.grunt.fdn.fr.key
SSLCertificateChainFile /etc/ssl/apache/CertificateChain.txt
Le fichier "CertificateChain.txt" contient tout simplement le .crt de mon autorité de certification, c'est à dire le certificat racine de mon site Web.

J'ai créé un fichier ".der" pour ajouter mon autorité de certification dans mon navigateur, histoire de faire ça bien. Le fichier est visible ici
J'importe cette autorité dans Firefox, et uniquement dans Firefox (pas dans Epiphany ni Konqueror).

Je lance Firefox, je pointe sur https://grunt.fdn.fr, et message d'erreur:

Code : Tout sélectionner

Une erreur est survenue pendant une connexion à grunt.fdn.fr.

Le certificat du pair a une signature invalide.

(Code d'erreur : sec_error_bad_signature)
Il n'y a pas de bouton qui permette d'avoir plus d'infos (comme c'est le cas pour un certificat non reconnu, par exemple), donc impossible de savoir où ça coince.

Si je teste avec Epiphany, il accepte d'accéder à mon site sans poser de problème. Epiphany partagerait-il les CA de Firefox sans le dire? :?
Si je teste avec Konqueror, il signale que ce certificat n'est pas connu, et m'affiche gentiment la chaîne de certification, avec le certificat du site (au nom de https://grunt.fdn.fr), et mon certificat racine.

Comment faire accepter mon certificat par mon Firefox? :mrgreen:

Edit: je viens de faire un test avec Chrome sous Windows, il reconnaît également la chaine de certification. Le problème est bien lié à Firefox.

Re: Firefox n'aime pas mon certificat: sec_error_bad_signat

Publié : 01 mars 2011, 23:28
par Mori

Re: Firefox n'aime pas mon certificat: sec_error_bad_signat

Publié : 02 mars 2011, 11:10
par ~HP
la solution (ou plutôt contournement) si ce n'est pas possible de prévenir l'auteur de la page (ou le matériel qui fournit le serveur web) est de supprimer le certificat du site concerné, la prochaine fois, firefox proposera de le rajouter
Manque de bol, j'ai la même erreur… et à ma souvenance, sur ce Firefox avec un profil récent je n'ai aucun certificat correspondant à grunt.*… à mon avis : mauvaise piste !

Re: Firefox n'aime pas mon certificat: sec_error_bad_signat

Publié : 03 mars 2011, 15:00
par Grunt
Oui, j'ai essayé aussi en supprimant le certificat: même problème.

Et ma chaîne de certification est techniquement valide, mis à part le fait que mon certificat soit autosigné:

Code : Tout sélectionner

openssl s_client -connect grunt.fdn.fr:443

Re: Firefox n'aime pas mon certificat: sec_error_bad_signat

Publié : 03 mars 2011, 15:09
par calimo
C'est donc probablement un bug de Firefox ou de NSS (un surcouche de openSSL si j'ai bien compris).
Est-ce qu'il y a une tentative d'authentification du serveur ? Ce serait alors le bug 479947. Il y a quelques autres bugs qui ne semble pas trop correspondre (pour ce que je connais du SSL). N'hésite pas à en ouvrir un nouveau !

Re: Firefox n'aime pas mon certificat: sec_error_bad_signat

Publié : 03 mars 2011, 16:05
par Grunt
calimo a écrit :C'est donc probablement un bug de Firefox ou de NSS (un surcouche de openSSL si j'ai bien compris).
Fort possible.
Avec Iron (dérivé de Chromium), qui utilise également NSS, je rencontre également des problèmes.

Donc il va falloir que j'ouvre un bug sur NSS.

Comment font les gens qui font des CA, bon sang? :D

Re: Firefox n'aime pas mon certificat: sec_error_bad_signat

Publié : 03 mars 2011, 16:15
par calimo
Ils ont leur certificat racine inclus dans Firefox… :|
Ah ben non, CACert doit avoir un autre truc parce que leurs certificats "passent". Il faut peut-être leur demander ? Parce que là franchement, je doute qu'il y ait des spécialistes poussés de SSL/NSS ici (bien sûr je peux me tromper) :oops:

Re: Firefox n'aime pas mon certificat: sec_error_bad_signat

Publié : 03 mars 2011, 19:28
par Grunt
calimo a écrit :Ils ont leur certificat racine inclus dans Firefox… :|
Ben ouais, mais j'ai inclu le mien aussi, et pourtant il est traité à part. Comprends pas.
Ah ben non, CACert doit avoir un autre truc parce que leurs certificats "passent". Il faut peut-être leur demander ?
Yep, je suis sur leur chan IRC, je ferai un retour ici dès que j'ai trouvé ce qui merde.

Re: Firefox n'aime pas mon certificat: sec_error_bad_signat

Publié : 03 mars 2011, 22:52
par Grunt
Bon, sur le chan de CACert ils ne sont pas très bavards.

TinyCA (une interface graphique de gestion des CA) m'a mis sur une piste: en créant une CA sur une durée X, puis un certificat serveur sur la même durée X quelques minutes après, j'obtiens un certificat serveur qui expire après la CA qui le certifie, ce qui n'est pas très logique.

J'ai donc raccourci la durée du certificat serveur, et... toujours rien.

Iron me dit que la page n'est pas signée et refuse de s'y connecter. Firefox me jette un message d'erreur stupide, et refuse d'aller plus loin. Vous pouvez vérifier: https://grunt.fdn.fr
Ces deux navigateurs s'appuient sur NSS (et l'interface en CLI "certutil" n'est vraiment pas commode :| )

Openssl me dit que c'est bon. Konqueror voit bien la chaîne de certification. J'en déduis que mon certificat est techniquement valide et que NSS présente un bug.

Ça me gaaave..

Allez, j'ouvre un bug report.

Re: Firefox n'aime pas mon certificat: sec_error_bad_signat

Publié : 04 mars 2011, 00:04
par Grunt
Ce bug m'a mis sur la piste:

https://bugzilla.mozilla.org/show_bug.cgi?id=174634
(Comme quoi, toujours lire les bugs avant d'en mettre de nouveaux).

En fait, c'est d'avoir le même nom pour la CA et le certificat serveur, qui met NSS sur une fausse piste: il pense que le certificat serveur est signé par lui-même (vu que le nom est identique pour le certif serveur, et pour son certif 'parent'), donc que c'est un certificat racine.
Enfin, c'est ce que j'en ai compris.

Bon, voilà, ça marche. Merci pour les coups de main. :)

Re: Problème sec_error_bad_signature avec CA maison [résolu

Publié : 04 mars 2011, 09:00
par calimo
Voilà, maintenant j'ai une erreur sec_error_untrusted_issuer et possibilité d'ajouter une exception, ce qui est le comportement attendu !
N'hésite pas à ouvrir un bug sur bugzilla, même si c'est technique et que ça n'a pas une importance capitale pour la majorité des utilisateurs, c'est le genre de trucs qui gagnent à être connus et pourront être corrigés une fois ou l'autre si le problème est clairement compris (comme c'est le cas grâce à toi) :wink:

Re: Problème sec_error_bad_signature avec CA maison [résolu

Publié : 18 mars 2011, 09:36
par Roberto125
Bonjour, 

il s'agit d'un problème récurrent propre aux certificats auto-générés sur les serveurs. 

Afin d'éviter d'avoir ce problème, il est nécessaire de vous munir d'un certificat émis par une Autorité de Certification (comme VeriSign, GlobalSign, thawte, Geotrust, RapidSSL) que vous pouvez acheter sur les sites des Autorités de Certification ou bien auprès des revendeurs à un prix plus intéressant. 

Cordialement,
Equipe Networking4all

Modération : J'ai enlevé le lien, il y a un champ prévu dans le profil.

Re: Problème sec_error_bad_signature avec CA maison [résolu

Publié : 18 mars 2011, 11:31
par ~HP
Roberto125 a écrit :Bonjour, 

il s'agit d'un problème récurrent propre aux certificats auto-générés sur les serveurs.
Et hop, on vient faire sa petit pub… l'air de rien ! :mrgreen: :lol: