ioBroker hinter ReverseProxy (nginx)

Guten Abend zusammen,

hat jemand von euch ioBroker (oder andere Dienste) hinter einem Reverse Proxy (wie nginx) laufen?

Ich bin ein Neueinsteiger in dem Feld. Habe es geschafft, dass ich den ioBroker inkl eigenem Zertifikat hinter meinem DNS erreichen kann.

Was leider nicht klappt, sind Verlinkungen auf andere Adapert wie Energiefluss etc.
Die versuchen die IP (der ioBroker) mit einem anderen Port aufzurufen, was mit dem DNS natürlich nicht geht, da er auf 8081 zeigt.

Weiß jemand von euch, wie man nginx einstellen/konfigurieren muss, damit auch die Adapter mit der selben IP aber anderen Port aufgerufen werden können?

Danke und Gruß

1 „Gefällt mir“

Moin, von IoBroker hab ich keine Ahnung.

Es hört sich so an, als hättest du Nginx korrekt konfiguriert. Wenn einzelne Unterseiten wieder auf die IP und Port leiten, liegt das sehr wahrscheinlich an der Konfiguration des Dienstes (in deinem Fall IOBroker)

Musst mal schauen ob man da irgendwo was konfigurieren kann.

Nach kurzer Recherche würde ich behaupten unter Trusted Proxies die IP von Nginx eingeben und im Webadapter die externe Domain eingeben.

Außerdem sollten in der nginx Konfiguration Websockets aktiv sein.

Das ist aber wie gesagt nur eine Mutmaßung anhand Erfahrungswerten mit anderen Diensten.

Vielleicht hilft es ja :slight_smile:

1 „Gefällt mir“

Warum bei einem Adapter, der wahrscheinlich direkt in deinen ioBroker installiert ist, den Umweg über nginx gehen? Man gibt doch normalerweise die lokale IP Adresse deines ioBrokers an. Bin zwar schon ewig aus dem ioBroker Universum raus aber verstehe den Sinn dahinter nicht und höre/lese das zum ersten mal das es jemand versucht.

1 „Gefällt mir“

Ich rufe aktuell ioBroker mit dem DNS https://iobroker.local/ auf.
Dahinter wird auf die IP mit dem Port 8081 verwiesen.

Manche Adapter, die auf dem ioBroker laufen, nutzen für eine eigene Darstellung andere Ports. Beim Aufruf öffnen die nun https://iobroker.local:1880 (NodeRed) oder https://iobroker.local:8082 (u. a. Enegrgiefluss) usw.

Ohne DNS haben die Adapter die IP des ioBroker genommen und 8081 durch den anderen Port ersetzt. Das klappt

1 „Gefällt mir“

Aaah nun verstehe ich das. Das Problem wird sein das du in dein Reverse Proxy bestimmt nur den 8081 eingetragen hast. Daher kann er nur darauf verweisen. Da fehlen die Einträge dann für die anderen Ports.

1 „Gefällt mir“

8081 ist ja nicht „der ioBroker“, sondern nur die Admin-Instanz, welche dahinter konfiguriert ist. Aber schau dir mal die Instanzeinstellungen der Admin-Instanz an. Dort kann man ebenfalls Pfade für einen Reverse Proxy konfigurieren. Glaube das ist genau dafür gedacht. Aber bin nie tiefer eingestiegen.

1 „Gefällt mir“

Soweit habe ich das mir auch schon gedacht.
Nur habe ich noch nicht rausgefunden, wie man im ngix andere Ports bei der selben Source einstellt

1 „Gefällt mir“

Das sieht mir vielversprechend aus, werde ich mich mal mit beschäftigen, danke :slight_smile:

1 „Gefällt mir“

Ich habe vor kurzem einen Aha-Moment mit Nginx Proxy Manager gehabt. Weiterleitung hat nicht funktioniert. Problem war die Firewall, die den Traffic zwischen NPM und dem Ziel (In dem Fall HASS) geblockt hat.

1 „Gefällt mir“

Danke dir, aber eine Firewall habe ich zwischen den Systemen nicht :+1:

1 „Gefällt mir“

habe ioB hinter einem nginx reverse proxy (via Nginx Proxy Manager) laufen. Habe für jeden Adapter wie admin, vis und Jarvis in meinem Fall einfach eine eigene Subdomain angelegt die jeweils auf den richtigen Port des jeweiligen Adapters weiterleitet. Klappt so problemlos und man muss sich keine Ports merken.

1 „Gefällt mir“