mqtt - 在MQTT Broker中添加用户

标签 mqtt mosquitto

我有一个在Ubuntu 16.04中运行的MQTT代理。我的问题是,在代理运行时如何添加用户?当我使用添加用户时

mosquitto_passwd -c /etc/mosquito/pwfile user2

该用户确实显示在pwfile中,但是直到重新启动代理后,我才能从外部源访问该用户。
我尝试使用
sudo mosquitto -c /etc/mosquitto/mosquitto.conf

重新加载mosquitto.conf文件,但出现此错误
1483102542: Config loaded from /etc/mosquitto/mosquitto.conf.
1483102542: Opening ipv4 listen socket on port 1883.
1483102542: Error: Address already in use

那么我该怎么做才能将用户添加到代理中并加载它们而不重启代理呢?访问)

最佳答案

有2个选项。

  • Mosquitto在启动时会读取密码文件,因此在运行mosquitto_passwd时不会获取更改。您可以通过向mosquitto代理发送HUP信号
  • 来强制mosquitto重新读取文件。
  • 如果要动态添加/删除用户,则更好的选择是停止使用密码文件,并使用mosquitto-auth-plugin(它使您可以使用数据库来存储用户名/密码和ACL条目)。
  • 关于mqtt - 在MQTT Broker中添加用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41396710/

    相关文章:

    mqtt - Mosquitto MQTT Broker 中的访问控制

    ubuntu - 如何配置 mosquitto 的 Ubuntu snap 版本?

    c - 构建期间的警告消息 --> 警告 : "bool" redefined

    docker - Docker容器设置理解

    azure - 无法通过 mosquitto、paho 使用 X509 CA 证书连接 IoT 中心

    openssl - Mosquitto OpenSSL 握手失败。

    Swagger 类似队列和消息传递的文档,例如 mqtt 或 sqs

    javascript - 在 MQTT 客户端 "Uncaught ReferenceError: Messaging is not defined"

    php - 在后台运行 php 脚本,永不死 linux

    MQTT清洁 session