Sur Ubuntu, je ne peux pas convertir le certificat en utilisant openssl avec succès.
vagrant@dev:/vagrant/keys$ openssl pkcs7 -print_certs -in a.p7b -out a.cer
unable to load PKCS7 object <blah blah>:PEM
routines:PEM_read_bio:no start line:pem_lib.c:696:Expecting: PKCS7
Avez-vous vu cette erreur avant?
file a.p7b
vous donne-t-il?Réponses:
Essaye ça:
Si cela ne fonctionne pas, amène sur une machine Windows et exporte, suivez ce guide.
la source
-print_certs
dans sa commande. Cela a un impact sur le format de sortie: avec cela, vous obtenez un format PEM (commençant par ----- BEGIN CERTIFICATE -----), et sans cela, vous obtenez un format PKCS # 7 (----- BEGIN PKCS7-- ---)-inform der
partie. Notez également que lors de l’exportation d’une clé à partir du Gestionnaire de certificats Windows, DER et P7B sont deux options distinctes.Donc, pour combiner les réponses ci-dessus, la commande est la suivante:
openssl pkcs7 -in cert.p7b -inform DER -print_certs -out cert.pem
Vérifié pour fonctionner sur Windows, en utilisant OpenSSL-Win64
/ Merci Bogdan pour avoir repéré l'erreur
la source
J'ai suivi ce guide qui vous demande de changer les lignes d'en-tête / pied de page de
à
Puis exécutez la commande
openssl pkcs7 -in foo.modified.crt -print_certs -out foo.certs
(oùfoo.modified.crt
est le fichier dans lequel vous avez enregistré la version modifiée). Cela m'a donné les mêmes résultats que lors d'une exportation de certificat Windows, comme suggéré dans d'autres réponses.la source
Pour autant que je sache, les éléments suivants devraient convertir un certificat pkcs7 en un pem
la source
solution rapide dans mon cas (beaucoup de fichiers avec en-tête / pied de page manquant):
base64 -d $FILE | openssl pkcs7 -inform DER -print_certs
la source
J'ai eu ce problème également. J'allais vérifier un fichier p7b que j'ai copié à partir d'un hôte Win7.
J'ai découvert que gnome keyring peut importer le certificat. De là, il est facile d'exporter vers DER
la source