Owntracksdaten mit Bridge hinter die Firewall holen
Ich hatte schon vor einigen Jahren mal einen Owntracks Server aufgebaut aber das ist irgendwie wieder eingeschlafen. Jetzt mit größeren Kindern (die freiwillig mitmachen) und weiteren Szenarien der Hausautomation wollte ich das noch mal aufleben lassen.
Im Gegensatz zu dem ersten Versuch allerdings nicht mit selbst signierten Zertifikaten sondern mit Letsencrypt. Die Standardinstallation des MQTT Brokers mit der Version im aktuellen Debian Repository hat nicht geklappt aber mit der aktuellen Version von hier war es dann kein Problem. Die TLS relevanten Einträge sind dann hier erläutert.
cafile /etc/ssl/certs/DST_Root_CA_X3.pem
certfile /etc/letsencrypt/live/your.server.de/fullchain.pem
keyfile /etc/letsencrypt/live/your.server.de/privkey.pem
Der Broker im Internet ist natürlich abgesichert mit Usernamen und TLS. Innerhalb meines Heimnetzes möchte ich das nicht jedem potentiellen Client beibringen und deshalb wollte ich dort einen offenen Broker mit anonymem Zugriff einrichten.
Damit alle Owntracks Informationen auch “intern” verfügbar sind braucht man eine “Bridge Verbindung”. Aufgrund meines Troubleshootings mit TLS und der alten Mosquitto Verion hatte ich eine etwas unordentliche TSL Einrichtung. Mit dem Owntracks Client ging es aber die Bridgeverbindung kam nicht zustande.
OpenSSL Error: error:14094418:SSL routines:ssl3_read_bytes:tlsv1 alert unknown ca
Am ende war es recht einfach. Die Bridge ist jetzt so konfiguriert
connection lcl2extern
address your.server.de:8883
tls_version tlsv1.2
bridge_cafile /etc/ssl/certs/DST_Root_CA_X3.pem
bridge_insecure false
remote_username user
remote_password password
topic owntracks/# in 0
Und die Owntracks Meldungen erscheinen jetzt auch schön im Heimnetzwerk und warten darauf jetzt ausgewertet zu werden.