VPN til hjemme-LAN

VPN til hjemme-LAN

TL; DR: Jeg installerer Wireguard på en VPS, kobler til den fra hjemmeruteren på OpenWRT og får tilgang til hjemmenettverket fra telefonen.

Hvis du holder din personlige infrastruktur på en hjemmeserver eller har mange IP-kontrollerte enheter hjemme, så vil du sannsynligvis ha tilgang til dem fra jobb, fra buss, tog og t-bane. Oftest, for lignende oppgaver, kjøpes IP fra leverandøren, hvoretter portene til hver tjeneste videresendes til utsiden.

I stedet setter jeg opp en VPN med tilgang til hjemme-LAN. Fordelene med denne løsningen:

  • åpenhet: Jeg føler meg hjemme under alle omstendigheter.
  • lette: still den og glem den, du trenger ikke tenke på å videresende hver port.
  • Pris: Jeg har allerede en VPS; for slike oppgaver er en moderne VPN nesten gratis når det gjelder ressurser.
  • Безопасность: ingenting stikker ut, du kan forlate MongoDB uten passord og ingen vil stjele dataene dine.

Som alltid er det ulemper. For det første må du konfigurere hver klient separat, inkludert på serversiden. Det kan være upraktisk hvis du har et stort antall enheter du ønsker å få tilgang til tjenester fra. For det andre kan du ha et LAN med samme rekkevidde på jobben - du må løse dette problemet.

Vi trenger:

  1. VPS (i mitt tilfelle på Debian 10).
  2. OpenWRT-ruter.
  3. Telefonnummer.
  4. Hjemmeserver med en eller annen nettjeneste for testing.
  5. Rette armer.

VPN-teknologien jeg skal bruke er Wireguard. Denne løsningen har også styrker og svakheter, jeg skal ikke beskrive dem. For VPN bruker jeg et subnett 192.168.99.0/24, og hjemme hos meg 192.168.0.0/24.

VPS-konfigurasjon

Selv den mest elendige VPS for 30 rubler i måneden er nok for forretninger, hvis du er heldig nok til å ha en snappe.

Jeg utfører alle operasjoner på serveren som root på en ren maskin; om nødvendig, legg til `sudo` og tilpass instruksjonene.

Wireguard hadde ikke tid til å bli brakt inn i stallen, så jeg kjører "apt edit-sources" og legger til backporter på to linjer på slutten av filen:

deb http://deb.debian.org/debian/ buster-backports main
# deb-src http://deb.debian.org/debian/ buster-backports main

Pakken installeres på vanlig måte: apt update && apt install wireguard.

Deretter genererer vi et nøkkelpar: wg genkey | tee /etc/wireguard/vps.private | wg pubkey | tee /etc/wireguard/vps.public. Gjenta denne operasjonen to ganger til for hver enhet som deltar i kretsen. Endre banen til nøkkelfilene for en annen enhet og ikke glem sikkerheten til private nøkler.

Nå forbereder vi konfigurasjonen. Å lagre /etc/wireguard/wg0.conf config er plassert:

[Interface] Address = 192.168.99.1/24
ListenPort = 57953
PrivateKey = 0JxJPUHz879NenyujROVK0YTzfpmzNtbXmFwItRKdHs=

[Peer] # OpenWRT
PublicKey = 36MMksSoKVsPYv9eyWUKPGMkEs3HS+8yIUqMV8F+JGw=
AllowedIPs = 192.168.99.2/32,192.168.0.0/24

[Peer] # Smartphone
PublicKey = /vMiDxeUHqs40BbMfusB6fZhd+i5CIPHnfirr5m3TTI=
AllowedIPs = 192.168.99.3/32

