在通过 mosquitto 使用 Websockets 上的 MQTT 作为代理时,我如何限制与一组特定来源的连接?
While using MQTT over Websockets via mosquitto as a a broker, how do I limit connections to a particular set of origins?
我设置了一个 mosquitto mqtt 代理服务器,并且设置正常运行。
然而,问题是任何来源目前都可以通过 websockets 连接到我的实例,这会导致安全问题。
如何将其限制为一组来源?我在文档中找不到与此相关的任何内容。
这与原生 MQTT 没有什么不同。
您有 3 个选项:
启用身份验证并设置 ACL,以便只有经过身份验证的客户端才能连接(设置 allow_anonymous false
并设置密码文件或在配置文件中添加身份验证插件)
设置防火墙以断开来自未知主机的连接
编辑
- 使用 nginx 来代理 mosquitto,并在升级前使用它来执行源规则。 (我还没有尝试过,但应该可以)
我设置了一个 mosquitto mqtt 代理服务器,并且设置正常运行。
然而,问题是任何来源目前都可以通过 websockets 连接到我的实例,这会导致安全问题。
如何将其限制为一组来源?我在文档中找不到与此相关的任何内容。
这与原生 MQTT 没有什么不同。
您有 3 个选项:
启用身份验证并设置 ACL,以便只有经过身份验证的客户端才能连接(设置
allow_anonymous false
并设置密码文件或在配置文件中添加身份验证插件)设置防火墙以断开来自未知主机的连接
编辑
- 使用 nginx 来代理 mosquitto,并在升级前使用它来执行源规则。 (我还没有尝试过,但应该可以)