Toon posts:

Reverse proxy vs (en/of icm) VPN

Pagina: 1
Acties:

Vraag


  • DikkieDick
  • Registratie: Maart 2004
  • Laatst online: 26-01 07:40
Ik ben een beetje lost.

De situatie. Heb op een Raspberry Pi4 in Docker containers oa HomeAssistant en Grafana geïnstalleerd. Werkt als een zonnetje. URLS te benaderen via ip:poort (al dan niet via WAN-ip:poort), maar wilde dit ook kunnen benaderen vanaf kantoor en dan werkt WAN-ip:8123 etc niet. De oplossing: paar duckdns.org-subdomeinen en via nginx-proxy gaan die netjes daarheen waar ze naartoe willen. Dit nog geprobeerd extra te beveiligen door een access controllist waar je dan nog een keer username en password voor in moet vullen. Dit gaat niet overal goed, want dan werkt https 'ineens' niet meer.
Enige poort die open staat is 443, nou ja, ook oa 8123 for the time being.

Nu kwam de suggestie om de boel achter een vpn te zetten, maar dan zou ik UDB 51820 voor WireGuard open moeten hebben. Ik kan Wireguard installeren/configureren met een eigen subnet, maar hoe ga ik van de WireGuard naar de nginx-proxy? Evt zou denk ik, om er toch vanaf kantoor bij te kunnen, Wireguard moeten luisteren op poort 443. Alhoewel ik uiteraard in de router portforwarding van 443 naar 51820 zou kunnen doen> Of zie ik dit verkeerd?

Hoofd-router is een Fritzbox 7590 en daarachter zit een TP-link Deco-meshrouter. Waarom gebruik ik (nog) niet de meshrouting op de Frtizbox? Net aangeschaft en heb nog geen zin en tijd alles vanuit TP-Link-netwerk om te gaan batterijen.

Heb me al suf zitten te googelen (duckduckgo-en) maar kom niet zo iets tegen dat bruikbaar lijkt in mijn situatie.

Vraag: hoe zorg ik dat nginx benaderd wordt na Wireguard en van daaruit dan oa de HomeAssistant?

Of is de huidige reverse proxy qua afdoende beveiligd tegen indringers?

Alle reacties


  • MasterL
  • Registratie: Oktober 2003
  • Laatst online: 28-01 15:27
In principe heb je niet bijde nodig als ik jouw situatie goed interpreteer.
Wat je nu hebt is een reverse proxy omdat op jouw werkplaats outbound poorten worden gefiltert
daarom wil je alles op poort 443 draaien (Nginx) correct?

Dit zou overigens prima moeten werken, desnoods kan je nog firewallen.

Met een VPN heb je bovenstaande in principe niet nodig, indien je VPN verbinding actief is en de boel
is goed geconfigureerd zou je vanaf jouw werkplek de HomeAssistant en Grafana "gewoon" op hun "interne" IP-adres en poort kunnen bereiken zoals jij thuis ook doet.

Edit:
Hou er wel rekening mee dat Wireguard UDP gebruikt en geen TCP.
Het zou dus prima kunnen dat alleen TCP poort 443 open staat en UDP poort 443 niet in dat geval
zal de VPN dus niet werken. Als ik jou was zou ik toch proberen om een reverse proxy aan de praat te krijgen
er zijn er genoeg..

[Voor 20% gewijzigd door MasterL op 17-01-2022 11:31]


  • DikkieDick
  • Registratie: Maart 2004
  • Laatst online: 26-01 07:40
MasterL schreef op maandag 17 januari 2022 @ 11:24:
In principe heb je niet bijde nodig als ik jouw situatie goed interpreteer.
Wat je nu hebt is een reverse proxy omdat op jouw werkplaats outbound poorten worden gefiltert
daarom wil je alles op poort 443 draaien (Nginx) correct?
Dat klopt. Sterker nog, zo draait het nu.
Dit zou overigens prima moeten werken, desnoods kan je nog firewallen.

Met een VPN heb je bovenstaande in principe niet nodig, indien je VPN verbinding actief is en de boel
is goed geconfigureerd zou je vanaf jouw werkplek de HomeAssistant en Grafana "gewoon" op hun "interne" IP-adres en poort kunnen bereiken zoals jij thuis ook doet.
Aha. Dit maakt het al wat duidelijker. Dat laaste had ik dus niet door dat ik dan idd met ip-adres:poort dan altijd naar mijn sites ga.

Deed, omdat ik niet op kantoor ben maar ff een test door de wifi op de telefoon uit te zetten en mijn wireguard-vpn-tunnel op de feun actief. Kan ik 'ineens' nergens meer heen. :-)

