直接使用提取证书非常容易,提取
keytool私钥比较麻烦(尽管您可以编写程序来这样做)。我建议结合使用
keytool和
openssl。
如果您的密钥库为PKCS#12格式(.p12文件),请跳过此步骤。使用
keytool(从Java 6+开始的需要版本)将JKS存储转换为PKCS12存储
keytool -importkeystore -srckeystore thekeystore.jks -srcstoretype JKS -destkeystore thekeystore.p12 -deststoretype PKCS12
然后,使用openssl提取证书:
openssl pkcs12 -in thekeystore.p12 -clcerts -nokeys -out servercert.pem
提取私钥:
umask 0077openssl pkcs12 -in thekeystore.p12 -nocerts -nodes -out serverkey.pemumask 0022
请注意,由于该
-nodes选项在提取私钥时使用,因此私钥文件将不受保护(因为它必须没有密码才能供Apache
Httpd使用),因此请确保没有其他人可以读取它。
然后,使用
SSLCertificateFile和配置Apache
Httpd
SSLCertificateKeyFile分别指向证书文件和私钥文件。



