将私钥和证书导入java密钥库(范例)

・2 分钟阅读

你必须不时更新你的SSL密钥和证书,在某些情况下,你可能有混合的基础结构,例如,"普通"http服务器和tomcat或其他基于java的服务器。在后一种情况下,你必须将你闪亮的新证书和密钥导入到你的java密钥库中。

有几种方法可以使用,但是,我发现以下是最简单的方法:

  1. 将密钥,证书和ca证书导出到一个PKCS12包中,通过,
% openssl pkcs12 -export -in my.crt -inkey my.key -chain -CAfile my-ca-file.crt -name"my-domain.com" -out my.p12
  1. 请确定设置导出密码!(有关说明,请进一步查看)
  2. 如果您收到以下错误消息"Error unable to get issuer certificate getting chain. " 那么您应该将openssl ca-certs与您自己的ca-cert连接到一个文件中,并将其用作-CAfile的参数。例如:

% cat /etc/ssl/cert.pem my-ca-file.crt > ca-certs.pem
% openssl pkcs12 -export -in my.crt -inkey my.key -chain -CAfile ca-certs.pem -name"my-domain.com" -out my.p12
  1. 通过以下方式将PKCS12文件导入新的java密钥库
% keytool -importkeystore -deststorepass MY-KEYSTORE-PASS -destkeystore my-keystore.jks -srckeystore my.p12 -srcstoretype PKCS12

注意!

如果在第一步中没有设置导出密码,通过keytool导入很可能会NullPointerException退出。

Xn_warm profile image