O MQTT, que originalmente era um acrônimo para o Transporte de Telemetria de Filas de Mensagem, é um protocolo de fila de mensagens leve, projetado para pequenos pacotes de dados enviados em alta latência e links de baixa largura de banda. O MQTT é um protocolo bastante simples e é perfeito para os projetos da Internet de Coisas. Também é perfeito para este projeto de sistema de segurança!
A versão do MQTT que uso neste tutorial é chamada Mosquitto. Está disponível via apt , então instalá-lo é bastante fácil. Existem várias etapas na configuração do componente Raspberry Pi do sistema de segurança. Como mencionei, estou usando um Raspberry Pi 3.
- Instale os componentes do mosquitto (MQTT).
- Configure o Mosquitto e reinicie o serviço.
- Habilitando inicialização automática.
1 - Instale os componentes Mosquitto (MQTT)
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get dist-upgrade
$ sudo apt-get install mosquitto
2 Configure mosquitto e reinicie o serviço
Mosquitto é controlado de duas maneiras. Primeiro, a configuração padrão está em etc/mosquitto/mosquitto.conf . Eu recomendo que você não edite este arquivo e use o segundo mecanismo, que é um arquivo com uma extensão .conf em /etc/mosquitto/conf.d. Crie um outro arquivo /etc/mosquitto/conf.d/mosquitto.conf . Aqui está o arquivo de configuração local que eu recomendo:
# Config file for mosquitto
#
# See mosquitto.conf(5) for more information.
user mosquitto
max_queued_messages 200
message_size_limit 0
allow_zero_length_clientid true
allow_duplicate_messages false
listener 1883
autosave_interval 900
autosave_on_changes false
persistence true
persistence_file mosquitto.db
allow_anonymous true
password_file /etc/mosquitto/passwd
3 Habilitando inicialização no boot
Desabilite o script do init.d.
sudo update-rc.d mosquitto remove
Crie um usuário mosquitto.
$ sudo useradd --system mosquitto
[Unit]
Description=Mosquitto MQTT Broker daemon
ConditionPathExists=/etc/mosquitto/mosquitto.conf
After=network.target
Requires=network.target
[Service]
Type=forking
RemainAfterExit=no
StartLimitInterval=0
PIDFile=/var/run/mosquitto.pid
ExecStart=/usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf -d
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure
RestartSec=2
[Install]
WantedBy=multi-user.target
Habilite o serviço.
$ sudo systemctl daemon-reload
$ sudo systemctl enable mosquitto.service
$ sudo systemctl restart mosquitto
Referências
- https://learn.adafruit.com/diy-esp8266-home-security-with-lua-and-mqtt/configuring-mqtt-on-the-raspberry-pi;
- https://xperimentia.com/2015/08/20/installing-mosquitto-mqtt-broker-on-raspberry-pi-with-websockets/
Nenhum comentário:
Postar um comentário