我正在尝试创建自签名X.509证书以在AWS IoT中使用。我可以理解它与普通的OpenSSL证书没有什么不同,但我偶然发现AWS创建的PEM文件是不同的。由于我是OpenSSL的新手,我无法弄清楚我错过了什么
我使用以下命令创建私钥,CSR和服务器证书
openssl req -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 IoT控制台上传csr.pem,我就可以从控制台下载文件xxxx.pem.crt。当我用来连接MQTT时,此文件非常有效。我不知道如何创建此文件。
我的用例不依赖于AWS来生成此文件。
参考: http://docs.aws.amazon.com/iot/latest/developerguide/identity-in-iot.html
答案 0 :(得分:0)
您可以尝试这些进行基本测试:
openssl genrsa -out privkey.pem 2048
openssl req -new -key privkey.pem -out cert.csr
然后,您可以使用CLI从CSR创建。 http://docs.aws.amazon.com/iot/latest/apireference/API_CreateCertificateFromCsr.html