VPN v domači LAN

VPN v domači LAN

TL; DR: Wireguard namestim na VPS, se nanj povežem iz domačega usmerjevalnika na OpenWRT in dostopam do domačega podomrežja iz telefona.

Če imate svojo osebno infrastrukturo na domačem strežniku ali imate doma veliko naprav, ki jih nadzoruje IP, potem verjetno želite imeti dostop do njih iz službe, z avtobusa, vlaka in podzemne železnice. Najpogosteje se za podobna opravila IP kupi od ponudnika, nato pa se vrata vsake storitve posredujejo navzven.

Namesto tega sem nastavil VPN z dostopom do domačega LAN-a. Prednosti te rešitve:

  • preglednost: V vseh okoliščinah se počutim kot doma.
  • preprostost: nastavite in pozabite, ni vam treba razmišljati o posredovanju posameznih vrat.
  • Cena: VPS že imam, za take naloge je sodoben VPN skoraj zastonj glede sredstev.
  • varnost: nič ne štrli, MongoDB lahko zapustite brez gesla in nihče vam ne bo ukradel podatkov.

Kot vedno obstajajo slabosti. Najprej boste morali konfigurirati vsakega odjemalca posebej, tudi na strani strežnika. Lahko je neprijetno, če imate veliko število naprav, iz katerih želite dostopati do storitev. Drugič, morda imate v službi LAN z enakim obsegom - to težavo boste morali rešiti.

Potrebujemo:

  1. VPS (v mojem primeru na Debianu 10).
  2. Usmerjevalnik OpenWRT.
  3. Telefonska številka.
  4. Domači strežnik z nekaj spletne storitve za testiranje.
  5. Ravne roke.

Tehnologija VPN, ki jo bom uporabil, je Wireguard. Ta rešitev ima tudi prednosti in slabosti, ne bom jih opisoval. Za VPN uporabljam podomrežje 192.168.99.0/24, in pri meni doma 192.168.0.0/24.

Konfiguracija VPS

Tudi najbolj mizeren VPS za 30 rubljev na mesec je dovolj za posel, če imate to srečo, da ga imate ugrabiti.

Vse operacije na strežniku izvajam kot root na čistem stroju, po potrebi dodam `sudo` in prilagodim navodila.

Wireguard ni imel časa, da bi ga pripeljali v hlev, zato sem zagnal `apt edit-sources` in dodal povratna vrata v dveh vrsticah na koncu datoteke:

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

Paket se namesti na običajen način: apt update && apt install wireguard.

Nato ustvarimo par ključev: wg genkey | tee /etc/wireguard/vps.private | wg pubkey | tee /etc/wireguard/vps.public. To operacijo ponovite še dvakrat za vsako napravo, ki sodeluje v vezju. Spremenite pot do datotek ključev za drugo napravo in ne pozabite na varnost zasebnih ključev.

Zdaj pripravljamo konfiguracijo. Vložiti /etc/wireguard/wg0.conf konfiguracija je nameščena:

[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

V razdelku [Interface] prikazane so nastavitve samega stroja in v [Peer] — nastavitve za tiste, ki se bodo povezali z njim. IN AllowedIPs ločena z vejicami, so navedena podomrežja, ki bodo usmerjena k ustreznemu vrstniku. Zaradi tega morajo imeti vrstniki "odjemalskih" naprav v podomrežju VPN masko /32, vse ostalo bo preusmeril strežnik. Ker bo domače omrežje usmerjeno prek OpenWRT, v AllowedIPs Dodamo domače podomrežje ustreznega vrstnika. IN PrivateKey и PublicKey ustrezno razgradijo zasebni ključ, ustvarjen za VPS, in javne ključe vrstnikov.

Na VPS je vse, kar ostane, zagnati ukaz, ki bo prikazal vmesnik in ga dodati v samodejni zagon: systemctl enable --now wg-quick@wg0. Trenutno stanje povezave lahko preverite z ukazom wg.

Konfiguracija OpenWRT

Vse, kar potrebujete za to stopnjo, je v modulu luci (spletni vmesnik OpenWRT). Prijavite se in odprite zavihek Programska oprema v meniju Sistem. OpenWRT ne shrani predpomnilnika v napravi, zato morate posodobiti seznam razpoložljivih paketov s klikom na zeleni gumb Posodobi sezname. Po zaključku zapeljite v filter luci-app-wireguard in ob pogledu na okno s čudovitim drevesom odvisnosti namestite ta paket.

V meniju Omrežja izberite Vmesniki in pod seznamom obstoječih kliknite zeleni gumb Dodaj nov vmesnik. Po vnosu imena (tudi wg0 v mojem primeru) in izbiro protokola WireGuard VPN se odpre obrazec z nastavitvami s štirimi zavihki.

VPN v domači LAN

Na zavihku Splošne nastavitve morate skupaj s podomrežjem vnesti zasebni ključ in naslov IP, pripravljen za OpenWRT.

VPN v domači LAN

Na zavihku Nastavitve požarnega zidu povežite vmesnik z lokalnim omrežjem. Na ta način bodo povezave iz VPN prosto vstopale v lokalno območje.

VPN v domači LAN

Na zavihku Peers kliknite edini gumb, nato pa v posodobljenem obrazcu izpolnite podatke strežnika VPS: javni ključ, dovoljeni IP-ji (na strežnik morate usmeriti celotno podomrežje VPN). V gostitelj končne točke in vrata končne točke vnesite naslov IP VPS z vrati, ki so bila prej podana v direktivi ListenPort. Preverite Route Allowed IPs za poti, ki jih želite ustvariti. In obvezno izpolnite Persistent Keep Alive, sicer bo tunel od VPS do usmerjevalnika prekinjen, če je slednji za NAT.

VPN v domači LAN

VPN v domači LAN

Po tem lahko shranite nastavitve in nato na strani s seznamom vmesnikov kliknete Shrani in uporabi. Po potrebi izrecno zaženite vmesnik z gumbom Restart.

Nastavitev pametnega telefona

Potrebovali boste odjemalca Wireguard, na voljo je v F-Droid, Google Play in App Store. Ko odprete aplikacijo, pritisnite znak plus in v rubriko Vmesnik vnesite ime povezave, zasebni ključ (javni ključ bo generiran samodejno) in telefonski naslov z masko /32. V razdelku Peer določite javni ključ VPS, par naslovov: vrata strežnika VPN kot končno točko ter poti do VPN in domačega podomrežja.

Krepki posnetek zaslona iz telefona
VPN v domači LAN

Kliknite na disketo v kotu, jo vklopite in ...

Finish

Zdaj lahko dostopate do spremljanja doma, spreminjate nastavitve usmerjevalnika ali počnete kar koli na ravni IP.

Posnetki zaslona iz lokalnega območja
VPN v domači LAN

VPN v domači LAN

VPN v domači LAN

Vir: www.habr.com

Dodaj komentar