Ответ 1
По умолчанию Mosquitto будет по-прежнему разрешать анонимные подключения, то есть соединения, где не указаны имя пользователя и пароль.
В дополнение к записи password_file
вам также необходимо:
allow_anonymous false
Я использовал команду mosquitto_passwd
для создания файла паролей.
mosquitto_passwd /etc/mosquitto/passwd admin
Я добавил путь к файлу паролей в mosquitto.conf
:
password_file /etc/mosquitto/passwd
Но когда я подписываюсь или публикую его, не требуется имя пользователя/пароль?
mosquitto_sub -t '#' -d
Client mosqsub/19032-Dell sending CONNECT
Client mosqsub/19032-Dell received CONNACK
Client mosqsub/19032-Dell sending SUBSCRIBE (Mid: 1, Topic: #, QoS: 0)
Client mosqsub/19032-Dell received SUBACK
Subscribed (mid: 1): 0
Что я пропустил?
По умолчанию Mosquitto будет по-прежнему разрешать анонимные подключения, то есть соединения, где не указаны имя пользователя и пароль.
В дополнение к записи password_file
вам также необходимо:
allow_anonymous false
после изменения "allow_anonymous false" в /etc/mosquitto/mosquitto.conf пользователь без пароля по-прежнему может публиковать и подписывать
password_file
не должны быть пустыми. Или пароль не требуется.