在python中使用tls证书进行Mqtt连接

时间:2019-12-29 11:10:26

标签: python ssl mqtt-vernemq

我正在尝试使用python(版本3.7)连接到Mqtt代理。我想进行安全的通信,因此我选择了自签名证书的路径并为代理生成证书。在代理配置中,我还提到使用公用名作为身份,因此我使用了代理的公用名证书作为连接到代理的主机名。但是它无法连接。我已经阅读了堆栈溢出解决方案,因为python(3.7版本)不支持使用通用名验证服务器证书。因此,我已使用使用者的替代名称作为经纪人的IP地址来生成经纪人证书,并尝试进行连接,但仍然没有用。 而且,当尝试使用tls_set(ca cert,客户端cert,客户端密钥的路径)连接到此代理时,由于SSL验证失败,ip地址不匹配,我遇到了一个错误。 只有提到tls_set_insecure(true)时,我才可以使用我的python代码进行连接。但是据我所知tls_set_insecure(true)不允许验证证书的来源。请告知我们是否可以使用tls_set_insecure(是),然后继续?请告诉我测试过程中是否有错误。为什么我不能仅使用python代码连接到代理。我已经使用node js代码进行了测试。在节点js中,连接没有问题。它工作正常。我尝试使用用于生成证书的open ssltool检查python中使用的mqtt库的依赖关系。关于此过程的任何评论都将帮助我进一步发展。

谢谢。

0 个答案:

没有答案