Introducción
Mosquitto es un agente de mensajes de código abierto (licencia EPL /EDL) que implementa el protocolo MQTT. Mosquitto es liviano y adecuado para su uso en todos los dispositivos. El protocolo MQTT proporciona un método ligero de mensajería mediante un modelo de publicación /suscripción. Esto lo hace adecuado para la mensajería de Internet de las cosas, por ejemplo, con sensores de baja potencia o dispositivos móviles como teléfonos o microcontroladores. El proyecto Mosquitto también proporciona una biblioteca C para implementar clientes MQTT y los muy populares clientes MQTT de línea de comando mosquitto_pub y mosquitto_sub.
En este tutorial, veremos cómo instalar Mosquitto en Ubuntu 18.04 LTS.
Si su intención es instalar Mosquitto en un servidor remoto, continúe leyendo; de lo contrario, omita el primer párrafo "Conexión al servidor" y lea el siguiente.
Conexión al servidor
Para acceder al servidor, necesita conocer la dirección IP. También necesitará su nombre de usuario y contraseña para la autenticación. Para conectarse al servidor como root, escriba el siguiente comando:
ssh root@IP_DEL_SERVER
A continuación, deberá ingresar la contraseña del usuario root.
Si no está utilizando el usuario root, puede iniciar sesión con otro nombre de usuario utilizando el mismo comando, luego cambie root a su nombre de usuario:
ssh VOSTRO_UTENTE@IP_DEL_SERVER
Luego se le pedirá que ingrese su contraseña de usuario.
El puerto estándar para conectarse a través de ssh es 22, si su servidor usa un puerto diferente, deberá especificarlo usando el parámetro -p, luego escriba el siguiente comando:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Instalar Mosquitto Broker
Para instalar Mosquitto Broker, recomiendo agregar el repositorio oficial para asegurarse de que está utilizando la última versión disponible.
Agregue el repositorio oficial de Mosquitto:
sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa
La actualización del índice del paquete ya debería haber comenzado, si no, actualícela con este comando:
sudo apt-get update
Instalar Mosquitto:
sudo apt-get install mosquitto
Instalar Clientes Mosquitto:
sudo apt-get install mosquitto-clients
Mosquitto ya debería estar activo, para verificar el estado:
sudo service mosquitto status
Debería ver un mensaje de salida similar al siguiente:
● mosquitto.service - LSB: mosquitto MQTT v3.1 message broker
Loaded: loaded (/etc/init.d/mosquitto; generated)
Active: active (running) since Thu 2019-08-22 00:00:21 CEST; 1s ago
Docs: man:systemd-sysv-generator(8)
Process: 28799 ExecStop=/etc/init.d/mosquitto stop (code=exited, status=0/SUCCESS)
Process: 29113 ExecStart=/etc/init.d/mosquitto start (code=exited, status=0/SUCCESS)
Tasks: 1 (limit: 2299)
CGroup: /system.slice/mosquitto.service
└─29119 /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf
Aug 22 00:00:21 TEST-SERVER-1 systemd[1]: Starting LSB: mosquitto MQTT v3.1 message broker...
Aug 22 00:00:21 TEST-SERVER-1 mosquitto[29113]: * Starting network daemon: mosquitto
Aug 22 00:00:21 TEST-SERVER-1 mosquitto[29113]:...done.
Aug 22 00:00:21 TEST-SERVER-1 systemd[1]: Started LSB: mosquitto MQTT v3.1 message broker.
Para detener Mosquitto:
sudo service mosquitto stop
Para iniciar Mosquitto:
sudo service mosquitto start
Para reiniciar Mosquitto:
sudo service mosquitto restart
Si desea ver los mensajes de control en la consola, debe iniciar manualmente mosquitto broker con el siguiente comando:
mosquitto -v
Debería ver un mensaje de salida similar al siguiente:
1566424688: mosquitto version 1.6.4 starting
1566424688: Using default config.
1566424688: Opening ipv4 listen socket on port 1883.
1566424688: Opening ipv6 listen socket on port 1883.
Inicie Mosquitto con un archivo de configuración
Para iniciar mosquitto usando un archivo de configuración, use el siguiente comando:
mosquitto -c nome_file
El archivo de configuración predeterminado mosquitto.conf se encuentra en el siguiente directorio:
/etc/mosquitto/
Es una buena idea hacer una copia de este archivo antes de editarlo.
Habilitar registros
La habilitación de registros es útil para solucionar problemas. La escritura de registros ya está habilitada en el archivo de configuración predeterminado, así que simplemente inicie mosquitto con este archivo de configuración. Parada Mosquitto:
sudo service mosquitto stop
Inicie Mosquitto con un archivo de configuración, por ejemplo con el archivo predeterminado:
mosquitto -c /etc/mosquitto/mosquitto.conf
También puede usar una opción de línea de comando -v para habilitar los registros:
mosquitto -v
Iniciar múltiples Mosquitto Broker
Puede configurar un intermediario para que escuche en varios puertos, pero para crear varios intermediarios con sus propias configuraciones, deberá iniciar varias instancias de Mosquitto. Empiece a escuchar Mosquitto en la puerta 1883:
mosquitto -p 1883
Inicie Mosquitto como un demonio de escucha en el puerto 1884:
mosquitto -p 1884 -d
Inicie Mosquitto como un demonio y use un archivo de configuración que no sea el mosquittio_2.conf predeterminado:
mosquitto -c /etc/mosquitto/mosquittio_2.conf -d
Los comandos de Linux son útiles para detener Mosquitto cuando se ejecuta como un demonio. Recupere el Mosquitto PID con el siguiente comando:
ps -aux | grep mosquitto
O:
pgrep mosquitto
Detenga (elimine) el proceso (reemplace PID con el número de proceso):
kill -9 PID
Conclusión
En este tutorial hemos visto cómo instalar y usar Mosquitto Broker en Ubuntu 18.04 LTS.