TLS-Unterstuetzung fuer MQTT

MqttBridge(ssl=True) / mqtt_config.SSL: umqtt.simple.MQTTClient wird mit
ssl_params={"server_hostname": ..., "cert_reqs": CERT_NONE} aufgebaut --
SNI fuer virtuelle Hosts hinter einem Reverse-Proxy, aber ohne
Zertifikatspruefung (kein CA-Bundle auf dem Geraet). Verschluesselt die
Zugangsdaten auf der Leitung, schuetzt aber nicht vor einem aktiven
Man-in-the-Middle.

Anlass: Der Broker wechselte auf einen Host, der nur noch TLS anbot --
Klartext gegen den TLS-Port endete in ECONNRESET.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017zTSXLK4w32PoCmFgSzp68
This commit is contained in:
2026-09-04 17:35:50 +02:00
parent 0e4bb025ef
commit 9119bc0213
4 changed files with 74 additions and 6 deletions
+6
View File
@@ -538,6 +538,12 @@ cp mqtt_config_example.py mqtt_config.py # Broker, Port, ggf. Benutzer/Passw
**Fehlt die Datei, läuft die Anzeige einfach ohne MQTT** — `deploy.sh` weist nur
darauf hin und kopiert sie nicht.
**TLS:** `mqtt_config.SSL = True` (üblicherweise mit `PORT = 8883`) verschlüsselt
die Verbindung, prüft aber **nicht** das Serverzertifikat — auf dem Gerät liegt
kein CA-Bundle. Schützt die Zugangsdaten auf der Leitung, nicht vor einem
aktiven Man-in-the-Middle. Details in `mqtt_config_example.py` und
`mqtt.py` (`_neuer_client`).
### Topics
Empfangen (`<PREFIX>/set/<name>`):