I seksjonen [Interface] innstillingene til selve maskinen er angitt, og i [Peer] — innstillinger for de som skal koble til den. I AllowedIPs atskilt med kommaer, spesifiseres subnettene som vil bli rutet til den tilsvarende peer. På grunn av dette må jevnaldrende til "klient"-enheter i VPN-undernettverket ha en maske /32, vil alt annet bli rutet av serveren. Siden hjemmenettverket vil bli rutet gjennom OpenWRT, i AllowedIPs Vi legger til hjemmeundernettet til den tilsvarende peeren. I PrivateKey и PublicKey dekomponere den private nøkkelen som er generert for VPS og de offentlige nøklene til jevnaldrende tilsvarende.

På VPS gjenstår det bare å kjøre kommandoen som vil få opp grensesnittet og legge det til autorun: systemctl enable --now wg-quick@wg0. Gjeldende tilkoblingsstatus kan kontrolleres med kommandoen wg.

OpenWRT-konfigurasjon

Alt du trenger for dette stadiet er i luci-modulen (OpenWRT webgrensesnitt). Logg på og åpne Programvare-fanen i System-menyen. OpenWRT lagrer ikke en cache på maskinen, så du må oppdatere listen over tilgjengelige pakker ved å klikke på den grønne knappen Oppdater lister. Etter ferdigstillelse, kjør inn i filteret luci-app-wireguard og, ser på vinduet med et vakkert avhengighetstre, installer denne pakken.

I Nettverk-menyen velger du Grensesnitt og klikker på den grønne knappen Legg til nytt grensesnitt under listen over eksisterende. Etter å ha skrevet inn navnet (også wg0 i mitt tilfelle) og velger WireGuard VPN-protokollen, åpnes et innstillingsskjema med fire faner.

VPN til hjemme-LAN

På fanen Generelle innstillinger må du skrive inn den private nøkkelen og IP-adressen som er forberedt for OpenWRT sammen med undernettet.

VPN til hjemme-LAN

På kategorien Brannmurinnstillinger kobler du grensesnittet til det lokale nettverket. På denne måten vil tilkoblinger fra VPN fritt komme inn i lokalområdet.

VPN til hjemme-LAN

På Peers-fanen klikker du på den eneste knappen, hvoretter du fyller ut VPS-serverdataene i det oppdaterte skjemaet: offentlig nøkkel, tillatte IP-er (du må rute hele VPN-undernettet til serveren). I Endpoint Host og Endpoint Port skriver du inn IP-adressen til VPS-en med porten som tidligere er spesifisert i henholdsvis ListenPort-direktivet. Sjekk rutetillatte IP-er for ruter som skal opprettes. Og pass på å fylle ut Persistent Keep Alive, ellers vil tunnelen fra VPS til ruteren bli ødelagt hvis sistnevnte står bak NAT.

VPN til hjemme-LAN

VPN til hjemme-LAN

Etter dette kan du lagre innstillingene, og klikk deretter på Lagre og bruk på siden med listen over grensesnitt. Om nødvendig, start grensesnittet eksplisitt med Restart-knappen.

Sette opp en smarttelefon

Du trenger Wireguard-klienten, den er tilgjengelig i F-Droid, Google Play og App Store. Etter å ha åpnet applikasjonen, trykk på plusstegnet og i Grensesnitt-delen skriv inn tilkoblingsnavnet, den private nøkkelen (den offentlige nøkkelen genereres automatisk) og telefonadressen med /32-masken. I Peer-delen, spesifiser den offentlige VPS-nøkkelen, et adressepar: VPN-serverporten som endepunkt, og ruter til VPN og hjemmeundernett.

Fet skjermbilde fra telefonen
VPN til hjemme-LAN

Klikk på disketten i hjørnet, slå den på og...

Finish

Nå kan du få tilgang til hjemmeovervåking, endre ruterinnstillinger eller gjøre hva som helst på IP-nivå.

Skjermbilder fra lokalområdet
VPN til hjemme-LAN

VPN til hjemme-LAN

VPN til hjemme-LAN

Kilde: www.habr.com

Legg til en kommentar