如何使用现有CSR文件创建一个密钥库



我在Godaddy(Apache)中有一个网站,并且在Amazon AWS(Apache Tomcat)中有一个应用程序。

网站域(apache):example.com

应用程序域(Apache tomcat):sub.example.com

我知道如何在GoDaddy中安装示例证书,我使用此应用程序生成CSR和私钥:

https://www.rapidsslonline.com/ssl-tools/csr-generator.php

我将CSR复制以请求证书,最后使用私钥安装。

我知道如何在sub.example.com上安装tomcat中的证书,然后使用生成的密钥库的CSR请求签名并最终下载证书并安装它,这很容易。

但是我有问题,我只能使用一个解决方案:安装网站证书或安装Tomcat证书,但不能同时安装。为什么?因为生成器生成的CSR是密钥库生成的不同的,所以我需要私钥(生成器给出)。

那么,这就是我问题的原因,如何使用现有CSR文件创建一个密钥库?

好吧,我的想法是使用该CSR文件创建密钥库(也许存在于Keytool的参数),然后使用它来生成新证书。之后,我可以在Apache和Tomcat中安装,该怎么办?

也许另一个解决方案是如何获取密钥库的私钥,它也可以工作。

您的问题没有说明。这些都不涉及CSR文件。据我所知,您无法将CSR导入密钥库,即使您可以,该操作也没有意义。

真正发生的事情是您收到了一个已经是密钥库的PFX文件,并且已经包含了Keypair,签名证书和CA链。您可以将该文件直接用作Java中的PKCS#11密钥库,也可以用keytool将整个内容导入JKS密钥库。

您可以通过生成键盘和企业社会责任来从 开始。然后,您可以将其签名并收到签名的证书和CA链。然后,您将使用与生成按键时相同的别名将这些东西导入密钥库。

好吧,我自己解决了:

我不使用发电机,只需用键盘创建密钥库,之后:

keytool 
-importkeystore -srckeystore <keystorefile> 
-destkeystore keystore.p12 -deststoretype PKCS12 
-srcalias <jkskeyalias> -srcstorepass <passwordhere> 
-srckeypass <passwordhere>  -deststorepass <passwordhere> 
-destkeypass <passwordhere> 

然后将密钥库.p12转换为私钥文件:

openssl pkcs12 -in keystore.p12 -nocerts -nodes -out private.key

我明白了:

Bag Attributes
    friendlyName: tomcat
    localKeyID: 54 69 6D 65 20 31 35 30 34 38 30 37 33 30 31 31 37 34 
Key Attributes: <No Attributes>
-----BEGIN PRIVATE KEY-----
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQCgd4Hed6e2ArVx
bptp6zJDaAKOy4rWe4SHkjuWO7wgcxx4YoMARiIc2/xs070csTLCPXCmH+XtjX5Z
...
ej4hBu/2Bhv1QfH24gRKwHDsBAtQEa6nEn+LwPklgh5KbjY2ocSh6LIQEP4b+4CU
yneEbq6rJS6QLIhxgkEFZO6Jcw==
-----END PRIVATE KEY-----

最新更新