Java 无法将.p12证书导入到cacerts
在将Java 无法将.p12证书导入到cacerts,java,authentication,keytool,pkcs#12,jks,Java,Authentication,Keytool,Pkcs#12,Jks,在将.p12导入cacerts时,我面临以下问题。第一行表示别名已经存在,然后当我试图覆盖它时,表示找不到别名。请帮我解决这个问题 /usr/java/default/jre/bin/keytool -importkeystore -deststorepass changeit -destkeystore /usr/java/default/jre/lib/security/cacerts -srckeystore /home/sogadm/MB_copy/MB_client.p12 -
.p12
导入cacerts
时,我面临以下问题。第一行表示别名已经存在,然后当我试图覆盖它时,表示找不到别名。请帮我解决这个问题
/usr/java/default/jre/bin/keytool -importkeystore -deststorepass changeit -destkeystore /usr/java/default/jre/lib/security/cacerts -srckeystore /home/sogadm/MB_copy/MB_client.p12 -srcstoretype pkcs12 -srcstorepass 123456 -alias mb_ca
Existing entry alias mb_ca exists, overwrite? [no]: yes
keytool error: java.lang.Exception: Alias <mb_ca> does not exist
/usr/java/default/jre/bin/keytool-importkeystore-deststorepass changeit-destkeystore/usr/java/default/jre/lib/security/cacerts-srckeystore/home/sogadm/MB_copy/MB_client.p12-srcstoretype pkcs12-srcstorepass 123456-alias MB_ca
现有条目别名mb_ca存在,是否覆盖?[否]:是的
keytool错误:java.lang.Exception:别名不存在
这可能意味着:
cacerts
中,您已经有一个别名为mb\u ca的条目.p12
中,您没有别名为mb\u ca的条目-list
查看.p12
的现有条目及其别名。根据您的示例,它将如下所示:
keytool-list-keystore/home/sogadm/MB_copy/MB_client.p12-storepass 123456-storetype PKCS12-v
-删除cacerts
中的现有mb\u ca条目(如果该条目错误或不需要)
-srcalas
和-destalas
进行更好的控制cacerts
是受信任的证书存储,则不应将.p12
中的私钥项导入其中。首先导出公钥,然后将其导入到cacerts
:
keytool -exportcert -keystore /home/sogadm/MB_copy/MB_client.p12 -storepass 123456 -storetype PKCS12 -alias p12_entry_alias -file /home/sogadm/MB_copy/MB_client.cer
keytool -importcert -keystore /usr/java/default/jre/lib/security/cacerts -storepass changeit -alias mb_client -file /home/sogadm/MB_copy/MB_client.cer
希望有帮助。您在.p12文件中有私钥吗?您使用的是什么JRE版本?无法在.p12文件中列出别名。请帮助我使用该命令。该命令应能正常工作。
keytool-list-keystore your_p12_file.p12-storepass p12_password-storetype PKCS12-v
顺便说一句,您正在尝试将.p12
导入cacerts
<代码>第12页是带有一个私钥项的密钥存储库cacerts
是受信任证书存储的常用名称。通常,您不应将这两种条目混合使用。要导入p.12
条目的公钥,请先将其导出,然后导入到cacerts
。我将把命令添加到答案中。