【发布时间】:2018-10-02 19:30:18
【问题描述】:
我使用 Open SSL 创建了一个自签名 SSL 证书,我需要一个 key.pem 和一个 cert.pem 文件...
我的 server.crt = cert.pem (Certificate) , server.csr = csr.pem (Certificate request), server.key = key.pem (RSA) 是真的吗?我可以重命名这些文件还是有办法转换它们?
【问题讨论】:
我使用 Open SSL 创建了一个自签名 SSL 证书,我需要一个 key.pem 和一个 cert.pem 文件...
我的 server.crt = cert.pem (Certificate) , server.csr = csr.pem (Certificate request), server.key = key.pem (RSA) 是真的吗?我可以重命名这些文件还是有办法转换它们?
【问题讨论】:
.PEM = PEM 扩展名用于不同类型的 X.509v3 文件,其中包含前缀为“—- BEGIN ...”行的 ASCII (Base64) 数据。
.CRT = CRT 扩展名用于证书。证书可以编码为 ASCII PEM。 CER 和 CRT 扩展几乎是同义词。
CER = .crt 的替代形式(Microsoft 约定)您可以使用 MS 将 .crt 转换为 .cer(.both DER 编码的 .cer,或 base64[PEM] 编码的 .cer)。
.KEY = KEY 扩展名同时用于公钥和私钥。密钥可以编码为 ASCII PEM。
只有当编码类型可以相同时,才能安全地互换 CRT 和 CER。 (即 PEM 编码 CRT = PEM 编码 CER)。
我使用以下命令生成 .pem 文件,
1)生成 CA
/usr/bin/openssl req -out ca.pem -new -x509 -days 1025
此命令生成 CA 文件“ca.pem”和 CA 密钥“privkey.pem”。
2)生成服务器证书/密钥对
/usr/bin/openssl genrsa -out server_key.pem 1024
3)生成服务器证书请求
/usr/bin/openssl req -key server_key.pem -new -out server.req
4)生成生成.srl文件的命令
openssl x509 -req -in sguild.req -CA CA.pem -CAkey privkey.pem -CAcreateserial -out sguild.pem
5)生成服务器证书.pem的命令
/usr/bin/openssl x509 -req -in server.req -CA ca.pem -CAkey privkey.pem -CAserial file.srl -out server_cert.pem -days 730
但我需要
RootCA.pem
server.crt
server.key
所以我只是重命名
ca.pem (generated from above command) to RootCA.pem
server_cert.pem (generated from above command) to server.crt
server_key.pem (generated from above command) to key.pem
它对我有用!
【讨论】: