MQTT Passwort mit Sonderzeichen ‚#‘ funktioniert nicht

MQTT Passwort mit Sonderzeichen ‚#‘ funktioniert nicht

Tags:
0
0

Hallo,

mein Mosquitto-Broker auf einem Raspberry Pi hat ist mit einem Passwort geschützt, das ein Sonderzeichen ‚#‘ enthält. Ich gebe in der Konfiguration folgende (Beispiel!) MQTT-URL ein und drücke auf „Speichern“:

mqtt://benutzer:Pass#Word@192.168.0.88

Dann wird das im Log so dargestellt und die Verbindung schlägt fehl:

MQ startup mqtt://benutzer#word%40192.168.0.88

Ich möchte ungern das Passwort ändern müssen, weil der Broker in zahlreichen Geräten konfiguriert ist.
Wie kann ich das Passwort setzen, dass es unverändert übernommen wird?

Gelöst
markiert als Spam
Geschrieben von (Fragen: 4, Antworten: 9)
Gefragt am 8. September 2024 15:34
59 views

Antworten (9)

0
Private answer

Habe jetzt extra meinen Raspi neu aufgesetzt mit der neuesten Raspbian-Version (bookworm) und RealVNC zum Laufen gebracht, um Wireshark mit grafischer Oberfläche einsetzen zu können. Und siehe da: Die Wallbox authentifiziert sich korrekt trotz "#" im Passwort (escaped als "%23") und die Topics werden übertragen.

Keine Ahnung, wo das Problem lag, aber vermutlich doch PEBCAK.

markiert als Spam
Geschrieben von (Fragen: 4, Antworten: 9)
Beantwortet am 15. September 2024 18:10
0
Private answer

ich habe es hier nochmal mit user "wusel" und passwort "123%2345 probiert. Es wird lt. Wireshark korrekt ein user wusel und pwd 123#45 übertragen und der broker akzeptiert das auch.

Keine Ahnung, was das für ein Problem ist. Wenn Du die Ursache findest, wäre nett, wenn Du es hier posten würdest, damit andere auch von der Lösung profitieren können.

markiert als Spam
Geschrieben von cFos (Fragen: 2, Antworten: 128)
Beantwortet am 11. September 2024 9:31
0
Private answer

Nach erneutem Neustart der Wallbox war zwar das "drehende Zahnrad" weg, aber die Verbindungsaufnahme zum MQTT-Broker ist nach wie vor nicht geglückt bzw. es kamen keine Daten an. Im Log des Brokers war nicht zu erkennen, woran es scheiterte, insbesondere keine Meldung über fehlerhafte Credentials.

Als letzte Maßnahme habe ich im Broker die anonyme Verbindungsaufnahme erlaubt, jetzt kommen Daten der PowerBrain. Nicht perfekt, aber bis auf Weiteres kann bzw. muss ich damit leben.

 

markiert als Spam
Geschrieben von (Fragen: 4, Antworten: 9)
Beantwortet am 10. September 2024 17:03
0
Private answer

Nach wie vor keine Daten per MQTT. Habe nun auch im Lastmanagement die Broker-URL eingetragen und in der Wallbox-Konfig die MQTT-Einstellungen überprüft, seither dreht sich auf der Startseite das Zahnrad für die Wallbox-Einstellungen unaufhörlich.

Irgendwo ist da ein größerer Wurm drin, obwohl ich m.W. nichts Außergewöhnliches eingestellt habe und die Wallbox bisher sowieso nur im Standalone-Betrieb läuft. Wie kann ich dem auf den Grund gehen?

markiert als Spam
Geschrieben von (Fragen: 4, Antworten: 9)
Beantwortet am 10. September 2024 14:06
0
Private answer

die Daten werden immer übertragen, nicht nur beim Laden. Ich habe es hier mit mosquitto und %23 ausprobiert. ging.

markiert als Spam
Geschrieben von cFos (Fragen: 2, Antworten: 128)
Beantwortet am 10. September 2024 7:48
0
Private answer

Das Escapen des Hash-Zeichens mit '%23' hatte ich bereits ausprobiert, hat allerdings nichts gebracht. Allerdings hatte sich offenbar die Wallbox komplett aufgehängt und keine Änderungen mehr übernommen, ein Neustart über die Web-Oberfläche hat daran nichts geändert.

Habe schließlich die Wallbox für eine Minute stromlos gemacht (4-poliger Ausschalter im Zählerschrank), danach die MQTT-URL komplett neu eingegeben und es kam keine Fehlermeldung mehr im Log. Allerdings habe ich seither auch noch nicht geladen, kann es sein dass nur bei einem Ladevorgang Daten übermittelt werden?

Im Log des MQTT-Brokers wurde die Verbindungsaufnahme protokolliert, allerdings wurde die Verbindung nach 50 Sekunden beendet mit "Client has exceeded timeout"

Mal sehen, ob beim nächsten Laden Daten übermittelt werden.

markiert als Spam
Geschrieben von (Fragen: 4, Antworten: 9)
Beantwortet am 9. September 2024 20:17
0
Private answer

also das # ist kein erlaubtes Zeichen einer URL, denn es leitet den "hash" ein. Daher muss es mittels %23 escaped werden. Dann sollte es gehen.

markiert als Spam
Geschrieben von cFos (Fragen: 2, Antworten: 128)
Beantwortet am 9. September 2024 14:55
0
Private answer

das schauen wir uns an...da könnte glatt noch ein bug drin sein

markiert als Spam
Geschrieben von cFos (Fragen: 2, Antworten: 128)
Beantwortet am 9. September 2024 10:20
0
Private answer

Als Ergänzung: In der Sicherung der CFOS-Konfiguration wird das Passwort korrekt angezeigt, es wurde also richtig gespeichert. Nur bei der Verbindungsaufnahme zum MQTT-Server wird der Teil vor dem '#' abgeschnitten, einschließlich des trennenden ':' zwischen Benutzernamen und Passwort.

markiert als Spam
Geschrieben von (Fragen: 4, Antworten: 9)
Beantwortet am 8. September 2024 15:43