You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux设备双MQTT Broker桥接授权失败问题求助

两台Mosquitto MQTT Broker桥接时的授权问题

我在一台Linux设备上运行两个独立的MQTT Broker,通过以下脚本完成第一个Broker的配置(第二个Broker仅将后缀IoT改为HA、端口设为1884,配置步骤省略):

temp_file=/tmp/mosquittoIoT.conf
cat <<EOF > $temp_file
listener 1883
allow_anonymous false
password_file /etc/mosquitto/conf.d/brokerIoT/credentialsIoT

connection bridge_to_target
address 192.168.0.2:1884  # Assuming the target broker is running on port 1884
topic cmnd/# both 0

log_dest file /var/log/mosquitto/mosquitto.log
log_type all
EOF
sudo mv $temp_file /etc/mosquitto/conf.d/brokerIoT/mosquittoIoT.conf

temp_file=/tmp/mosquittoIoT.service
cat <<EOF > $temp_file
[Unit]
Description=Mosquitto MQTT Broker IoT

[Service]
ExecStart=/usr/sbin/mosquitto -c /etc/mosquitto/conf.d/brokerIoT/mosquittoIoT.conf

[Install]
WantedBy=multi-user.target
EOF
sudo mv $temp_file /etc/systemd/system/mosquittoIoT.service

我想要同步两个Broker的cmnd主题及其所有子主题,但持续收到如下错误:

1726351450: Sending SUBACK to 65bBPKjODcW8Zcq1BtKjiL
1726351453: Bridge local.piserver.bridge_to_target doing local SUBSCRIBE on topic cmnd/#
1726351453: Connecting bridge (step 1) bridge_to_target (192.168.0.2:1883)
1726351453: Connecting bridge (step 2) bridge_to_target (192.168.0.2:1883)
1726351453: Bridge piserver.bridge_to_target sending CONNECT
1726351453: New connection from 192.168.0.2:58414 on port 1883.
1726351453: Sending CONNACK to 192.168.0.2 (0, 5)
1726351453: Client <unknown> disconnected, not authorised.
1726351453: Received CONNACK on connection local.piserver.bridge_to_target.
1726351453: Connection Refused: not authorised
1726351453: Client local.piserver.bridge_to_target closed its connection.
1726351453: Sending PUBLISH to mqtt-explorer-5de5cf70 (d0, q0, r0, m0, '$SYS/broker/connection/piserver.bridge_to_target/state', ... (1 bytes))
1726351455: Received PUBLISH from 65bBPKjODcW8Zcq1BtKjiL (d0, q0, r0, m0, 'homeassistant/status', ... (6 bytes))
1726351455: Sending PUBLISH to mqtt-explorer-5de5cf70 (d0, q0, r0, m0, 'homeassistant/status', ... (6 bytes))
1726351457: Bridge local.piserver.bridge_to_target doing local SUBSCRIBE on topic cmnd/#
1726351457: Connecting bridge (step 1) bridge_to_target (192.168.0.2:1884)
1726351457: Connecting bridge (step 2) bridge_to_target (192.168.0.2:1884)
1726351457: Bridge piserver.bridge_to_target sending CONNECT
1726351457: New connection from 192.168.0.2:52406 on port 1884.
1726351457: Sending CONNACK to 192.168.0.2 (0, 5)
1726351457: Client <unknown> disconnected, not authorised.
1726351457: Received CONNACK on connection local.piserver.bridge_to_target.
1726351457: Connection Refused: not authorised
1726351457: Client local.piserver.bridge_to_target closed its connection.

我无法理解为何会出现授权问题:两个Broker使用相同的用户名和密码,且我能通过MQTT Explorer正常连接,设备也可向两个Broker发送数据,仅桥接时出现该问题。请问有人能指出我哪里操作有误吗?

感谢各位


内容的提问来源于stack exchange,提问作者AleXSR700

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 06:50:16