Openssl 如何创建与AWS物联网兼容的X.509?

Openssl 如何创建与AWS物联网兼容的X.509?,openssl,aws-iot,Openssl,Aws Iot,我正在尝试创建用于AWS IoT的自签名X.509证书。我可以理解它与普通的OpenSSL证书没有什么不同,但我偶然发现AWS创建的PEM文件有些不同。因为我是OpenSSL新手,所以我无法找出我缺少了什么 我使用下面的命令创建私钥、CSR和服务器证书 openssl请求-newkey rsa:2048-new-nodes-keyout key.pem-out csr.pem openssl x509-req-days 365-in csr.pem-signkey key.pem-out ser

我正在尝试创建用于AWS IoT的自签名X.509证书。我可以理解它与普通的OpenSSL证书没有什么不同,但我偶然发现AWS创建的PEM文件有些不同。因为我是OpenSSL新手,所以我无法找出我缺少了什么

我使用下面的命令创建私钥、CSR和服务器证书

openssl请求-newkey rsa:2048-new-nodes-keyout key.pem-out csr.pem

openssl x509-req-days 365-in csr.pem-signkey key.pem-out server.crt

如果我在AWS IoT控制台中上载csr.pem,它会接受,但我无法使用此文件连接MQTT

如果我在AWS IoT中上传server.crt,它会抱怨它不是CSR格式,这是可以理解的

让我惊奇的是,一旦我在AWS物联网控制台上传csr.pem,我就可以从控制台下载一个文件xxxx.pem.crt。当我使用连接到MQTT时,这个文件工作得非常好。我不确定如何创建此文件

我的用例不是依靠AWS生成这个文件

参考:

您可以尝试以下基本测试:

openssl genrsa -out privkey.pem 2048
openssl req -new -key privkey.pem -out cert.csr
然后,您可以使用CLI从CSR创建。

Stack Overflow是一个关于编程和开发问题的网站。这个问题似乎离题了,因为它与编程或开发无关。也许是一个更好的提问的地方。我同意这一点。我的主要观点之一是了解我是否必须依赖AWS才能获得最终CSR。我明白了,是的,我必须这么做。谢谢。Virtu,我很想了解你如何看待这个过程的改进,所以我们可以考虑短期的路线图。您想带自己的签名证书还是服务器证书?理想的情况是什么?我在寻找SSH的工作原理。一旦我的公钥进入服务器,它就允许我访问。在这种情况下,我不想依靠服务器再给我一个证书。这将很有帮助,因此我们可以避免AWS依赖于为我们提供证书,而不是使用AWS api发送公钥并将私钥附加到设备本身。在这两者之间还有一个步骤。再一次,我不是X.509证书中涉及的事情的专家,所以我是用外行的术语讲的。谢谢收听:)