Wpis z mikrobloga

#programista15k #raspberrypi #iot #esp8266

Programistyczne mireczki - potrzebowałbym pomocy z domowym projektem, gdyż nie mogę sam sobie poradzić.

O projekcie:
Potrzebowałbym postawić MQTT brokera na raspberry i przesyłać do niego dane z czujników w sieci domowej i znajdującej się też poza domem za pomocą modułów 2G/NB. Z racji, że dane wędrowały by po internetach chciałem zastosować SSL.

Co udało się zrobić:
Na początku podstawiłem mosquitto i skonfigurowałem go bez użycia SSL. Przekierowałem sobie port 1883 na routerze do RPi (mam Orange Światłowód, z publicznym zmiennym IP), odpaliłem DDNS. Mogę przesyłać sobie dane po MQTT bez problemu z sieci domowej jak i z internetu

Czego nie udało się zrobić:
Po sukcesach z MQTT chciałem ogarnąć MQTTs, wygenerowałem sobie certyfikaty i skonfigurowałem odpowiednio mosquitto. ca.crt wrzuciłem sobie do klientów łączących się z serwerem. Przekierowałem port 8883 z routera do RPi. O ile wszystko działa pięknie w sieci domowej, o tyle kiedy próbuje dobić się z zewnątrz (internetów) to... widzę połączenie do brokera, ale następuje błąd klienta (unknown). Próbowałem też zrobić to na MQTT.fx (który na pewno działa w sieci domowej) i nadal to samo. Przeczytałem już kilkadziesiąt stronek i wpisów na forach - jednak nadal nie znalazłem odpowiedzi.

Może ktoś poradzi co jeszcze można sprawdzić? Próbowałem generować certyfikaty z "Common Name" ustawiony na adres IP (ten który mam), na swoją subdomenę (która przekierowywuje na DDNS za pomocą rekodru CNAME), na domene (czyli adres IP który aktualnie mam).

Problem definitywnie jest po stronie SSL, jednak "error unknown" niewiele mi mówi. Może ktoś z was przepracował już taki problem i zna rozwiązanie?
  • 9
@Dorrek: tutaj widzę, że ktoś ma problem z samym MQTT i to w sieci lokalnej. U mnie to działa, działa też MQTT i dostęp z zewnątrz internetu, działa też MQTTs w sieci lokalnej. Jedyne co nie działa to MQTTs z internetów
@sloma_: tylko w przypadku modulow 2G/LTE CAT-NB bedzie to problematyczne, bo wymagaloby pewnie jakies specjalnie konfigurowanej karty SIM i ustawien po stronie operatora (zakladam ze to niemozliwe lub tez horrendalnie drogie). Inna opcja to wystawienie internetu z modulu do zewnetrznego MCU po jakims PPP na UART i stawianie calego stacka na MCU, ale to objazd z Warszawy do Wroclawia przez NY :c jedyne racjonalne rozwiazanie jakie widze to uruchomienie MQTTs, domyslam
@bociaan: Nie wiem serio jak to są moduły jakieś standalone, nie mają połączenia z routerem to może masz rację. Wiem tylko tyle że każdy mój znajomy domowe IoT po vpnie sobie robił. Z tego co czytam że zależy ci żeby system zachowywał tak samo niezależnie czy jesteś wpięty w domu czy jesteś gdzieś na świecie. Takie coś możemy uzyskać właśnie dzięki zastosowaniu VPN. 2 sprawa czy ty to na dockerach stawiasz