MQTT Projekt II.
Grundaufbau
Connectivity
ssh
- mqtt
- ssh xinux@opnsense -p 9822
- sensor
- ssh xinux@opnsense -p 9823
- aktor
- ssh xinux@opnsense -p 9824
http
- sensor
- aktor
Unverschlüsselt mit Passwort
mqtt
- Benutzer anlegen
- user: xinux
- pass: 123Start$
- mosquitto_passwd -c /etc/mosquitto/passwd xinux
- Konfiguration kopieren
- cp /etc/mosquitto/conf.d/defaults.conf.mit-password /etc/mosquitto/conf.d/defaults.conf
- Konfigurationsdatei
# Öffnet den MQTT-Broker auf Port 1883 und bindet ihn an alle verfügbaren Netzwerkinterfaces. listener 1883 0.0.0.0 # Erlaubt anonyme Verbindungen, d. h. ohne Benutzername und Passwort. allow_anonymous true # Aktiviert alle Log-Typen für eine detaillierte Protokollierung. log_type all # Zeigt Verbindungs- und Trennungsmeldungen von Clients im Log an. connection_messages true #Hier gegen wird authentifiziert. password_file /etc/mosquitto/passwd
- Restarten
- systemctl restart mosquitto.service
- Checken
- systemctl status mosquitto.service
Aktor
Der Aktor abonniert (subscribed) die Nachrichten und reagiert darauf.
- mosquitto_sub -h mqtt.lab.intern -u xinux -P 123Start$ -t test
Sensor
Der Sensor sendet (published) die Nachrichten an das Topic.
- mosquitto_pub -h mqtt.lab.intern -u xinux -P 123Start$ -t test -m "Hello World"
- mosquitto_pub -h mqtt.lab.intern -u xinux -P 123Start$ -t test -m "2 Nachricht"
kali
Hier kann man auf Wireshark mitschneiden. Der Text ist Hexadezimal codiert.
- Beispiel
- 536368616c7465206469652054757262696e656e20766f6d2041746f6d6b726166747765726b20617573
- Die kann man mit Follow TCP Stream oder auf der Konsole decodieren.
- echo -n "536368616c7465206469652054757262696e656e20766f6d2041746f6d6b726166747765726b20617573" | xxd -r -p
Schalte die Turbinen vom Atomkraftwerk aus
