VPN naar thuis-LAN

VPN naar thuis-LAN

TL; DR: Ik installeer Wireguard op een VPS, maak er verbinding mee vanaf mijn thuisrouter op OpenWRT en krijg toegang tot mijn thuissubnet vanaf mijn telefoon.

Als u uw persoonlijke infrastructuur op een thuisserver bewaart of thuis veel IP-gestuurde apparaten heeft, dan wilt u hier waarschijnlijk vanaf uw werk, vanuit de bus, trein en metro toegang toe hebben. Meestal wordt voor soortgelijke taken IP gekocht bij de provider, waarna de poorten van elke service naar buiten worden doorgestuurd.

In plaats daarvan heb ik een VPN opgezet met toegang tot mijn thuis-LAN. De voordelen van deze oplossing:

  • doorzichtigheid: Ik voel mij onder alle omstandigheden thuis.
  • Gemak: stel het in en vergeet het, u hoeft niet na te denken over het doorsturen van elke poort.
  • Prijs: Ik heb al een VPS; voor dergelijke taken is een moderne VPN qua middelen vrijwel gratis.
  • veiligheid: niets valt op, je kunt MongoDB verlaten zonder wachtwoord en niemand zal je gegevens stelen.

Zoals altijd zijn er ook nadelen. Ten eerste zul je elke client afzonderlijk moeten configureren, ook aan de serverzijde. Het kan lastig zijn als u een groot aantal apparaten heeft waarop u toegang wilt krijgen tot services. Ten tweede heeft u mogelijk een LAN met hetzelfde bereik op uw werk - u zult dit probleem moeten oplossen.

Wij hebben nodig:

  1. VPS (in mijn geval op Debian 10).
  2. OpenWRT-router.
  3. Telefoonnummer
  4. Thuisserver met een webservice om te testen.
  5. Rechte armen.

De VPN-technologie die ik ga gebruiken is Wireguard. Deze oplossing heeft ook sterke en zwakke punten, ik zal ze niet beschrijven. Voor VPN gebruik ik een subnet 192.168.99.0/24, en bij mij thuis 192.168.0.0/24.

VPS-configuratie

Zelfs de meest ellendige VPS voor 30 roebel per maand is genoeg voor zaken, als je het geluk hebt er een te hebben rukken.

Ik voer alle handelingen op de server uit als root op een schone machine; voeg eventueel `sudo` toe en pas de instructies aan.

Wireguard had geen tijd om in de stal te worden gebracht, dus voer ik `apt edit-sources` uit en voeg backports toe in twee regels aan het einde van het bestand:

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

Het pakket wordt op de gebruikelijke manier geïnstalleerd: apt update && apt install wireguard.

Vervolgens genereren we een sleutelpaar: wg genkey | tee /etc/wireguard/vps.private | wg pubkey | tee /etc/wireguard/vps.public. Herhaal deze handeling nog twee keer voor elk apparaat dat deelneemt aan het circuit. Verander het pad naar de sleutelbestanden voor een ander apparaat en vergeet de beveiliging van privésleutels niet.

Nu bereiden we de configuratie voor. Om te archiveren /etc/wireguard/wg0.conf configuratie wordt geplaatst:

[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

In de sectie [Interface] de instellingen van de machine zelf worden aangegeven, en in [Peer] — instellingen voor degenen die er verbinding mee zullen maken. IN AllowedIPs gescheiden door komma's worden de subnetten gespecificeerd die naar de overeenkomstige peer worden gerouteerd. Daarom moeten peers van “client”-apparaten in het VPN-subnet een masker hebben /32, al het andere wordt door de server gerouteerd. Omdat het thuisnetwerk via OpenWRT wordt gerouteerd, kunnen in AllowedIPs We voegen het thuissubnet van de overeenkomstige peer toe. IN PrivateKey и PublicKey ontbind de privésleutel die voor de VPS is gegenereerd en de openbare sleutels van de peers dienovereenkomstig.

Op de VPS hoeft u alleen nog maar de opdracht uit te voeren die de interface opent en deze aan autorun toevoegt: systemctl enable --now wg-quick@wg0. Met het commando kan de huidige verbindingsstatus worden gecontroleerd wg.

OpenWRT-configuratie

Alles wat je voor deze fase nodig hebt, zit in de luci-module (OpenWRT-webinterface). Log in en open het tabblad Software in het Systeemmenu. OpenWRT slaat geen cache op de machine op, dus u moet de lijst met beschikbare pakketten bijwerken door op de groene knop Lijsten bijwerken te klikken. Na voltooiing het filter inrijden luci-app-wireguard en, kijkend naar het venster met een prachtige afhankelijkheidsboom, installeer dit pakket.

In het menu Netwerken selecteert u Interfaces en klikt u op de groene knop Nieuwe interface toevoegen onder de lijst met bestaande interfaces. Na het invoeren van de naam (ook wg0 in mijn geval) en het WireGuard VPN-protocol selecteert, wordt een instellingenformulier met vier tabbladen geopend.

VPN naar thuis-LAN

Op het tabblad Algemene instellingen moet u de privésleutel en het IP-adres invoeren dat is voorbereid voor OpenWRT, samen met het subnet.

VPN naar thuis-LAN

Verbind op het tabblad Firewallinstellingen de interface met het lokale netwerk. Op deze manier komen verbindingen van de VPN vrij het lokale gebied binnen.

VPN naar thuis-LAN

Op het tabblad Peers klikt u op de enige knop, waarna u de VPS-servergegevens in het bijgewerkte formulier invult: openbare sleutel, Toegestane IP's (u moet het volledige VPN-subnet naar de server routeren). Voer bij Endpoint Host en Endpoint Port respectievelijk het IP-adres van de VPS in met de poort die eerder is opgegeven in de ListenPort-instructie. Controleer Route Toegestane IP's voor routes die moeten worden gemaakt. En vul zeker Persistent Keep Alive in, anders wordt de tunnel van de VPS naar de router kapot als deze achter NAT staat.

VPN naar thuis-LAN

VPN naar thuis-LAN

Hierna kunt u de instellingen opslaan en vervolgens op de pagina met de lijst met interfaces op Opslaan en toepassen klikken. Start indien nodig de interface expliciet met de knop Opnieuw opstarten.

Een smartphone instellen

U hebt de Wireguard-client nodig, deze is beschikbaar in F-Droid, Google Play en App Store. Nadat u de applicatie hebt geopend, drukt u op het plusteken en voert u in het gedeelte Interface de verbindingsnaam, de privésleutel (de openbare sleutel wordt automatisch gegenereerd) en het telefoonnummer in met het /32-masker. Geef in het gedeelte Peer de openbare sleutel van de VPS op, een adrespaar: de VPN-serverpoort als eindpunt en routes naar het VPN en het thuissubnet.

Vetgedrukte screenshot van telefoon
VPN naar thuis-LAN

Klik op de diskette in de hoek, zet hem aan en...

Afwerking

Nu hebt u toegang tot thuisbewaking, kunt u de routerinstellingen wijzigen of iets anders doen op IP-niveau.

Screenshots uit de omgeving
VPN naar thuis-LAN

VPN naar thuis-LAN

VPN naar thuis-LAN

Bron: www.habr.com

Voeg een reactie