SSL:使用openSSL创建并使用keytool安装的CSR文件



我使用openSSL命令创建了CSR,并购买了crt文件。

openssl genrsa -out private-key.pem 2048 
openssl req -new -key private-key.pem -out csr.pem

使用keystore命令安装这个可以吗?因为我没有使用keytool创建CSR文件(但使用openSSL创建)?

另一个问题是我从可信的证书生成公司得到了三个文件。那么如何区分哪个是主、根、中间crt文件呢?文件类型(根,中间)在文件名本身中没有提到。我必须根据crt文件类型执行以下命令:

keytool -import -alias root -keystore tomcat.keystore -trustcacerts -file [name of the root certificate]
keytool -import -alias intermed -keystore tomcat.keystore -trustcacerts -file [name of the intermediate certificate]
keytool -import -alias tomcat -keystore tomcat.keystore -trustcacerts -file [name of the certificate]

如果我没有使用keystore命令来安装它,它是否可以使用keytool创建CSR文件(但使用openSSL创建)?

还必须将私钥导入到密钥存储库中。否则,密钥存储库将毫无用处。

有两种方法:

  1. 首先用OpenSSL创建一个pkcs# 12文件,然后用keytool将该文件转换为JKS文件(见这里)。
  2. 使用KeyStore Explorer,它具有OpenSSL格式的导入/导出功能。说明可以在这里找到。

另一个问题是我从可信的证书生成公司得到了三个文件。那么如何区分主、根、中间crt文件呢?

您必须看一下证书的内容,特别是它们的专有名称(DNs)。

  • 根CA证书始终具有相同的SubjectDN和IssuerDN。
  • 中间CA将根CA的SubjectDN作为其IssuerDN和一个不同的SubjectDN。
  • SSL证书将中间CA的SubjectDN作为其IssuerDN,域名作为其SubjectDN的一部分。

用于打印SubjectDN和IssuerDN的OpenSSL命令取决于证书文件的格式(DER或PEM)。DER是二进制格式,PEM是ASCII格式。如果您不确定,请同时尝试:

openssl x509 -noout -subject -issuer -nameopt RFC2253 -inform DER -in <cert-file>

openssl x509 -noout  -subject -issuer -nameopt RFC2253 -inform PEM -in <cert-file>

最新更新