Dat zal hem dan denk ik zitten in mijn Wireguard-config. Ip-adres RPI4 is 10.0.0.150. Het interne subnet dat ik meegeef als ik docker run etc doe is 10.14.14.0 (default is 10.13.13.0, maar ik heb iets tegen 13 ;-) . Ik zie dan niet hoe ik van 10.14.14.x naar 10.0.0.150:8123 of whatever kan. Of moet dat dan weer ergens onder water via de ip-adressen die Docker aan die containers? Of moet ik het interne subnet op geven als datgene wat ik in Portainer zie, bv 172.x.0.y ?

Maar de reverse-proxy-mode lijkt het meest gebruiksvriendelijk voor mijn situatie.

  • MasterL
  • Registratie: Oktober 2003
  • Laatst online: 28-01 15:27
Dat heet routing, je RPI/Dockers en het apparaat waar je wireguard op draait moeten wel "weten" waar ze hun
verkeer moeten afleveren. Als dit niet je default gateway is (0.0.0.0/0 route) zal hier een static route voor gemaakt moeten worden.

In de "AllowedIPs" sectie in Wireguard geef je aan welke IP-adressen door de tunnel geroute moeten worden, in jouw geval zal dat iets zijn als 10.0.0.0/24? en 10.14.14.0/24.

Wat jij noemt zijn echt routing basics, alles wat buiten je subnet valt moet gerouteerd worden.

  • DikkieDick
  • Registratie: Maart 2004
  • Laatst online: 26-01 07:40
