Beste DEDers,
Op dit moment draai ik een aantal jaren naar volle tevredenheid Domoticz. Sinds een aantal weken heb ik mijn thuisnetwerk drastisch vervangen, van allemaal losse fysieke machines/RPi's ben ik naar een ESXi systeem gegaan waar ik diverse (web)services nu in virtuele machines en/of docker draai.
Ook ben ik gebruik gaan maken van treafik als reverse proxy.
Op mijn pfSense (virtuele) machine heb ik een NAT / Port Forward gemaakt voor poort 80 en 443 naar de machine waar traefik op draait. Deze heeft intern IP adres 192.168.1.190.
Bij wijze van test had ik whoami draaien om te kijken of de reverse proxy goed werkte. Dit was het geval, wanneer ik van buiten naar het subdomein van Domoticz browse, krijg ik netjes de volgende informatie van whoami.
Op A.B.C.D staat het WAN-adres van de machine waarmee ik van buiten mijn eigen netwerk inlog.
Daarna heb ik Domoticz weer aangezet en kon ik, zonder in te hoeven loggen, bij mijn Domoticz omgeving.
Dit schepte mijn verbazing, omdat ik had verwacht dat Domoticz (indien aanwezig) naar de X-Forwarded-For of X-Real-Ip header zou kijken voor het bepalen van het bezoekende IP adres. Dat is dus niet het geval, blijkt uit de logging:
Nu ben ik op zoek gegaan hoe Domoticz dit interpreteert, maar kon niet veel vinden.
Wel kon ik op een oude thread van het Domoticz forum de volgende hint vinden hoe een specifiek IP adres uit te sluiten uit de Local Networks:
invul, dan wordt 192.168.1.190 nog steeds toegelaten zonder in te hoeven loggen.
Wanneer ik als Local Network invul, moet iedereen inloggen.
In het geval van als Local Network invul, hoeft 192.168.1.190 niet in te loggen. De rest van het 192.168.1.* wel.
Het liefste zie ik de volgende oplossing:
Domoticz baseert het remote IP adres op basis van de (indien aanwezig) X-Forwarded-For of X-Real-Ip header.
Als dat niet mogelijk is, dan wil ik graag de volgende oplossing bereiken:
Bezoekers via 192.168.1.190 moeten inloggen, de rest met een 192.168.1.* IP-adres niet.
Wie weet of dit mogelijk is en hoe dit geconfigureerd moet worden.
Alvast bedankt
Matis
Voor de volledigheid hierbij de versie-informatie van Domoticz
Op dit moment draai ik een aantal jaren naar volle tevredenheid Domoticz. Sinds een aantal weken heb ik mijn thuisnetwerk drastisch vervangen, van allemaal losse fysieke machines/RPi's ben ik naar een ESXi systeem gegaan waar ik diverse (web)services nu in virtuele machines en/of docker draai.
Ook ben ik gebruik gaan maken van treafik als reverse proxy.
Op mijn pfSense (virtuele) machine heb ik een NAT / Port Forward gemaakt voor poort 80 en 443 naar de machine waar traefik op draait. Deze heeft intern IP adres 192.168.1.190.
Bij wijze van test had ik whoami draaien om te kijken of de reverse proxy goed werkte. Dit was het geval, wanneer ik van buiten naar het subdomein van Domoticz browse, krijg ik netjes de volgende informatie van whoami.
Hostname: 7c0665c913d9 IP: 127.0.0.1 IP: 172.17.0.2 RemoteAddr: 192.168.1.190:55408 GET / HTTP/1.1 Host: domoticz.tld.nl User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8 Accept-Encoding: gzip, deflate, br Accept-Language: en-US,en;q=0.9,nl-NL;q=0.8,nl;q=0.7 Dnt: 1 Upgrade-Insecure-Requests: 1 X-Forwarded-For: A.B.C.D X-Forwarded-Host: domoticz.tld.nl X-Forwarded-Port: 443 X-Forwarded-Proto: https X-Forwarded-Server: matis-desktop X-Real-Ip: A.B.C.D
Op A.B.C.D staat het WAN-adres van de machine waarmee ik van buiten mijn eigen netwerk inlog.
Daarna heb ik Domoticz weer aangezet en kon ik, zonder in te hoeven loggen, bij mijn Domoticz omgeving.
Dit schepte mijn verbazing, omdat ik had verwacht dat Domoticz (indien aanwezig) naar de X-Forwarded-For of X-Real-Ip header zou kijken voor het bepalen van het bezoekende IP adres. Dat is dus niet het geval, blijkt uit de logging:
2020-04-18 13:17:18.483 Status: Incoming connection from: 192.168.1.190
Nu ben ik op zoek gegaan hoe Domoticz dit interpreteert, maar kon niet veel vinden.
Wel kon ik op een oude thread van het Domoticz forum de volgende hint vinden hoe een specifiek IP adres uit te sluiten uit de Local Networks:
Wanneer ik voor mijn Domoticz-installatie bij Local NetworksTry !160.98.20.101
127.0.0.*;!192.168.1.190;192.168.1.*
Wanneer ik
127.0.0.*;!192.168.1.190
In het geval van
127.0.0.*;192.168.1.190
Het liefste zie ik de volgende oplossing:
Domoticz baseert het remote IP adres op basis van de (indien aanwezig) X-Forwarded-For of X-Real-Ip header.
Als dat niet mogelijk is, dan wil ik graag de volgende oplossing bereiken:
Bezoekers via 192.168.1.190 moeten inloggen, de rest met een 192.168.1.* IP-adres niet.
Wie weet of dit mogelijk is en hoe dit geconfigureerd moet worden.
Alvast bedankt
Matis
Voor de volledigheid hierbij de versie-informatie van Domoticz
Version: 2020.1 Build Hash: 63fa969e4 Compile Date: 2020-03-22 15:16:16 dzVents Version: 3.0.1 Python Version: 3.7.3 (default, Dec 20 2019, 18:57:59) [GCC 8.3.0]
If money talks then I'm a mime
If time is money then I'm out of time