为两个域生成PKCS12密钥库

时间:2020-06-15 12:04:49

标签: ssl openssl lets-encrypt pkcs#12

我一直在使用我的站点的LetsEncrypt证书,使用OpenSSL从文件fullchain.pem和对应的私钥文件privkey.pem生成PKCS12密钥库,如下所示:

openssl pkcs12 -export -in fullchain.pem -inkey privkey.pem -out cert.p12 -password pass:xxx

我现在有了第二个域名,并且我将同一服务器与两个域的虚拟服务器一起使用,因此我需要一个包含两个域证书的单个密钥库。再一次,我有fullchain.pem和privkey.pem。我尝试了以下操作来生成包含两个证书的单个密钥库:

cat domain2/fullchain.pem domain2/privkey.pem >combined.pem
openssl pkcs12 -export -in fullchain.pem -inkey privkey.pem -certfile combined.pem -out cert.p12 -password pass:xxx

但是结果是一样的:一个密钥库仍然只包含第一个域的证书。

我需要哪种咒语才能给我一个包含两个域名证书的密钥库?

编辑:我设法生成了一个JKS密钥库,如下所示:

openssl pkcs12 -export -in domain1/fullchain.pem -inkey domain1/privkey.pem -name domain1 -password pass:xxx -out /tmp/cert1.p12
openssl pkcs12 -export -in domain2/fullchain.pem -inkey domain2/privkey.pem -name domain2 -password pass:xxx -out /tmp/cert2.p12

keytool -importkeystore -destkeystore keystore.jks -storepass xxx -alias domain1 -srckeystore /tmp/cert1.p12 -srcstoretype PKCS12 -srcstorepass xxx
keytool -importkeystore -destkeystore keystore.jks -storepass xxx -alias domain2 -srckeystore /tmp/cert2.p12 -srcstoretype PKCS12 -srcstorepass xxx

但这给了我有关JKS是专有格式的警告,然后我不得不再次使用keytool将JKS输出转换为PKCS12。当然有一种方法不涉及通过keytool通过JKS进行往返吗?

0 个答案:

没有答案