16 346
правок
м (Убрал имя хоста из команд) |
м (→Настройка своего брокера MQTT: Форматирование) |
||
Строка 350: | Строка 350: | ||
== Настройка своего брокера MQTT == | == Настройка своего брокера MQTT == | ||
=== Установка брокера === | === Установка брокера === | ||
Установите <code>mosquitto</code>: | #Установите <code>mosquitto</code>: | ||
<syntaxhighlight lang="bash"> | #:<syntaxhighlight lang="bash"> | ||
apt update && apt install mosquitto mosquitto-clients -y | apt update && apt install mosquitto mosquitto-clients -y | ||
</syntaxhighlight> | </syntaxhighlight> | ||
#Отредактируйте файл конфигурации | |||
Отредактируйте файл конфигурации | #:<syntaxhighlight lang="bash"> | ||
<syntaxhighlight lang="bash"> | nano /etc/mosquitto/mosquitto.conf | ||
</syntaxhighlight> | |||
#И отключите возможность анонимного входа, добавив строки: | |||
#:<syntaxhighlight lang="bash"> | |||
#Disable anonomous login: | #Disable anonomous login: | ||
allow_anonymous false | allow_anonymous false | ||
#Password file: | #Password file: | ||
password_file /etc/mosquitto/mosquitto.pwd | password_file /etc/mosquitto/mosquitto.pwd | ||
</syntaxhighlight> | </syntaxhighlight> | ||
#Создайте пароль для пользователя, в примере использован пользователь <code>test</code> с паролем <code>test11test</code>: | |||
Создайте пароль для пользователя, в примере использован пользователь <code>test</code> с паролем <code>test11test</code>: | #:<syntaxhighlight lang="bash"> | ||
<syntaxhighlight lang="bash"> | |||
mosquitto_passwd -c /etc/mosquitto/mosquitto.pwd test | mosquitto_passwd -c /etc/mosquitto/mosquitto.pwd test | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Введите дважды пароль и запомните его, он вам пригодится ниже. | #Введите дважды пароль и запомните его, он вам пригодится ниже. | ||
#Перезапустите <code>mosquitto</code> и проверьте его состояние: | |||
#:<syntaxhighlight lang="bash"> | |||
Перезапустите <code>mosquitto</code> и проверьте его состояние: | |||
<syntaxhighlight lang="bash"> | |||
systemctl restart mosquitto && systemctl status mosquitto | systemctl restart mosquitto && systemctl status mosquitto | ||
</syntaxhighlight> | </syntaxhighlight> | ||
#Подключитесь к брокеру для проверки, в примере адрес брокера <code>10.0.26.1</code>: | |||
Подключитесь к брокеру для проверки, в примере адрес брокера <code>10.0.26.1</code>: | #:<syntaxhighlight lang="bash"> | ||
<syntaxhighlight lang="bash"> | |||
mosquitto_sub -v -h 10.0.26.1 -u test -P test11test -t "/#" | mosquitto_sub -v -h 10.0.26.1 -u test -P test11test -t "/#" | ||
</syntaxhighlight> | </syntaxhighlight> | ||
#Запустите в другой консоли команду ниже и убедитесь, что топик меняется: | |||
Запустите в другой консоли команду ниже и убедитесь, что топик меняется: | #:<syntaxhighlight lang="bash"> | ||
<syntaxhighlight lang="bash"> | |||
for i in {1..25}; do mosquitto_pub -h 10.0.26.1 -u test -P test11test -t "/client/temp1/temp" -m "$i" -r; done | for i in {1..25}; do mosquitto_pub -h 10.0.26.1 -u test -P test11test -t "/client/temp1/temp" -m "$i" -r; done | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Брокер установлен и доступен с контроллера. Для подключения нужно ввести логин и пароль. | |||
Брокер установлен | |||
=== Настройка моста на контроллере === | === Настройка моста на контроллере === | ||
Создайте файл конфигурации моста: | Создайте файл конфигурации моста: |