sudo apt-get update
Установить MQTT Mosquitto:
Установить MQTT Mosquitto:
sudo wget http://repo.mosquitto.org/debian/mosquitto-repo.gpg.key
sudo apt-key add mosquitto-repo.gpg.key
cd /etc/apt/sources.list.d/
sudo wget http://repo.mosquitto.org/debian/mosquitto-wheezy.list
sudo apt-get install mosquitto
sudo apt-get install mosquitto mosquitto-clients
Остановить сервер MQTT
sudo /etc/init.d/mosquitto stop
Выполнить настройку:
sudo nano /etc/mosquitto/mosquitto.conf
Заменить содержимое файла на следующее:
# Place your local configuration in /etc/mosquitto/conf.d/
#
# A full description of the configuration file is at
# /usr/share/doc/mosquitto/examples/mosquitto.conf.example
pid_file /var/run/mosquitto.pid
persistence true
persistence_location /var/lib/mosquitto/
log_dest topic
log_type error
log_type warning
log_type notice
log_type information
connection_messages true
log_timestamp true
include_dir /etc/mosquitto/conf.d
Запустить сервер MQTT:
sudo /etc/init.d/mosquitto start
Настроить пароль для MQTT:
sudo mosquitto_passwd -c /etc/mosquitto/passwd majordomo
sudo nano /etc/mosquitto/conf.d/default.conf
В созданный файл вписать:
allow_anonymous false
password_file /etc/mosquitto/passwd
Перезапустить MQTT сервер:
sudo systemctl restart mosquitto
Проверка MQTT сервера:
Открыть два окна терминала.
Терминал 1
Проверка на отказ по причине отсутствия авторизации:
mosquitto_pub -h localhost -t "Test" -m "Hello"
Должен быть ответ:
Connection Refused: not authorised.
Error: The connection was refused.
Терминал 2
Подписаться на топик:
mosquitto_sub -h localhost -t test -u "user" -P "password"
Терминал 1
Опубликовать топик:
mosquitto_pub -h localhost -t "Test" -m "Hello" -u "user" -P "password"
Терминал 2
Должно прийти сообщение сообщение опубликованное в Терминале 1
Hello
Поменять mosquitto-wheezy.list на mosquitto-jessie.list и будет ОК.
ОтветитьУдалить