Problem z połączeniem do własnego MQTT Broker z supla-docker

karnasw
Posty: 187
Rejestracja: pt paź 02, 2020 10:22 am

Cześć, od 26 lipca przestało mi działać połączenie do MQTT na malince. Jakiś czas temu odpuściłem połączenie przez zabezpieczone połączenie TLS i korzystałem z portu 1883. Dotąd nie było problemu, w międzyczasie puszczałem aktualizacje malinki. Suplę podniosłem do wersji 22.07 dopiero w sierpniu. Teraz mosquitto wyrzuca informację:

Kod: Zaznacz cały

1660126765: New connection from 172.24.0.4:33668 on port 1883.
1660126765: Client <unknown> disconnected, not authorised.
Nazwa użytkownika i hasło jest prawidłowe. MQTT Explorer i Home Assistant bez problemu łączy się z certyfikatami TLS jak i bez.

Ustawienia supla:

Kod: Zaznacz cały

MQTT_BROKER_ENABLED=true
MQTT_BROKER_HOST=192.168.162.10
MQTT_BROKER_PORT=1883
MQTT_BROKER_TLS=false
MQTT_BROKER_USERNAME=user
MQTT_BROKER_PASSWORD=pass
MQTT_BROKER_CLIENT_ID=supla
Ustawienia mosquitto:

Kod: Zaznacz cały

per_listener_settings true
listener 1883
allow_anonymous false
password_file /etc/mosquitto/passwd

listener 8883
cafile /etc/mosquitto/ca_certificates/ca.crt
certfile /etc/mosquitto/certs/server.crt
keyfile /etc/mosquitto/certs/server.key
allow_anonymous false
password_file /etc/mosquitto/passwd

require_certificate false
#pid_file var/run/mosquitto/mosquitto.pid
persistence true
persistence_location /var/lib/mosquitto
#log_dest file /var/log/mosquitto.log
include_dir /etc/mosquitto/conf.d
Po TLS prawdpodobnie supla nie chce się połączyć, ponieważ w ogóle nie rozpoznaje nazwy hosta (raspberrypi), a połączenie z certyfikatem tego wymaga. Da się jakoś te IP pod nazwą hosta mu przekazać?
Awatar użytkownika
pzygmunt
Posty: 18279
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontakt:

Sprawdź logi supla-server, może coś więcej tam będzie.

Odnośnie TLS....
Połączenie tls nie weryfikuje nazwy hosta. Tam będzie problem wersji jeśli chodzi o szyfrowanie.
karnasw
Posty: 187
Rejestracja: pt paź 02, 2020 10:22 am

Kod: Zaznacz cały

ERR[1660128851.874857] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128851.893224] MQTT_ERROR_SOCKET_ERROR
ERR[1660128856.822296] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128856.876119] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128856.895242] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128861.824969] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128861.879168] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128861.897632] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128866.826113] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128866.880455] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128866.898819] MQTT_ERROR_SOCKET_ERROR
ERR[1660128871.828800] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128871.883404] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128871.901269] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128876.831331] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128876.886577] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128876.903896] MQTT_ERROR_SOCKET_ERROR
ERR[1660128881.834059] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128881.889034] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128881.906073] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128886.835223] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128886.890307] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128886.907153] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128891.837947] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128891.892787] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128891.909348] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128896.839124] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128896.894022] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128896.910372] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128901.840465] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128901.895498] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128901.911554] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128906.842827] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128906.897707] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128906.913567] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128911.845534] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128911.900455] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128911.916019] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128916.846685] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128916.901648] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128916.917094] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128921.849515] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128921.904303] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128921.919556] MQTT_ERROR_SOCKET_ERROR
ERR[1660128926.850659] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128926.905523] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128926.920688] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128931.853729] MQTT_ERROR_SOCKET_ERROR
ERR[1660128931.907143] MQTT_ERROR_CONNECTION_REFUSED
ERR[1660128931.929889] MQTT_ERROR_SOCKET_ERROR
Awatar użytkownika
pzygmunt
Posty: 18279
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontakt:

Mosquitto odrzuca to połączenie
karnasw
Posty: 187
Rejestracja: pt paź 02, 2020 10:22 am

Pewnie wpadła nowsza wersja mosquitto i coś już mu nie pasuje.
Awatar użytkownika
pzygmunt
Posty: 18279
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontakt:

supla-server działa poprawnie z najnowszą wersją mosquitto v2.0.14.
Awatar użytkownika
Goral64
Posty: 3131
Rejestracja: pt gru 27, 2019 6:22 pm
Lokalizacja: Żerniki Wrocławskie
Kontakt:

pzygmunt pisze: śr sie 10, 2022 11:28 am supla-server działa poprawnie z najnowszą wersją mosquitto v2.0.14.
Tylko tu jest mała różnica w konfigu ze starszymi wersjami mosquitto, trzaby doczytać.
Widzimy się na Supla Offline Party Season 2 :D

Obrazek
karnasw
Posty: 187
Rejestracja: pt paź 02, 2020 10:22 am

Wersja na malince to 2.0.11. Ten konfig, który mam działał mi spokojnie prawie rok. Zainstalowałem jeszcze na nowo suplę. Przywróciłem bazę. Niestety wciąż taki sam problem.

MQTT Explorer na wszystkie możliwe sposoby się łączy, bez TLS z TLS, bez hasła z hasłem. Home Assistant też nie ma problemu. Nie mam niestety pomysłu.
Awatar użytkownika
pzygmunt
Posty: 18279
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontakt:

Połącz się do kontenera Supla-server i sprawdź czy możesz się telnetnąć na host:port gdzie jest mosquitto.
Przy okazji sprawdź czy ustawienia w /etc/supla-server się zgadzają.
karnasw
Posty: 187
Rejestracja: pt paź 02, 2020 10:22 am

Bingo, moje hasło do brokera zawiera znak $ i od tego momentu włącznie ucina je. Jeżeli hasło to np. wwws$88 to w supla.cfg pojawia się tylko wwws.

Po usunięciu znaku dolara wszystko działa (bez SSL). Z SSL nie podziałam bo niestety nie można wskazać plików certyfikatu.
ODPOWIEDZ

Wróć do „MQTT”