VPN do domácej siete LAN

VPN do domácej siete LAN

TL; DR: Nainštalujem Wireguard na VPS, pripojím sa k nemu z domáceho smerovača na OpenWRT a pristupujem k domácej podsieti z telefónu.

Ak máte svoju osobnú infraštruktúru na domácom serveri alebo máte doma veľa zariadení riadených IP, pravdepodobne k nim budete chcieť mať prístup z práce, z autobusu, vlaku a metra. Najčastejšie sa pre podobné úlohy kupuje IP od poskytovateľa, po ktorom sa porty každej služby preposielajú von.

Namiesto toho som si nastavil VPN s prístupom do mojej domácej siete LAN. Výhody tohto riešenia:

  • priehľadnosť: Cítim sa ako doma za každých okolností.
  • jednoduchosť: nastavte ho a zabudnite, nie je potrebné premýšľať o presmerovaní každého portu.
  • Cena: VPS už mám, na takéto úlohy je moderná VPN z hľadiska zdrojov takmer zadarmo.
  • zabezpečenia: nič nevyčnieva, môžete nechať MongoDB bez hesla a nikto vám neukradne údaje.

Ako vždy, existujú aj nevýhody. Po prvé, budete musieť nakonfigurovať každého klienta samostatne, a to aj na strane servera. Môže to byť nepohodlné, ak máte veľké množstvo zariadení, z ktorých chcete pristupovať k službám. Po druhé, môžete mať v práci sieť LAN s rovnakým dosahom - tento problém budete musieť vyriešiť.

potrebujeme:

  1. VPS (v mojom prípade na Debian 10).
  2. Router OpenWRT.
  3. Phone.
  4. Domáci server s nejakou webovou službou na testovanie.
  5. Rovné ruky.

Technológia VPN, ktorú použijem, je Wireguard. Toto riešenie má aj silné a slabé stránky, nebudem ich popisovať. Pre VPN používam podsieť 192.168.99.0/24a u mňa doma 192.168.0.0/24.

Konfigurácia VPS

Dokonca aj najbiednejšie VPS za 30 rubľov mesačne stačí na podnikanie, ak máte to šťastie, že ho máte vytrhnúť.

Všetky operácie vykonávam na serveri ako root na čistom stroji, v prípade potreby pridám `sudo` a prispôsobím pokyny.

Wireguard sa nestihol dostať do stajne, takže spustím `apt edit-sources` a pridám backporty v dvoch riadkoch na koniec súboru:

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

Balík sa inštaluje obvyklým spôsobom: apt update && apt install wireguard.

Ďalej vygenerujeme pár kľúčov: wg genkey | tee /etc/wireguard/vps.private | wg pubkey | tee /etc/wireguard/vps.public. Opakujte túto operáciu ešte dvakrát pre každé zariadenie zúčastňujúce sa obvodu. Zmeňte cestu k súborom kľúčov pre iné zariadenie a nezabudnite na bezpečnosť súkromných kľúčov.

Teraz pripravíme konfiguráciu. Vyplniť /etc/wireguard/wg0.conf konfigurácia je umiestnená:

[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 sekcii [Interface] sú uvedené nastavenia samotného stroja a v [Peer] — nastavenia pre tých, ktorí sa k nemu budú pripájať. IN AllowedIPs oddelené čiarkami sú špecifikované podsiete, ktoré budú smerované k zodpovedajúcemu peer. Z tohto dôvodu musia mať partneri „klientských“ zariadení v podsieti VPN masku /32, všetko ostatné bude smerované serverom. Keďže domáca sieť bude smerovaná cez OpenWRT, v AllowedIPs Pridáme domácu podsieť príslušného partnera. IN PrivateKey и PublicKey podľa toho rozložiť súkromný kľúč vygenerovaný pre VPS a verejné kľúče partnerov.

Na VPS zostáva len spustiť príkaz, ktorý vyvolá rozhranie a pridá ho do automatického spustenia: systemctl enable --now wg-quick@wg0. Aktuálny stav pripojenia je možné skontrolovať pomocou príkazu wg.

Konfigurácia OpenWRT

Všetko, čo potrebujete pre túto fázu, je v module luci (webové rozhranie OpenWRT). Prihláste sa a otvorte kartu Softvér v ponuke Systém. OpenWRT neukladá vyrovnávaciu pamäť v počítači, takže je potrebné aktualizovať zoznam dostupných balíkov kliknutím na zelené tlačidlo Aktualizovať zoznamy. Po dokončení vbehnite do filtra luci-app-wireguard a pri pohľade na okno s krásnym stromom závislostí nainštalujte tento balík.

V menu Siete vyberte Rozhrania a kliknite na zelené tlačidlo Pridať nové rozhranie pod zoznamom existujúcich. Po zadaní mena (aj wg0 v mojom prípade) a výberom protokolu WireGuard VPN sa otvorí formulár nastavení so štyrmi kartami.

VPN do domácej siete LAN

Na karte Všeobecné nastavenia musíte zadať súkromný kľúč a IP adresu pripravenú pre OpenWRT spolu s podsieťou.

VPN do domácej siete LAN

Na karte Nastavenia brány firewall pripojte rozhranie k lokálnej sieti. Týmto spôsobom budú pripojenia z VPN voľne vstúpiť do miestnej oblasti.

VPN do domácej siete LAN

Na karte Peers kliknite na jediné tlačidlo, po ktorom vyplňte údaje servera VPS v aktualizovanom formulári: verejný kľúč, Povolené adresy IP (na server musíte nasmerovať celú podsieť VPN). Do Endpoint Host a Endpoint Port zadajte IP adresu VPS s portom predtým špecifikovaným v direktíve ListenPort, resp. Začiarknite políčko Route Allowed IPs pre trasy, ktoré sa majú vytvoriť. A nezabudnite vyplniť Persistent Keep Alive, inak sa tunel z VPS k smerovaču preruší, ak je za NAT.

VPN do domácej siete LAN

VPN do domácej siete LAN

Potom môžete nastavenia uložiť a potom na stránke so zoznamom rozhraní kliknite na Uložiť a použiť. V prípade potreby explicitne spustite rozhranie pomocou tlačidla Reštartovať.

Nastavenie smartfónu

Budete potrebovať klienta Wireguard, je dostupný v F-Droid, Google Play a App Store. Po otvorení aplikácie stlačte znamienko plus a v časti Rozhranie zadajte názov spojenia, súkromný kľúč (verejný kľúč sa vygeneruje automaticky) a adresu telefónu s maskou /32. V sekcii Peer zadajte verejný kľúč VPS, pár adries: port servera VPN ako koncový bod a trasy do siete VPN a domácej podsiete.

Tučná snímka obrazovky z telefónu
VPN do domácej siete LAN

Kliknite na disketu v rohu, zapnite ju a...

Úprava

Teraz môžete pristupovať k monitorovaniu domácnosti, meniť nastavenia smerovača alebo robiť čokoľvek na úrovni IP.

Snímky obrazovky z miestnej oblasti
VPN do domácej siete LAN

VPN do domácej siete LAN

VPN do domácej siete LAN

Zdroj: hab.com

Pridať komentár