javascript - 如何为mosquitto安装ssl

标签 javascript ssl mqtt mosquitto

我已按照此处的说明进行操作:http://www.steves-internet-guide.com/mosquitto-tls/启用 ssl。

这是一个自签名证书,当我尝试通过 Internet 从网页访问代理时,我得到了 ERR_CERT_AUTHORITY_INVALID

当我将 websocket 地址键入 https://websocketaddress/ 时,我收到警告,当我单击继续然后重新加载访问 websocket 地址的页面时,我能够访问代理并获取值。

所以这是因为它是一个自签名证书,所以我得到了那个错误。

我的问题是从 CA 购买证书后添加 ssl 的过程是什么?

最佳答案

是的,这是因为您使用的是自签名证书。

如果您使用的是自签名证书,那么您必须手动将 CA 证书分发给每个想要使用代理的客户端。

正如我在 answer 中所说的那样关于你的最后一个问题,如果你想让互联网上的每个人都可以访问它,那么你将需要使用来自受信任的公共(public) CA 的证书。来自这些来源的 CA 证书已包含在浏览器中,因此您无需添加它们。

您可以向 CA 支付一份很可能有几年有效期的证书,或者您可以使用 LetsEncrypt,后者将提供一份有效期为 90 天的免费证书,但他们也提供了一个可以续订证书的工具为您编写脚本以更新证书,然后重新启动 mosquitto。

设置 mosquitto 的过程是一样的,你只需要使用来自 CA 的文件。

对于付费证书,您将生成一个私钥,然后从中创建一个 CSR(证书签名请求),您将其发送给 CA,他们将发回证书。

对于 LetsEncrypt,命令行工具将为您创建私钥和 CSR,并将其发送给 CA 以获取证书。这些文件将存储在 /etc/letsencrypt/live/[hostname]/ 中。确保在 mosquitto.conf 中使用 fullchain.pem 作为 CA 证书条目。

关于javascript - 如何为mosquitto安装ssl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59475860/

相关文章:

python - 为什么我不能在 Raspberry Pi 上使用 python-mosquitto?

tomcat - 我可以使用 Tomcat 服务器和 MQTT 吗?

c++ - 在函数中创建新对象 - C++

javascript - 可以在 javascript 中创建小对话框 onclick 不警报

javascript - 如何显示/隐藏基于 css 类的内容

javascript - jQuery onLoad 事件在加载任何内容之前触发

ios - Google Analytics SDK 是否使用 SSL?

java - ldaptive 中信任证书的 "name"是什么?

javascript - 检测子窗口何时加载 "each"时间

laravel - Laravel Rest-API 端点的 HTTPS