Pages : 1
#1 Le 09/06/2013, à 22:28
- phlinux
[Résolu] Problème d'import de pkcs#12 dans firefox
Il m'est impossible d'importer une clef PKCS#12 dans firefox
Je dispose d'un serveur (ubuntu 12.04) sur lequel j'ai crée ma propre autorité CA
J'ai crée sur mon portable (FF 20.0 - ubuntu 11.10 ... oui, la mise à jour est prévue )
une demande de certificat, l'ai signée par mon CA et transformée en pkcs#12 puis retournée au portable.
Sur ce portable avec un dual boot,
- Côté WinXP, l'import dans firefox se passe correctement et après avoir validé l'exception de mon certificat je peux me connecter en https à mon serveur.
- Côté Linux, lors de l'import dans 'Vos certificats' dans firefox et après avoir saisi les mot de passe de sécurité personnelle et celui protégeant la clef privée et le certificat, j'obtiens le message :
L'operation PKCS #12 a échoué pour des raisons inconnues
Ce problème semble être un vieux serpent de mer si j'en juge par le nombre de questions relatives à ce problème sur le net.
J'ai tenté d'explorer les pistes les plus proches de mon problème mais en vain. (non, je n'ai pas installé de TorButton )
J'ai alors tenté les commandes nss3 pour essayer d'avoir des messages un peu plus clairs:
certutil -L -d sql:/home/phl/.mozilla/firefox/z535w55y.default/
ne renvoie que ceci
Certificate Nickname Trust Attributes
SSL,S/MIME,JAR/XPI
alors que devraient être listées ici toutes les clés apparaissant dans firefox
pk12util -d /home/phl/.mozilla/firefox/z535w55y.default -i phl.cert.p12
Enter Password or Pin for "NSS Certificate DB": ***********************
Enter password for PKCS12 file: **************************
retourne :
pk12util: PKCS12 decode import bags failed: Error adding certificate to database.
certutil -A -t "u,u,u" -d sql:/home/phl/.mozilla/firefox/z535w55y.default/ -n "phl" -i phl.cert.p12
retourne :
certutil: could not decode certificate: security library: invalid arguments.
Voilà, maintenant je ne suis pas plus avancé !
Si quelqu'un avait une p'tite idée pour me mettre sur la voie ....
Merci par avance,
PhL
PS: Pour comparer, j'ai crée coté serveur (Ubuntu 12.04) un client et généré un certificat pour lui.
L'import dans Firefox (FF 21.0), toujours côté serveur, s'est passé sans problème pour ce nouveau client.
Dernière modification par phlinux (Le 11/06/2013, à 18:43)
Ubuntu - Precise Pangolin 64bits
ATI Radeon HD5670
Hors ligne
#2 Le 10/06/2013, à 12:03
- Pseudo supprimé
Re : [Résolu] Problème d'import de pkcs#12 dans firefox
bonjour,
sujet traité plusieurs fois.
x509_serveur != x509_client
tu ne peux pas créer un x509_client à partir d'un x509_serveur. Ils ont éventuellement la même AC (Autorité de Certification), mais c'est tout ..., comme point commun.
'umm, tu regarderas ce topic #post7
il faut peut-être que tu importes ton AC, à moins que tu l'inclues lors de la création du x509 client p12.
Les mots de passe ne doivent pas dépasser 14/15 caractères sinon erreur de segmentation.
#3 Le 10/06/2013, à 13:38
- phlinux
Re : [Résolu] Problème d'import de pkcs#12 dans firefox
Bonjour Titouan et merci pour la réponse.
Je dois dire que je ne suis pas très à l'aise avec ces techniques de certificat.
Par ailleurs, j'ai acheté la semaine dernière le GLMF HS 66 (merci Tiramiseb) pour essayer d'y voir un peu plus clair et c'est en le suivant que j'essaie de monter ma solution: Seuls les utilisateurs (membres de ma famille) possèdant un certificat que mon CA signe peuvent se connecter à mon site (accessible seulement via un port NATé).
En fait, j'ai crée un x509 pour la création de mon propre CA (côté serveur) et m'en suis servi pour signer le certificat généré côté client.
Je ne pense donc pas en avoir crée un côté client.
Au passage merci pour les longueurs de mdp : j'ai bien noté. Est ce que cela concerne aussi les "pass phrase" ?
Il y a sans doute quelque chose que je n'ai pas compris ou mes explications ne sont pas claires.
Par ailleurs, pourquoi alors la même manip n'a t-elle pas posé de problème avec mon client MS XP ?
Pour essayer d'être plus précis, voici ma procédure :
Côté serveur, création du CA
openssl genrsa -des3 -out cakey.pem 4096
openssl req -config openssl.cnf -new -x509 -nodes -sha1 -days 1825 -key cakey.pem -out cacert.pem
Côté client création de la demande de certificat
openssl genrsa -des3 -out phl.key.pem 4096
openssl req -config openssl.cnf -new -key phl.key.pem -out phl.csr.pem
Côté serveur signature du certificat du client et convertion en pkcs#12
openssl ca -config openssl.cnf -policy policy_anything -out phl.cert.pem -infiles phl.csr.pem
openssl pkcs12 -export -inkey phl.key.pem -in phl.cert.pem -out phl.cert.p12 -name "phl"
Côté client chargement du p12 dans firefox.
Au niveau apache2 j'ai:
<VirtualHost *:443>
...
SSLEngine on
SSLCertificateFile /srv/ssl/phl/phl.cert.pem
SSLCertificateKeyFile /srv/ssl/phl/phl.nokey.pem
SSLProtocol all -SSLv2
SSLCACertificateFile /srv/ssl/cacert.pem
<Directory /www/photos>
SSLVerifyClient require
SSLVerifyDepth 1
AllowOverride None
Order allow,deny
Allow from all
</Directory>
...
Je remarque quelques directives manquantes chez moi par rapport à ton exemple mais sauf avis contraire je ne suis pas certain qu'elles soient indispensables, en tous cas pour l'instant où je suis en simple phase de tests.
Dernière modification par phlinux (Le 10/06/2013, à 13:51)
Ubuntu - Precise Pangolin 64bits
ATI Radeon HD5670
Hors ligne
#4 Le 11/06/2013, à 18:28
- phlinux
Re : [Résolu] Problème d'import de pkcs#12 dans firefox
Ok, j'ai trouvé:
j'ai finalement pu voir qu'en retirant l'une des bases locales des certificats (mv ~/.mozilla/firefox/cert8.db ~/.mozilla/firefox/cert8.db.old) celle-ci est reconstruite systématiquement par Firefox, et là, l'import de la pkcs #12 fonctionne correctement.
Une connexion utilisant cette clef sur mon serveur confirme que tout va bien.
J'ai donc simplement laissé firefox recréer la base cert8.db.
Par contre, quid des autres bases cert9.db, key3.db et key4.db ? Sont-ils liés ou chaque fichier est il indépendant ?
Autrement dit, attention s'il doit y avoir une cohérence entre ces fichiers, il faudrait les détruire tous les 4 pour qu'ils soient tous recréés mais à ce moment là je ne sais pas ce qui est perdu.
Pour l'instant ce n'est pas pour moi un problème sur ce portable qui ne me sert qu'aux devs.
Méfiance donc, et avant de faire quoique ce soit, je vous engage à faire (comme d'habitude ) une sauvegarde du répertoire à "bricoler" : ~/.mozilla/firefox/xxxxxxxx.default (xxxxxxx est donné par le fichier ~/.mozilla/firefox/profiles.ini)
Ubuntu - Precise Pangolin 64bits
ATI Radeon HD5670
Hors ligne
#5 Le 11/06/2013, à 18:48
- phlinux
Re : [Résolu] Problème d'import de pkcs#12 dans firefox
Pour compléter : la commande
certutil -L -d sql:/home/phl/.mozilla/firefox/z535w55y.default/
renvoie bien cette fois :
Certificate Nickname Trust Attributes
SSL,S/MIME,JAR/XPI
phl u,u,u
Ubuntu - Precise Pangolin 64bits
ATI Radeon HD5670
Hors ligne
Pages : 1