我不熟悉SSL / TLS,我正在尝试使用SSL设置我的moquitto代理。出于测试目的,我没有使用真正的rootCA,我创建了自己的rootCA。以下是我认为SSL是什么,如果我错了就纠正我,我是一个菜鸟。
rootCA可以发布第二层ca,cert,密钥和客户端/服务器交换这些信息,当需要验证其他人的身份时,它会将这些信息带到rootCA并询问是否正确。
所以,我按照Mosquitto的文档,使用OpenSSL生成rootCA.crt,server.crt,server.key。我还生成了client.crt和client.key,这样当我的客户端应用程序连接到Mosquitto代理时,代理就可以识别该连接。 我将ca文件,密钥文件,证书文件配置添加到我的local.conf中。重启Mosquitto,它的工作原理。 然后我使用mosquitto_sub和ca.crt,client.crt和client.key来连接到代理,这也很合适。
我不明白的是,为什么文档教会我如何生成server.csr和client.csr? 我猜我是不是rootCA,我需要将这些csr发送到真正的rootCA,以便那些证书变得合法,那是什么csr用于?
答案 0 :(得分:0)
.csr是要与您的CA.crt和CA.key签名的证书签名请求,您不需要在mosquitto代理上使用它,只需CA.crt和client.crt / key。如果要进行测试,请下载MQTT.fx客户端,以使用这些证书检查您的MQTT连接。 http://mqttfx.jensd.de/
openssl命令例如:
x509 -req -in client.csr -CA CA.crt -CAkey CA.key -CAcreateserial -out client.crt -days 365