0

从 Apache2 的 mod_ssl 我有以下工作的配置文件:

 SSLCertificateFile      x (certificate)
 SSLCertificateKeyFile   y (rsa private key)
 SSLCertificateChainFile z.crt

从这些文件中,我想生成一个 Java 密钥库,可以将其传递给码头进行 SSL。我做了很多阅读,但我对我在这里实际拥有的内容以及将这些文件转换为密钥库所需的步骤感到困惑。

4

2 回答 2

1

您不能直接将私钥导入密钥库。但是您可以使用 openssl 将密钥和证书转换为 pkcs#12 存储。-importkeystore然后,您可以通过使用 option和 option将整个 pkcs#12 导入到默认的 java 密钥库中-srcstoretype pkcs12

(您也可以通过提供 storetype 'pkcs12' 直接使用 pkcs12 存储)

于 2012-10-31T06:04:24.890 回答
1

假设您想使用别名“domain.com”将密钥和证书存储在密钥库中,您可以使用以下命令完成工作:

keytool -keystore keystore.jks -import -alias root -file z.crt -trustcacerts

这将导入您的根证书(或链文件)。然后你可以导入你的证书:

keytool -keystore keystore.jks -import -alias domain.com -file x -trustcacerts

最后,您使用 openssl 工具将私钥转换为 pkcs12,并将其导入密钥库。

openssl pkcs12 -export -in x -inkey y -out domain.pkcs12
keytool -importkeystore -srckeystore domain.pkcs12 -srcstoretype PKCS12 -destkeystore domain.com
于 2014-02-19T14:44:25.070 回答