如何将 .pem 转换为 .key?
Posted
技术标签:
【中文标题】如何将 .pem 转换为 .key?【英文标题】:How to convert .pem into .key? 【发布时间】:2013-11-27 13:16:20 【问题描述】:我已经购买了 SSL 证书并且我收到了证书和一个 .pem 文件作为私钥?来自供应商;现在我需要将此 .pem 密钥转换为 bitnami Redmine Apache Web 服务器的 .key 才能使其工作。
我该怎么做这个什么程序或命令来做这个?在使用 Openssl 等方面,我是一个新手。
任何建议将不胜感激!
谢谢。
【问题讨论】:
虽然它只能部分解决您的问题,但您也许可以调整这些命令以获得正确的输出格式,请参阅 ***.com/questions/991758/… 和 ***.com/questions/13732826/convert-pem-to-crt-and-key 您也可以查看本站:sslshopper.com/ssl-converter.html 【参考方案1】:我假设您想要 PEM 私钥的 DER 编码版本。
openssl rsa -outform der -in private.pem -out private.key
【讨论】:
@siddharth 这篇文章是关于私钥的转换。如果要转换证书,请使用:“openssl x509 -outform der -in cert.pem -out cert.der”【参考方案2】:openssl rsa -in privkey.pem -out private.key
完成这项工作。
【讨论】:
这对我有用的.pem
生成自 Openstack
密钥对【参考方案3】:
openssl x509 -outform der -in your-cert.pem -out your-cert.crt
【讨论】:
证书和密钥都是必需的【参考方案4】:CA 的不要向索要您的私钥!他们只要求 CSR 为您颁发证书。
如果他们有您的私钥,您的 SSL 证书可能会被泄露并最终被吊销。
您的 .key
文件是在 CSR 生成期间生成的,并且很可能在您的 PC 上生成 CSR 的某个位置。
这就是为什么私钥被称为“Private” - 因为除了你之外没有人可以拥有该文件。
【讨论】:
感谢您的回复。我的 CSR 是在供应商的网站上完成的,它是在购买前自动生成的。所以从供应商那里我收到了intermediateCA、.pem和证书本身,文件本身是从我收到的电子邮件中复制的,并以certificate.crt、intermediateca.crt的扩展名保存,我正在尝试将.pem转换为.key,就像我尝试过的那样.pe,文件本身,我没有成功“为本地主机配置的 RSA 证书:443 不包含与服务器名称匹配的 ID”。尝试解决此问题,检查所有服务器名称在整个 httpd.conf 和 ssl-httpd 中都是正确的。 conf。请告知.thnks 很可能您的供应商可以为您提供密钥。如果您可以在提供的代码上的某处找到 -Begin Private key-,那么这就是您的私钥。只需将其保存在记事本上并另存为 .key。 谢谢耳语者,我已经这样做了,并仔细检查了正确的路径,但重新启动的服务仍然不起作用。【参考方案5】:如果您正在寻找要在 httpd-ssl.conf 中用作 SSLCertificateKeyFile 的值的文件,PEM 文件应该可以正常工作。
有关该文件中 SSL 选项的更多详细信息,请参阅此 SO 问题/答案。
Why is SSLCertificateKeyFile needed for Apache?
【讨论】:
【参考方案6】:正如 .crt 文件采用 .pem 格式一样,.key 文件也以 .pem 格式存储。假设证书是 .crt 文件中的唯一内容(其中可能有根证书),您只需将名称更改为 .pem。 .key 文件也是如此。这当然意味着您可以将 .pem 文件重命名为 .key。
这使得 gtrig 的答案是正确的。我只是想我会解释原因。
【讨论】:
以上是关于如何将 .pem 转换为 .key?的主要内容,如果未能解决你的问题,请参考以下文章
text 如何将.pfx SSL证书转换为.crt / key(pem)格式。对NGINX很有用