Heb 10.0.0.0/24 toegevoegd, maar geen sjoege. DNS overigens gewijzigd (danwel toegevoegd) naar de DNS die ik gebruik via de pihole. Als ik de tunnel activeer dan kan ik helemaal nergens meer heen, dus ergens loopt het niet lekker. Kan ook nog op de telefoon als DNS-server 8.8.8.8 toevoegen maar haalt ook niks uit.
Ik laat het eerst wel bij de reverse proxy. Misschien dat ik ooit nog het licht zie, maar nu ff niet. :-(
Bedankt tot zover. Het is wel wat duidelijker geworden.

  • Tsurany
  • Registratie: Juni 2006
  • Niet online

Tsurany

⭐⭐⭐⭐⭐

De makkelijkste oplossing is om Nginx te gebruiken om naar de juiste pagina's te gaan, scheelt het onthouden van poorten, maar om dit niet naar buitenaf open te zetten. Ben je niet meer op je eigen netwerk dan zet je een VPN tunnel op via Wireguard en kan je dan eenvoudig via je reverse proxy naar de juiste pagina's toe.

Ik kan je met Wireguard niet verder helpen daar ik zelf OpenVPN gebruik.

SMA SB5.0 + 16x Jinko 310wp OWO + 10x Jinko 310wp WNW |--|--| Daikin 4MXM68N + 1x FTXA50AW + 3x FTXM20N


  • DikkieDick
  • Registratie: Maart 2004
  • Laatst online: 26-01 07:40
Tsurany schreef op maandag 17 januari 2022 @ 14:03:
De makkelijkste oplossing is om Nginx te gebruiken om naar de juiste pagina's te gaan, scheelt het onthouden van poorten, maar om dit niet naar buitenaf open te zetten. Ben je niet meer op je eigen netwerk dan zet je een VPN tunnel op via Wireguard en kan je dan eenvoudig via je reverse proxy naar de juiste pagina's toe.

Ik kan je met Wireguard niet verder helpen daar ik zelf OpenVPN gebruik.
Bovenste heb ik idd. Alleen poort 443 open (en nu dus zoals gezegd ff for the time being ook 8123 en zo nog een paar).

OpenVPN zou ik ook nog naar kunnen kijken. Maar las dat Wireguard eenvoudiger/sneller was.

  • Tsurany
  • Registratie: Juni 2006
  • Niet online

Tsurany

⭐⭐⭐⭐⭐

DikkieDick schreef op maandag 17 januari 2022 @ 14:15:
[...]


Bovenste heb ik idd. Alleen poort 443 open (en nu dus zoals gezegd ff for the time being ook 8123 en zo nog een paar).

OpenVPN zou ik ook nog naar kunnen kijken. Maar las dat Wireguard eenvoudiger/sneller was.
Wireguard zal prima werken, zelf alleen niet mee gewerkt. Echter als je Wireguard gebruikt wil je dus ook enkel poort 51820 op UDP open hebben zodat enkel verkeer naar Wireguard door je firewall heen kan. Je wilt dus 443 dicht hebben zodat Nginx enkel benaderbaar is vanuit je eigen netwerk.

SMA SB5.0 + 16x Jinko 310wp OWO + 10x Jinko 310wp WNW |--|--| Daikin 4MXM68N + 1x FTXA50AW + 3x FTXM20N


  • DikkieDick
  • Registratie: Maart 2004
  • Laatst online: 26-01 07:40
Na nog een tjidje stoeien kwam ik er achter dat endpoint niet 10.0.0.150:51820 moest zijn maar WAN-IP:51820.
Waardoor ie nu netjes mijn WAN-IP geeft als ik what's my ip opvraag terwijl ik niet op de wifi zit.

Nginx zelf hoeft ook niet benaderbaar te zijn, maar de websites die via de Nginx Proxy Manager gaan. Volgens mij ontkom ik er dan niet aan dat poort 443 open staat voor TCP-verkeer als ik bv. vanaf kantoor in wil loggen via hasssubdomein.duckdns.org of grafanasubdomein.duckdns.org.

Nou kan ik dus in ieder geval naar wan-ip:poort als ik buitenshuis ben zonder al die poorten (8123 etc) open te hebben.

Enige dat nu niet lijkt te werken is als ik mijn lokale wifi heb en al een ip-adres in de range 10.0.0.x, ook niet als AllowedIPs 10.0.0.0/24 ingesteld is. En als ik in wg0.conf AllowedIPs 10.0.0.0/24 zet dan werkt connecten naar 10.0.0.150:<poort> niet meer.

Update: als ik AllowedIPs 10.0.0.0/24 weg haal lijkt het nu toch 'overal' goed te gaan.

[Voor 21% gewijzigd door DikkieDick op 17-01-2022 16:21]


  • Ben(V)
  • Registratie: December 2013
  • Laatst online: 28-01 15:53
Even een kleine waarschuwing.

Je begrijp dat je vanaf kantoor je eigen netwerk benaderd dat je dan potentieel jou Lan koppelt aan het werk netwerk?
Dat is een potentieel security lek en veel bedrijven vinden dat niet prettig.
Als jouw werkgever ooit problemen krijgt met randsomeware kon jij zo maar ineens een probleem hebben, omdat jij een potentieel lek bent.

All truth passes through three stages: First it is ridiculed, second it is violently opposed and third it is accepted as being self-evident.


  • DikkieDick
  • Registratie: Maart 2004
  • Laatst online: 26-01 07:40
Ben(V) schreef op maandag 17 januari 2022 @ 15:15:
Even een kleine waarschuwing.

Je begrijp dat je vanaf kantoor je eigen netwerk benaderd dat je dan potentieel jou Lan koppelt aan het werk netwerk?
Dat is een potentieel security lek en veel bedrijven vinden dat niet prettig.
Als jouw werkgever ooit problemen krijgt met randsomeware kon jij zo maar ineens een probleem hebben, omdat jij een potentieel lek bent.
O, nee zo erg is het niet. Ik zit thuis te werken. En de vpn-tunnels test ik nu vanaf mijn telefoon. Vraag me af of die mogelijkheid überhaupt gaat werken vanaf het kantoor-lan.
Wilde ook geen tunnels opzetten op mijn kantoorpc.

  • Tsurany
  • Registratie: Juni 2006
  • Niet online

Tsurany

⭐⭐⭐⭐⭐

DikkieDick schreef op maandag 17 januari 2022 @ 15:06:
Nginx zelf hoeft ook niet benaderbaar te zijn, maar de websites die via de Nginx Proxy Manager gaan. Volgens mij ontkom ik er dan niet aan dat poort 443 open staat voor TCP-verkeer als ik bv. vanaf kantoor in wil loggen via hasssubdomein.duckdns.org of grafanasubdomein.duckdns.org.
Wat je nu doet is de websites rechtstreeks benaderen zonder VPN er tussen. Wat je naar mijn idee wilt is dat je via de VPN inlogt en dan de website rechtstreeks benaderd door naar bijvoorbeeld http://192.168.1.100/grafana of http://192.168.1.100/has te connecten. Dan houd je al het verkeer intern en loop je het minste risico omdat enkel VPN users binnen kunnen komen.

SMA SB5.0 + 16x Jinko 310wp OWO + 10x Jinko 310wp WNW |--|--| Daikin 4MXM68N + 1x FTXA50AW + 3x FTXM20N


  • DikkieDick
  • Registratie: Maart 2004
  • Laatst online: 26-01 07:40
Tsurany schreef op maandag 17 januari 2022 @ 15:31:
[...]

Wat je nu doet is de websites rechtstreeks benaderen zonder VPN er tussen. Wat je naar mijn idee wilt is dat je via de VPN inlogt en dan de website rechtstreeks benaderd door naar bijvoorbeeld http://192.168.1.100/grafana of http://192.168.1.100/has te connecten. Dan houd je al het verkeer intern en loop je het minste risico omdat enkel VPN users binnen kunnen komen.
Dat zou idd het mooiste zijn. Ik moet er verder induiken, want nu heb ik 3 dns-en naar zelfde ip. Maar denk dat dit wel met nginx-proxy-manager te fixen zou moeten zijn.

Alhoewel dan moet ie wel weer naar nginx zien te komen. Dus nee, hoe ik dit moet fixen zie ik zo 1,2,3 nog niet zitten. Want de DNS van de pihole wil ie nog niet pakken. Of zou ik alleen deze als PEERDNS op moeten geven?

[Voor 14% gewijzigd door DikkieDick op 17-01-2022 16:15]

Pagina: 1


Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee