92 votes

Comment puis-je créer un keystore à partir d'un certificat existant (abc.crt) et des fichiers abc.key ?

J'essaie d'importer un certificat et un fichier de clé dans le keystore mais je n'y arrive pas.

Comment puis-je créer un keystore en important à la fois un certificat existant (abc.crt) et des fichiers abc.key ?

151voto

Bruno Points 47560

Le plus simple est probablement de créer un fichier PKCS#12 en utilisant OpenSSL :

openssl pkcs12 -export -in abc.crt -inkey abc.key -out abc.p12

Vous devriez être en mesure d'utiliser le fichier résultant directement en utilisant la fonction PKCS12 type de keystore.

Si vous en avez vraiment besoin, vous pouvez le convertir en JKS en utilisant keytool -importkeystore (disponible en keytool de Java 6) :

keytool -importkeystore -srckeystore abc.p12 \
        -srcstoretype PKCS12 \
        -destkeystore abc.jks \
        -deststoretype JKS

44voto

S.A. Points 709

Vous devez utiliser OpenSSL et keytool.

OpenSSL pour les fichiers CER et PVK > P12

openssl pkcs12 -export -nom servercert -dans selfsignedcert.crt -inkey serverprivatekey.key -out myp12keystore.p12

Keytool pour p12 > JKS

keytool -importkeystore -destkeystore mykeystore.jks -srckeystore myp12keystore.p12 -srcstoretype pkcs12 -alias servercert

4voto

Swarna Points 126

Ajoutant à la réponse de @MK Yung et @Bruno . Entrez un mot de passe pour le keystore de destination. J'ai vu ma console se suspendre lorsque j'ai entré la commande sans mot de passe.

openssl pkcs12 -export -in abc.crt -inkey abc.key -out abc.p12 -name localhost  -passout pass:changeit

2voto

MK Yung Points 490

En plus de la réponse de @Bruno, vous devez fournir les éléments suivants -name pour l'alias, sinon Tomcat lancera Alias name tomcat does not identify a key entry erreur

Exemple de commande : openssl pkcs12 -export -in localhost.crt -inkey localhost.key -out localhost.p12 -name localhost

1voto

Theo Points 131

Si le keystore est pour tomcat, après avoir créé le keystore avec les réponses ci-dessus, vous devez ajouter une étape finale pour créer l'alias "tomcat" pour la clé :

keytool -changealias -alias "1" -destalias "tomcat" -keystore keystore-file.jks

Vous pouvez vérifier le résultat avec :

keytool -list -keystore keystore-file.jks -v

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X