MQTT - "Connection refused" i brak kluczy

Witajcie.
Śledzę forum od jakiegoś czasu. Mój HA to wirtualna maszyna.
Problem dotyczy MQTT przy próbie opublikowania wiadomości pojawia się komunikat.

mosquitto_sub -t "Wiadomosc"
Error: Connection refused

Przy próbie zdiagnozowania problemu zauważyłem, że - o ile umiem ich szukać - nie ma kluczy do szyfrowania.

Dotyczy to też terminala SSH - chyba

Dawno temu programowałem w zapomnianym chyba Visual Basic. Dobrze znam TSQL. Jednak w konfiguracji nie czuję się komfortowo.

Co mogę zrobić?

To jest instalacja Mosquitto typu Dodatek,
wiec powinieneś dodać potrzebnych użytkowników w HA (w zaawansowanym trybie użytkownika)
Ustawienia → Osoby → (zakładka) Użytkownicy (to jest drugi tab w trybie zaawansowanym, jeśli się nie przełączysz w zaawansowanego to tego nie będziesz miał dostępnego)
tryb zaawansowany użytkownika
Twój Użytkownik → (zakładka) Ogólny → (pole) Ustawienia użytkownika → Tryb zaawansowany → Włącz
po czym zrestartować po bożemu maszynę wirtualną (z zaawansowanego menu zamykania HAOS w HA)

Klucze szyfrowania nie są niezbędne w tym wypadku.


BARDZO WAŻNE
jeśli chcesz nam pokazać jakieś logi, to obrazki mogą być jako ilustracja, ale to ma być wklejone jako sformatowany tekst
Jak prawidłowo zamieszczać YAML, inny kod lub logi w postach na forum

Jestem w trybie zaawansowanym.

Dodałem użytkownika.

Kiedy próbuję w dodatku Mosquitto broker (wersja 6.5.0)
zmodyfikować konfigurację “Logins”

logins: []
anonymous: false
logins:
  - username: user_mqtt
    password: pwd_mqtt
require_certificate: false
certfile: fullchain.pem
keyfile: privkey.pem
customize:
  active: false
  folder: mosquitto

to po restarcie zawsze nie zapisują się zmiany.

OK.
Znalazłem jeszcze, że użytkownik ma być w Ustawienia > Urządzenia oraz usługi > MQTT
Wygląda, że działa coś tam publikuje i nasłuchuje

Dlaczego to nie działa w Terminalu i jest

Error: Connection refused
  1. Jeśli masz instalację brokera MQTT jako Dodatek, to podpowiedziałem najłatwiejsze rozwiązanie. Oczywiście musisz używać tych dodatkowych użytkowników (podkreśam mnogość, bo stwórz sobie ich tylu ilu kompletnie osobnych klientów MQTT chcesz podłączyć - będzie łatwiej ogarnąć co się dzieje) do łączenia się z brokerem.

  2. Nie umiem w prosty sposób wyjaśnić jak działa konteneryzacja, ale terminal jest OSOBNYM kontenerem, który żyje we własnym OSOBNYM świecie od brokera, NR (szczerze mówiąc nie wiem co ten wątek robi w dziale Node Red, skoro w ogóle o niego nie chodzi - może przeniesiemy go w lepsze miejsce?), HA czy czegośkolwiek innego. Więc jeśli coś publikujesz z terminala to musisz się w tym terminalu też zalogować do brokera osobno.
    (Najprościej - Dodatek to kontener Dockera specjalnie dostosowany do łatwej instalacji w HA, a kontener to taki sposób wirtualizacji w którym uruchamiasz w zasadzie tylko jedną aplikację przeważnie jakiś serwer w dedykowanym dla niego izolowanym środowisku, czymś w rodzaju maszyny wirtualnej, tylko dedykowanej dla jednej aplikacji, a nie całego OSa)

  3. Do testowania MQTT jest zajebiste narzędzie
    https://mqtt-explorer.com/
    i polecam je zainstalować w twoim ulubionym systemie operacyjnym, który rozumiesz jak działa

    dostępne jest też jako Dodatek z niestandardowego repo dla Sklepu
    GitHub - GollumDom/addon-repository


Skoro dodałeś sobie użytkowników do wykorzystania z brokerem to PO restarcie maszyny (u Ciebie wirtualnej) będą oni dostępni do wykorzystania przez wybrane Dodatki, więc nie musisz modyfikować już konfiguracji brokera (bo on sobie “zasysa” tych użytkowników z HA) zapomniałem powiedzieć, że to NIE mają być administratorzy tylko zwykli użytkownicy (bo broker nie potrzebuje klientów-administratorów, wystarczą mu zwykli użytkownicy, a w sytuacji gdy nie panujesz nad tym co się dzieje nie powinieneś szastać uprawnieniami gdzie są zbędne!!!).


Jak widzisz się sam broni, żebyś go nie psuł :upside_down_face: (ŻART)

Zgaduję, że próbujesz modyfikować konfigurację uruchomionego serwera, a tymczasem by to zrobić trzeba go zatrzymać.
(Modyfikując konfigurację Dodatku, Supervisor sam zadba o zatrzymanie Dodatku przed wprowadzeniem zmian w konfiguracji, o ile robisz to z GUI i to obojętnie czy w trybie GUI czy YAML)

Druga sprawa nie można wpisywać byle czego i byle jak


(to przyczyna dlaczego się nie udało nawet jeśli zatrzymałeś broker, czy został zatrzymany automatycznie, to Supervisor nie zezwolił na wprowadzenie niepoprawnej konfiguracji).

I trzecia - nie musisz tego robić jeśli dodałeś użytkowników w HA tak jak pisałem kilka razy wyżej, korzystasz z Dodatku to czytaj najpierw Dokumentację Dodatku.
Czytałeś to w ogóle? (i do końca??)

I ostatnie co ma do tego Node Red? bo chciałbym wywalić ten wątek do bardziej sensownego działu.


PS Trochę olałem temat kluczy (bo wiem, że nie są potrzebne)

ale szukałeś dobrze - w katalogu ssl są tworzone (lub się je samodzielnie tworzy) podkatalogi z kluczami (to rozwiązanie obowiązywało w HAOS przez ostatnie kilka lat i nie słyszałem o zmianach w architekturze w tym względzie, ale może i są jakieś zmiany).
Ale podkreślę, że do łączenia się z brokerem w konfiguracji jaką pokazałeś (na porcie 1883) nie potrzebujesz kluczy. Wystarczą poprawnie skonfigurowani użytkownicy oraz nie-grzebanie w konfiguracji Dodatku, póki nie będziesz wiedział jak ją modyfikować…