证书密钥 - 转换

时间:2013-01-10 17:07:52

标签: openssl

出于测试目的,我需要在IIS8上启用SSL(在亚马逊服务器上)。我使用IIS创建了一个测试密钥,并以* .pfx格式导出了该密钥。 现在在Load Balancer设置中,我需要将该密钥转换为* .PEM格式。我使用https://www.sslshopper.com/ssl-converter.html

做到了这一点

当我打开新生成的* .PEM键时,我有两个字段: -----开始私钥----- 关键在这里...... ----- END PRIVATE KEY -----

我也有

-----开始证书----- 证书就在这里...... -----结束证书-----

现在,当我在LoadBalancer中输入这些值时,它总是抱怨:

无效的公钥证书。

我尝试用--- BEGIN粘贴这两个值而没有相同的结果......

发生了什么事?

4 个答案:

答案 0 :(得分:9)

对于每个人都已经有.pem格式并仍然获得“无效的公钥证书”,这是我的解决方案。

证书链包实际上由两个证书组成,一个接一个:颠倒两个为我工作的顺序。

答案 1 :(得分:4)

此链接为我提供了解决方案:

https://forums.aws.amazon.com/thread.jspa?threadID=56937

亚马逊的技术支持详细说明了需要使用的命令。基本上首先使用的是: - 这会给你一把钥匙 openssl pkcs12 -in filename.pfx -out private.key.1 -nodes -nocerts

并使用这个来获取证书本身: openssl pkcs12 -in filename.pfx -clcerts -nokeys -out cert.pem

答案 2 :(得分:3)

由于其他原因,我收到了“无效的公钥证书”。事实证明我在证书上的机器上的时钟快了半个小时,所以证书还没有效!要检查这一点,请使用:

openssl x509 -in yourcert.pem -text -noout

并在“有效性/不在之前:”之后检查时间戳。

半小时不等太久。在不更改表单内容的情况下,我在那段时间之后再次点击提交,然后就完成了。

答案 3 :(得分:1)

我收到以下错误:

  

例程:PEM_read_bio:错误的结束行node.js

无论我做什么,我总是会遇到这个错误。其他出现相同错误的人建议在请求的页眉和页脚上添加额外的输入。在我的情况下,它没有帮助。帮助我的是Notepad ++和EoL转换。

我想你可以和其他编辑一起做,但是我使用了Notepad ++。 只需编辑 - > EoL转换并确保选中Windows。

希望它能为遇到同样问题的其他人节省时间。