Страницы

3 октября 2017 г.

MajorDomo. Установка MQTT Mosquitto


Обновить репозиторий:
sudo apt-get update

Установить 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

1 комментарий: