ssl - 将 .crt 文件转换为 .cer 和 .key

标签 ssl key crt cer

我被要求帮助转换证书以进行续订。我获得了 domainname.crt 文件以及一些中间 .crt 文件,但没有获得 .key 文件。他们要我将 CRT 转换为 .CER 和 .KEY 文件。

我查看了以下(在许多其他站点中),但他们要么说我需要 .key 文件,但我没有,要么我必须在本地安装它然后导出它,但是在使用 MMC 时并尝试将其导出时,.PFX 选项显示为灰色。

http://community.spiceworks.com/topic/367133-i-cant-convert-a-ssl-crt-to-pfx-i-need-help-with-this

我还尝试了 OpenSSL 命令 PKCS12 -EXPORT... 将其转换为 .P12,但出现“无法加载私钥”的错误。如果我打开它并选择“复制到文件...”,我可以获得一个 .CER 文件,但仅此而已。

感谢您的帮助。

最佳答案

证书文件中有私钥吗?换句话说,那里有一个以

开头的部分
-----BEGIN RSA PRIVATE KEY-----

在文件中?

如果不是,则私钥存储在一个单独的文件中。

无论如何,要续订证书,您不需要证书,而是需要证书签名请求 (CSR),您将其发送给 CA,您将收到证书作为返回(或者,在某些情况下在这种情况下,CA 可能会使用之前存储的 CSR 生成新证书。

您可以使用以下方法生成新 key :

openssl genrsa -out <private key file name> 2048

然后生成 CSR:

openssl req -new -key <private key file name> -out <csr file name>

您保留 key ,将 CSR 发送给 CA。返回时,您将获得证书,该证书与中间证书和私钥一起提供给所使用的软件。在某些情况下,它们需要放在单独的文件中,而在其他情况下,您可以将它们放在一个文件中。

关于ssl - 将 .crt 文件转换为 .cer 和 .key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25318997/

相关文章:

dictionary - 当给定一个与我知道存在的键等效的键时,以数组作为键的 Groovy 映射将返回 null

php - 循环遍历 json 数组并按键值分组

c++ - 删除 CRT (DLL) 后的编译器问题

ssl - 生成并提交 csr 后,我可以删除 ssl key 上的密码吗?

java - 这段 Java 1.7 代码片段中的 TLS 版本是什么?

python - 属性错误: module 'ssl' has no attribute 'PROTOCOL_TLSv1_3'

ssl - 使用 playwright 代码生成忽略 SSL 错误

c# - 在 SSL 中使用 IIS Express 开发证书时无法登录应用程序

function - R,单独的参数函数,可导出自己的在线帮助

c - 我真的需要注释的 fclose() 命令吗?