Предуслови
Први корак: Инсталирајте Москуитто Брокер
Други корак: Инсталирајте клијенте и тестирајте
Трећи корак: Обезбедите лозинком
Закључак
МКТТ је базиран на моделу за објављивање/претплату, „лаки“ протокол за размену порука преко ТЦП/ИП за комуникацију између уређаја „Интернета ствари“ као што су ЕСП8266, Распберри Пи, итд. Веома је популаран код апликација са малим ресурсима и батеријама као што је кућа аутоматизација, сигурносни алармни системи и сензорске мреже на батерије.
Москуитто је посредник за поруке отвореног кода (или сервер) који имплементира МКТТ протоколе. Са својом добром подршком заједнице, документацијом и лакоћом инсталације постао је један од најпопуларнијих МКТТ брокера.
Предуслови
- Убунту 16.04 сервер са
rootприступом
- Отворите порт
TCP:1883на заштитном зиду
Први корак: Инсталирајте Москуитто Брокер
Ажурирајте Убунту листу пакета и инсталирајте најновији Москуитто Брокер доступан са њега
sudo apt-get update
sudo apt-get install mosquitto
Услуга Москуитто ће почети након инсталације.
Други корак: Инсталирајте клијенте и тестирајте
Инсталирајте МКТТ клијенте
sudo apt-get install mosquitto-clients
Москуитто клијенти нам помажу да лако тестирамо МКТТ преко услужног програма командне линије. Користићемо два командна прозора, један да се претплатимо на тему под називом "test"и један да објавимо поруку за њу.
Теме су ознаке које брокер користи за филтрирање порука за сваког повезаног клијента. Клијентски програм који је претплаћен на тему "Home1/BedroomTemp"ће слушати само поруке које су на исту тему објавили други клијенти.
Претплатите се на тему "test"
mosquitto_sub -t "test"
Mosquito_subје претплатнички клијент који смо инсталирали у претходној команди. Овде наводимо " -t" након чега следи назив теме.
Објавите поруку на тему "test"
Пријавите се на терминал као друга инстанца и објавите поруку на "test"тему.
mosquitto_pub -m "message from mosquitto_pub client" -t "test"
Овде после додатног параметра „ –m“ следи порука коју желимо да објавимо. Притисните " Enter" и требало би да видите поруку са mosquitto_pub clientприказану на другом терминалу где mosquito_sub clientје покренут.
Трећи корак: Обезбедите лозинком
Москуитто долази са услужним програмом за генерисање датотеке лозинке под називом mosquitto_passwd.
sudo mosquitto_passwd -c /etc/mosquitto/passwd dave
Password: password
Направите конфигурациону датотеку за Москуитто која показује на датотеку лозинке коју смо управо креирали.
sudo nano /etc/mosquitto/conf.d/default.conf
Ово ће отворити празну датотеку. Залепите следеће у њега.
allow_anonymous false
password_file /etc/mosquitto/passwd
Сачувајте и изађите из уређивача текста са " Ctrl+O", " Enter" и " Ctrl+X".
Сада поново покрените Москуитто сервер и тестирајте наше промене.
sudo systemctl restart mosquitto
У прозору претплатничког клијента притисните " Ctrl+C" да изађете из претплатничког клијента и поново га покрените следећом командом.
mosquitto_sub -t "test" -u "dave" -P "password"
Обратите пажњу на велико -П овде .
У прозору клијента за објављивање покушајте да објавите поруку без лозинке.
mosquitto_pub -t "test" -m "message from mosquitto_pub client"
Порука ће бити одбијена са следећом поруком о грешци.
Connection Refused: not authorised.
Error: The connection was refused.
Сада објавите поруку са usernameи password.
mosquitto_pub -t "test" -m "message from mosquitto_pub client" -u "dave" -P "password"
Притисните " Enter" и видећете поруку у прозору клијента за претплату, као у другом кораку.
Закључак
Сада смо поставили МКТТ сервер заштићен лозинком. Можете користити јавни ИП вашег Убунту сервера као МКТТ брокера за своје пројекте.