Si l'on fait de la domotique à partir de son NAS Synology, il sera très certainement nécessaire de disposer d'un broker MQTT. On trouve sur le Net pas mal d'installations passant par Docker mais c'est totalement inutile, car la communauté propose déjà un paquet Mosquitto.
Sources :
- https://gist.github.com/ajumalp/0ad2517d15c999cfc440cdf3d623fab8
- https://www.lesalexiens.fr/actualites/tutoriel-installer-mosquitto-mqtt-sur-nas-synology/
- Pour cela, il faut aller dans le "Centre de paquets" -> bouton "Paramètres" -> onglet "Sources de paquet" -> cliquer sur "Ajouter" -> indiquer comme emplacement : https://packages.synocommunity.com.
- On installe ensuite le paquet de la "Communauté" intitulé " Mosquitto".
- Une fois installé, on stoppe ce paquet Mosquitto (on le relancera ensuite).
- Dans DSM, il faut activer l'utilisateur "admin" ainsi que le SSH
- À partir de son ordinateur on se connecte en SSH avec le login admin sur notre NAS.
- Pour passer en root, on tape :
sudo -i #en saisissant le mot de passe admin
- On recherche le fichier mosquitto.conf en tapant :
find / -name mosquitto.conf
- On va dans le dossier trouvé avec la précédente commande où se trouve mosquitto.conf en tapant (ce qui donne chez moi) :
cd /volume1/@appstore/mosquitto/var
- On édite le fichier avec la commande (on force l'édition si un message nous indique qu'il est utilisé par un autre processus) pour l'éditeur VIM (rien ne vous empêche d'en utiliser un autre) :
vim mosquitto.conf
- On édite (en appuyant sur la touche "i" dans vim) et on fait défiler la page pour trouver "# allow_anonymous" (autour de la ligne 650), on supprime le signe # et on remplace "true" par "false" pour obtenir la ligne "allow_anonymous false".
- On descend jusqu'à "#password_file" (autour de la ligne 668), on supprime le signe # pour obtenir "password_file /volume1/@appstore/mosquitto/var/fichier_MDP (où fichier_MDP sera le nom du fichier qui contiendra le mot de passe).
- On sauve et on ferme le fichier (avec la commande Échap -> :wq dans vim).
- On crée le fichier "fichier_MDP" avec la commande :
vim fichier_MDP
- On tape "username:password" en ajoutant autant d'utilisateur⋅rice par ligne et on sauvegarde et ferme ce fichier.
- Sans changer de répertoire, on recherche le fichier "mosquitto_passwd" avec la commande :
find / -name mosquitto_passwd
- On tape la commande suivante qui dépendra du chemin trouvé ci-dessus pour chiffrer le fichier mot de passe. Dans mon cas, comme mosquitto_passwd est dans le dossier "/volume1/@appstore/mosquitto/bin", on peut taper la commande :
../bin/mosquitto_passwd -U fichier_MDP
- Il ne reste plus qu'à relancer le paquet Mosquitto dans le centre de paquets.