Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Outils / méthodes de débug sur la validation de la chaine de certification ssl

2 réponses
Avatar
Daniel Caillibaud
Bonjour,

J'ai eu r=E9cemment un pb avec un site https joignable normalement avec un =
navigateur (certif
valide) mais pas curl qui r=E9pond "unable to get issuer certificate"

J'ai alors remis =E0 jour la liste de certificats que j'utilise, compil=E9e=
manuellement =E0 partir
des certifs de mon iceweasel 26 (m=E9thode
https://github.com/bagder/curl/blob/master/lib/firefox-db2pem.sh), mais =E7=
a change rien.

test=E9 avec (le site fait du tls1)
curl -1 --cacert ca-bundle.crt https://www.parisclassenumerique.fr/
mais aussi=20
wget --secure-protocol=3DTLSv1 --ca-certificate ca-bundle.crt
ou
openssl s_client -host www.parisclassenumerique.fr -port 443 -verify -deb=
ug -tls1

(je laisse le site concern=E9 parce que c'est mieux de causer sur un exempl=
e r=E9el, j'esp=E8re que
l'admin m'en voudra pas de le faire sur une liste publique, mais c'est pas =
non plus une erreur
de conf tr=E8s grave puisque tous les navigateurs acc=E8dent au site)

https://ssltools.websecurity.symantec.com/checker/views/certCheck.jsp montr=
e bien le certif
interm=E9diaire manquant et propose m=EAme de le r=E9cup=E9rer.

Il commence par MIIGHjCCBQagAwIBAgIQLE mais je le trouve nul part sur ma ma=
chine
(fouill=E9 avec un grep sur /etc/ssl/certs, /usr/share/ca-certificates et
~/.mozilla/firefox/*.default), donc je suppose que je l'ai pas localement.

D'o=F9 deux questions

1) Pourquoi firefox arrive =E0 valider la cha=EEne sans avoir ce certif int=
erm=E9diaire et que
openssl n'y parvient pas ?

2) Quelle m=E9thode permet de parvenir au certif manquant (que symantec aff=
iche) ?

openssl s_client est bavard mais je vois pas comment r=E9cup=E9rer dans sa =
sortie l'info permettant
de trouver le certif interm=E9diaire manquant

Merci

--=20
Daniel

Une cause tr=E8s petite, qui nous =E9chappe, d=E9termine un effet consid=E9=
rable que nous ne
pouvons pas ne pas voir, et alors nous disons que cet effet est d=FB au has=
ard.
Henri Poincar=E9

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/20140207065427.27c2c0a5@quad.lairdutemps.org

2 réponses

Avatar
nb
Le Vendredi 7 Février 2014 06:54 CET, Daniel Caillibaud temps.org> a écrit:


D'où deux questions

1) Pourquoi firefox arrive à valider la chaîne sans avoir c e certif intermédiaire et que
openssl n'y parvient pas ?

2) Quelle méthode permet de parvenir au certif manquant (que sym antec affiche) ?

openssl s_client est bavard mais je vois pas comment récupé rer dans sa sortie l'info permettant
de trouver le certif intermédiaire manquant



Pour la question 2:

locate ca-certificates.crt

exemple de réponse : /etc/ssl/certs/ca-certificates.crt (c'est un fichier qui contient les certificats d'autorités)

puis

openssl s_client -CAfile /etc/ssl/certs/ca-certificates.crt -host www .parisclassenumerique.fr -port 443 -verify -state
^^^^^^^^^^^^^^^^^^^^
valeur récupérée pré cédemment

Ton certificat n'a aucun problème.

Eventuellement faire une mise à jour des certificats auparavant :

update-ca-certificates puis updatedb (au cas où)

Ma réponse reste malgré tout incomplète en ce sens que c e ne devrait pas être nécessaire d'indiquer le CAfile.

Il faudrait creuser du côté de openssl version -d et de c_r ehash, mais ce n'est pas l'objet de ta question

nb

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Avatar
Daniel Caillibaud
Le 07/02/14 à 14:01, "nb" a écrit :
N> > 2) Quelle méthode permet de parvenir au certif manquant (que symante c affiche) ?
N> >
N> > openssl s_client est bavard mais je vois pas comment récupérer dan s sa sortie l'info
N> > permettant de trouver le certif intermédiaire manquant

N> Pour la question 2:
N>
N> locate ca-certificates.crt
N>
N> exemple de réponse : /etc/ssl/certs/ca-certificates.crt (c'est un fich ier qui contient les
N> certificats d'autorités)
N>
N> puis
N>
N> openssl s_client -CAfile /etc/ssl/certs/ca-certificates.crt -host
N> www.parisclassenumerique.fr -port 443 -verify -state ^^^^^^^^^^^^^^^^^^^^
N> valeur récupérée précédemment
N>
N> Ton certificat n'a aucun problème.

Ils ont corrigé la conf du serveur ce matin ;-)
(sont réactif, on leur a signalé le pb hier soir)

Avant il manquait un certif intermédiaire dans la chaîne, c'est ce qu'a ffichait le site de
symantec avec un lien pour récupérer le certif manquant.

C'était pour passer le 1er maillon, de
www.parisclassenumerique.fr
à
VeriSign Class 3 Extended Validation SSL SGC CA


Actuellement, openssl s_client renvoie toujours du

depth=2 C = US, O = "VeriSign, Inc.", OU = VeriSign Trust Network, OU = "(c) 2006 VeriSign,
Inc. - For authorized use only", CN = VeriSign Class 3 Public Primary Cer tification Authority -
G5
verify error:num :unable to get local issuer certificate
verify return:0

mais il se connecte (et les appels curl ou wget fonctionnent).

Si j'utilise le ca-bundle.crt que je me suis fabriqué à partir des cert ifs de firefox, j'ai pas
l'avertissement, mais je vois pas trop comment trouver le certif manquant.

--
Daniel

Bien sûr l'Amérique avait été découverte avant Colomb.
Mais le secret avait été bien gardé.
Oscar Wilde

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/