一、使用亚马逊管理控制后台生成证书
在IoT控制管理页面,可以直接一键生成证书。
二、使用亚马逊命令行工具生成证书
1、aws iot create-keys-and-certificate --certificate-pem-outfile "myTest.cert.pem" --public-key-outfile "myTest.public.key" --private-key-outfile "myTest.private.key" --set-as-active
2、aws iot create-certificate-from-csr <provide CSR>
三、创建和注册自己的CA证书
1、安装OpenSSL
2、使用openssl命令生成秘钥
openssl genrsa -out rootCA.key 2048
3、创建CA证书
openssl req -x509 -new -nodes -key rootCA.key -sha256 -days 1024 -out rootCA.pem
4、生成亚马逊iot注册码
aws iot get-registration-code
5、为验证证书生成一对秘钥
openssl genrsa -out verificationCert.key 2048
6、创建验证证书的请求文件
openssl req -new -key verificationCert.key -out verificationCert.csr
根据提示完善Common Name字段,填写上述的注册码
7、向CA请求创建验证证书
openssl x509 -req -in verificationCert.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out verificationCert.pem -days 500 -sha256
8、将CA注册到亚马逊
aws iot register-ca-certificate --ca-certificate file://rootCA.pem --verification-certificate file://verificationCert.pem --allow-auto-registration
如果需要支持证书的自动注册功能,则需要allow-auto-registration设置
9、激活CA证书
aws iot update-ca-certificate --certificate-id <insert certificate ID> --new-status ACTIVE
创建和注册设备证书
要创建设备证书,必须使用亚马逊IoT已经注册的CA证书,可以手动注册设备证书,也可以自动注册,这样在设备首次连接亚马逊IoT的时候,允许证书自动注册到亚马逊。
1、使用openssl床架一对秘钥
openssl genrsa -out deviceCert.key 2048
2、创建证书请求文件
openssl req -new -key deviceCert.key -out deviceCert.csr
3、创建证书
openssl x509 -req -in deviceCert.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out deviceCert.pem -days 500 -sha256
4、注册设备证书
aws iot register-certificate --certificate-pem file://deviceCert.pem --ca-certificate-pem file://rootCA.pem
5、激活设备证书
aws iot update-certificate --certificate-id <insert certificate ID> --new-status ACTIVE