Hur man konfigurerar ett säkert VPN på sin router med OpenVPN

  • Med OpenVPN kan du skapa ett mycket säkert och flexibelt VPN på din hem- eller företagsrouter.
  • Säkerhet är beroende av en bra konfiguration av kryptering, certifikat och autentisering.
  • Moderna routrar (ASUS, TP-Link, Omada, etc.) gör det mycket enklare att skapa en OpenVPN-server.
  • Att korrekt konfigurera klienter (PC, mobil, Android, etc.) är nyckeln till att dra nytta av VPN utan att förlora prestanda.

Hur man konfigurerar routern med OpenVPN

Att konfigurera ett VPN direkt på din router är ett av de enklaste sätten att skydda hela ditt hem- eller kontorsnätverk. Istället för att gå enhet för enhet, Konfigurera helt enkelt en OpenVPN-server på din router så att alla enheter som ansluter till Wi-Fi-nätet redan är krypterade. och med din riktiga IP-adress dold.

OpenVPN är ett av de mest använda VPN-protokollen i världen; det är öppen källkod och tillgängligt på nästan alla system. Korrekt konfigurerat, Det låter dig kombinera en hög säkerhetsnivå, bra prestanda och kompatibilitet med routrar från märken som ASUS, TP-Link eller Omada.samt Linux- och Windows-servrar.

Vad är ett VPN och varför installera det på din router?

Ett VPN (virtuellt privat nätverk) skapar ett krypterad tunnel mellan din enhet och internetDetta förhindrar att din internetleverantör, offentliga Wi-Fi-nätverk eller potentiella angripare ser eller manipulerar din trafik. I praktiken ersätts din offentliga IP-adress av VPN-serverns IP-adress, och dina data överförs säkert.

Om du istället för att installera VPN på varje enhet konfigurerar det på routern, All trafik som passerar genom den routern kommer att skyddas automatiskt.: datorer, mobiler, konsoler, smart-TV, IP-kameror, hemautomation… utan att röra något på varje enhet (eller bara röra det minsta när routern används som klient).

Vad är VPN-tjänster för spel?
Relaterad artikel:
Vad är VPN-tjänster för spel och när är de värda att använda?

Fördelar och nackdelar med att använda ett VPN på din router

Allmänna fördelar med ett VPN

När du aktiverar ett VPN är det första du märker att din publika IP-adress ändras. Det betyder att Du kan dölja eller "förkläda" din riktiga IP-adress och surfa mer privatäven om en tjänst har blockerat dig via IP-adress eller om du vill undvika överdriven spårning.

En annan stor fördel är att anslutningen går end-to-end-kryptering mellan din enhet och VPN-servernÄven om du ansluter till öppet Wi-Fi på en bar eller flygplats kommer en angripare inte enkelt att kunna spionera på dina inloggningsuppgifter, bankuppgifter eller filer du laddar upp eller laddar ner.

Dessutom, genom att ändra din synliga IP-adress till ett annat land, Du kan komma åt geografiskt begränsat innehåll: streamingkataloger, webbplatser som blockeras av region, spelsajter eller tjänster som är förbjudna på din plats.För distansarbete är det också användbart för att komma åt företagets resurser varifrån som helst.

Det förbättrar också din relativa anonymitet: Det minskar det direkta spår du lämnar kopplat till din hem-IP-adressÄven om cookies och webbhistorik fortfarande finns, blir systematisk spårning via IP-adress mycket svårare.

Slutligen är kommersiella VPN-tjänster och OpenVPN själva ganska lätt att använda för den genomsnittliga användarenOfta handlar det bara om att öppna appen, ange ditt användarnamn och lösenord, trycka på anslut, och du är klar. Och om den är på din router behöver du inte ens komma ihåg att aktivera den på varje enhet.

Nackdelar och punkter att se upp för

Det du nästan alltid kommer att märka är en viss prestandaförlust. Krypteringen och det extra hoppet till servern innebär att, Beroende på vilken hårdvara och server som valts, sänk hastigheten och öka latensen något.På långsamma routrar eller gratistjänster kan skillnaden vara mycket stor.

En annan aspekt är att Att använda ett VPN ersätter inte antivirusprogram eller gott uppförande.Om du laddar ner infekterade körbara filer eller besöker skadliga webbplatser kommer ett VPN inte att rädda dig. Faktum är att vissa program som till synes är "gratis VPN" faktiskt innehåller skadlig kod, så det är viktigt att använda pålitliga leverantörer och programvara.

Dessutom, i det specifika fallet med OpenVPN, även om installationen på en PC eller mobil enhet är enkel, Avancerad konfiguration (certifikat, skript, rutter…) kan bli utmanande. För de som inte är vana vid det, lägger installationen på routern till ytterligare ett lager: du behöver en kompatibel router eller använda specifik firmware.

Varför är OpenVPN ett bra val?

OpenVPN är en allmänt använd VPN-lösning med öppen källkod som kan fungera på Lager 3 tunnelläge (TUN) eller lager 2 bryggläge (TAP)Den är kompatibel med praktiskt taget alla stationära system (Windows, Linux, macOS), servrar och även med Android och iOS via appar.

Genom att förlita sig på SSL/TLS, Det möjliggör autentisering med hjälp av digitala certifikat, användarnamn/lösenord eller båda.Den är mer flexibel och i många fall enklare att hantera än IPsec, och erbjuder ett stort antal parametrar för att justera prestanda och säkerhet.

Prestandamässigt kan OpenVPN erbjuda Mycket bra hastigheter med låg latens och stabila anslutningarFörutsatt att servern har tillräckliga resurser och krypteringskonfigurationen är korrekt vald, fungerar den vanligtvis över UDP för att undvika omsändningar och uppnå högre hastigheter, med ytterligare komprimerings- och optimeringsalternativ.

konfigurera routern med OpenVPN

TUN- och TAP-lägen i OpenVPN

Med läge TUNOpenVPN Den emulerar ett punkt-till-punkt-gränssnitt som hanterar IP-trafik.Den inkapslar IP-paket i UDP eller TCP, perfekt för att skapa ett virtuellt subnät som skiljer sig från det fysiska lokala nätverket; till exempel 10.8.0.0/24 där alla VPN-klienter finns.

I läge KLAPPett komplett Ethernet-gränssnitt simuleras, därför Hela Ethernet-ramar är inkapsladeinte bara IP. Detta gör att fjärrenheter ser ut att vara på samma subnät som lokala enheter (användbart för vissa bryggningsscenarier och tjänster som är beroende av sändning), även om det blir komplicerat om käll- och destinationsnätverken delar samma räckvidd.

Rekommenderad kryptografi för en säker OpenVPN VPN

En modern och robust OpenVPN-konfiguration förlitar sig vanligtvis på elliptiska kurvbaserade (EC) certifikat för CA, server och klienterTill exempel att använda secp521r1-kurvan och en stark hash som SHA-512 i signaturen.

I TLS-kontrollkanalen är den rekommenderade metoden Använd TLS 1.2 som minimum, och om möjligt TLS 1.3Sviter med ECDHE används för Perfect Forward Secrecy, såsom TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384 eller de nyare sviterna TLS_AES_256_GCM_SHA384 och TLS_CHACHA20_POLY1305_SHA256 i TLS 1.3. Du kan kontrollera vad din installation stöder med hjälp av OpenVPN-kommandon för att lista chiffer och kurvor.

För datakanalen är idealet numera AES-256-GCM eller CHACHA20-POLY1305Om din processor stöder AES-NI är AES-GCM vanligtvis snabbare; på enheter utan acceleration presterar CHACHA20-POLY1305 vanligtvis bättre. OpenVPN innehåller verktyg för att visa tillgängliga chiffer (openvpn --show-ciphers).

Dessutom är det tillrådligt Lägg till ett HMAC-lager med tls-crypttls-auth krypterar och autentiserar den inledande fasen av TLS. Detta mildrar denial-of-service-attacker, UDP-portöversvämningar och TCP SYN-attacker, och förhindrar att en klient utan rätt nyckel ens initierar handskakningen. Äldre versioner använde tls-auth; tls-crypt är den utveckling som också krypterar denna fördelade nyckel.

Förutsättningar för att använda OpenVPN på din router

Innan du börjar aktivera OpenVPN på din router är det värt att kontrollera några saker. Först, Se till att din router stöder OpenVPN-servrarMånga mellan-/high-end-modeller från ASUS, TP-Link, Omada och andra inkluderar det, men inte alla.

För det andra behöver du din internetanslutning Offentlig IP-adress tillgänglig utifrånOm du är bakom CG-NAT (vanligt hos vissa fiber- eller radiolänkleverantörer) kommer du inte att kunna vidarebefordra portar till din router och OpenVPN fungerar inte utifrån om inte din leverantör ger dig en statisk offentlig IP-adress eller om du avslutar CG-NAT.

Det är också viktigt Konfigurera en dynamisk DNS (DDNS) eller ha en statisk IP-adress på WAN-nätverketDetta gör det möjligt för kunder att ansluta med ett enda namn (my-vpn.dyndns.org) utan att behöva oroa sig för ändringar i sin IP-adress. Av säkerhetsskäl rekommenderas att hålla systemtiden synkroniserad med internet, vilket moderna routrar gör via NTP.

OpenVPN-serverkonfiguration på TP-Link-routrar

Fall 1: Endast en router i hemnätverket

I ett enkelt scenario med en enda TP-Link-router är den typiska processen att logga in på enhetens webbgränssnitt, gå till den avancerade delen av VPN-server > OpenVPN och aktivera servernOm det här är första gången kommer routern att be dig generera certifikat för att kunna fortsätta.

Då måste du välja protokoll (UDP eller TCP), ställ in serviceporten inom intervallet 1024-65535, och definiera VPN-subnätet/masken (till exempel 10.8.0.0/24) från vilken virtuella IP-adresser kommer att tilldelas klienter.

Routern låter dig också välja kundåtkomsttyp: endast till hemnätverket, eller hemnätverket och internet (så att trafiken går till internet via ditt hem, användbart om du vill använda din hem-IP-adress när du är borta). När konfigurationen är klar sparas inställningarna, ett certifikat genereras om ett inte redan finns och en konfigurationsfil exporteras för användning av OpenVPN-klienter.

Fall 2: Två eller fler routrar på nätverkskartan

Om du har en modemrouter från din internetleverantör och en andra TP-Link-router bakom den i neutralt läge blir det lite mer komplicerat. Precis som tidigare, du konfigurerar OpenVPN på den interna routern (Router2): protokoll, port, VPN-subnät, åtkomsttyp, generering och export av konfigurationsfilen.

Då måste du Öppna porten på huvudmodemet/routern (Router1) till IP-adressen för Router2 med hjälp av den virtuella servern eller portvidarebefordransfunktionen. Det är viktigt att den interna porten matchar den konfigurerade VPN-tjänstporten och att du kommer ihåg vilken extern port du använder.

Sedan, i .ovpn-filen som exporterats av Router2, Du måste redigera två viktiga uppgifter.Ändra fjärradressen till WAN-IP-adressen för Router1 (den publika IP-adressen som tillhandahålls av din internetleverantör) och ersätt porten med den externa porten du har vidarebefordrat. Spara filen så kan du sedan använda den på externa klienter.

Konfigurera OpenVPN-server på ASUS-routrar

På ASUS-routrar med AsusWRT är processen också ganska guidad. Efter att ha öppnat webbgränssnittet (http://www.asusrouter.com eller routerns LAN-IP-adress), Gå till VPN > VPN-server och välj OpenVPNBeroende på firmware kan gränssnittet variera något, men logiken är likartad.

Du kommer att kunna ställa in serverport (en mellan 1024 och 65535 rekommenderas)RSA-nyckelns längd och huruvida klienter endast kommer att använda VPN:et för sitt lokala nätverk eller även för internetåtkomst är också faktorer att beakta. Som standard är OpenVPN-klientens inloggningsuppgifter vanligtvis desamma som för routern själv, även om du kan lägga till specifika konton för ökad säkerhet.

När inställningarna har tillämpats, aktivera OpenVPN-servern och exportera .ovpn-konfigurationsfilenvilket redan inkluderar inbäddade certifikat och grundläggande parametrar. När du ändrar relevant serverkonfiguration är det lämpligt att exportera filen på nytt för att hålla klienterna synkroniserade.

OpenVPN-server med Omada (TP-Link)

I miljöer som hanteras med Omada Controller kan du skapa en VPN-policy av typen VPN-server – OpenVPN För klient-till-plats-ändamål. Du ger den ett namn, aktiverar den, väljer tunnelläge (delat eller fullständigt), protokoll (TCP/UDP), port, lokal autentiseringsmetod och intervallet av IP-adresser som ska tilldelas klienter.

Du kan också definiera Primär och sekundär DNS som klienten kommer att använda (till exempel 8.8.8.8 och 8.8.4.4 eller de i ditt interna nätverk). Efter att du har sparat policyn skapas VPN-användare kopplade till den servern (med kontonamn, lösenord och OpenVPN-typ).

Sedan exporteras .ovpn-filen för den policyn och Den importeras till OpenVPN-skrivbords- eller mobilklienten.Om något går fel är det ibland bäst att använda OpenVPNs "Community"-klient istället för OpenVPN Connect, och justera parametrar som datachiffrar (till exempel genom att lägga till AES-128-CBC) eller ändra fjärr-IP-adressen till webbplatsens faktiska publika IP-adress.

Konfigurera en avancerad OpenVPN-server på GNU/Linux

Om du istället för att förlita dig på routerns gränssnitt vill ha fullständig kontroll kan du Konfigurera din egen OpenVPN-server på Linux (till exempel Debian) och skapa sedan en statisk rutt på routern som pekar mot den servern så att det lokala nätverket kan se VPN-klienterna.

Grundläggande OpenVPN-installation på Debian

På Debian eller andra derivatdistributioner innebär installationen att systemet uppdateras och OpenVPN-paketet installeras från arkiven. Ett enkelt apt-kommando kan sedan användas. Ladda ner OpenVPN-binärfilen och dess beroenden, vilket gör den redo att börja generera certifikat och konfigurationsfiler.

Generera certifikat med Easy-RSA 3

För att hantera PKI (Public Key Infrastructure) på ett bekvämt sätt är det vanligt att använda Easy-RSA 3, som automatiserar skapandet av CA:er, servercertifikat och klienterDen laddas vanligtvis ner från GitHub, packas upp och du arbetar i dess huvudkatalog.

Kärnan i konfigurationen finns i filen VarsDet är här du definierar om du ska använda RSA- eller elliptiska kurvor (EASYRSA_ALGO), kurvan (EASYRSA_CURVE), hashen (EASYRSA_DIGEST), utgångstider och om du vill ha ett fullständigt Distinguished Name eller bara ett CN. Justera EC här med secp521r1 och SHA-512. Det ger dig en mycket robust kryptografisk grund.

När variablerna har konfigurerats initieras PKI:n med motsvarande kommando (init-pki), CA:n skapas (med eller utan lösenord för den privata nyckeln) och Certifikatförfrågningar (gener-req) genereras från servern och varje klient, och signera dem efteråt (sign-req) som server eller klient beroende på vad som är lämpligt.

Sedan är det en bra idé att organisera filerna i separata mappar: en för servern och en för varje klient, med dess .crt, dess .key, ca.crt och ta.key-nyckel som du kommer att använda för tls-crypt. Detta gör det mycket enklare att skapa .conf/.ovpn-filerna senare utan att bli galen.

TLS-krypteringsnyckel och Diffie-Hellman-parametrar

Med moderna versioner av OpenVPN behöver du inte skapa en specifik Diffie-Hellman-parameterfil när du använder ECDHE, så du kan välj dh ingen i serverkonfigurationenDet viktigaste är att generera en symmetrisk nyckel som du kommer att använda med tls-crypt (till exempel ta.key), vilken du behöver kopiera. identisk på server och klienter.

Exempel på en säker OpenVPN-serverkonfiguration

En typisk serverfil i Linux innehåller direktiv som port 11949, proto udp och dev tunanger port, protokoll och virtuellt gränssnittstyp. Sedan hänvisas till certifikaten och nycklarna: ca, cert, key, dh (eller dh none) och tls-crypt ta.key.

I säkerhetsavsnittet, parametrar som chiffer AES-256-GCM, tls-ciphersuites och tls-cipher med säkra TLS 1.2/1.3-sviter, ecdh-kurva secp521r1 och tls-version-min 1.2Omförhandling kan också inaktiveras (reneg-sec 0) och om ett icke-AEAD-läge används kan SHA512-autentisering anges.

Nätverkssektionen definierar topologin (subnätet) och det virtuella delnätet, till exempel server 10.8.0.0 255.255.255.0Förutom en ipp.txt-fil för att underhålla statiska IP-adresser för specifika klienter, nås det lokala nätverket genom att pusha rutten (rutt 192.168.X.0 255.255.255.0), tvinga all trafik genom VPN:et (redirect-gateway) och tillhandahålla specifika DNS-servrar via dhcp-option.

Klient-till-klient-kommunikation kan också aktiveras, och keepalive kan användas för att upptäcka avbrott. begränsa det maximala antalet samtidiga anslutningarSlutligen, för säkerhets skull, körs OpenVPN med en användare/grupp utan behörigheter, nyckel- och gränssnittsbeständighet är aktiverad och loggsökvägar definieras med en måttlig utförlighetsnivå.

OpenVPN-klientkonfiguration (PC, Linux, Windows)

Klienter behöver en .ovpn- eller .conf-fil med direktiv som klient, dev tun, proto udp och fjärrstyrning pekar på serverns domän eller publika IP-adress och den port du använder. Det är vanligt att aktivera `resolv-retry infinite`, `nobind` och `persist-key/tun` för att förbättra stabiliteten.

Angående inloggningsuppgifter kommer klienten att hänvisa till ca, dess eget certifikat och nyckel, och ta.key för tls-cryptParametrarna chiffer, autentisering och TLS måste matcha serverns. Om klienten stöder TLS 1.3 läggs relevanta tls-chiffer-sviter till, och om endast TLS 1.2 används motsvarande tls-chiffer. Loggningsnivån justeras till verb 3 eller högre när problem uppstår.

Aktivera det lokala nätverket för åtkomst till VPN-klienter

Om du konfigurerar OpenVPN-servern på en dator i ditt lokala nätverk (en Raspberry Pi, en Debian-server etc.) och inte direkt på routern, Du måste skapa en statisk rutt på routern så att nätverket 10.8.0.0/24 (eller det du använder) är nåbart.

Idén är enkel: i routern anger du att Subnätet 10.8.0.0/24 har OpenVPN-serverns LAN-IP-adress som sin gateway. (till exempel 192.168.1.100). Således, när en enhet i det lokala nätverket vill svara på en VPN-klient, skickar den trafiken till servern, som sedan hanterar routningen inom tunneln.

Konfigurera OpenVPN-klienter på Android och andra mobila enheter

router med OpenVPN

På Android kan du använda antingen den officiella OpenVPN-appen eller mer avancerade klienter som är kompatibla med nya funktioner (TLS 1.3, moderna datachiffrar etc.). Det första är Kopiera mappen som innehåller ca.crt, klientcertifikatet och nyckeln, ta.key och .ovpn-filen till telefonens minne..

Sedan importeras profilen (.ovpn-fil) från appen. Det kontrolleras att de laddade parametrarna matchar vad du har på servern. och den är sparad. Därifrån trycker du bara på profilen för att upprätta anslutningen; om allt fungerar korrekt ser du att telefonen får en IP-adress från det virtuella subnätet och kan komma åt fjärrresurserna.

Vanliga anslutningsproblem och hur man upptäcker dem

När man konfigurerar OpenVPN för första gången är det ganska vanligt att man stöter på fel i loggarna. Om klienten indikerar att Det gick inte att identifiera serverdomänen (okänd värd)Kontrollera namnet i fjärrdatorn och statusen för den dynamiska DNS-tjänsten; som ett snabbt test, anslut direkt med den offentliga IP-adressen för att utesluta problem med lösningen.

Meddelanden som Kunde inte fastställa IPv4/IPv6-protokollet Dessa meddelanden indikerar att ingen giltig adress matchas; återigen kontrolleras värd- och DNS-posterna. Andra meddelanden av typen SIGUSR1[soft,init_instance] som tas emot indikerar vanligtvis återförsök efter ett tidigare fel, till exempel ett felaktigt certifikatlösenord eller brandväggsproblem längs vägen.

Om klienten förblir i ett VÄNTATILLSTÅND på obestämd tid utan att gå vidare, normalt Porten är inte öppen/vidarebefordrad korrekt på routern, eller så körs inte OpenVPN-servern.Det är viktigt att kontrollera portvidarebefordran och verifiera på servern att åtminstone meddelandet "Initialiseringssekvens slutförd" visas.

Andra vanliga problem

Windows visar ibland varningar som anger att användar- och gruppalternativen inte är implementerade; Det här är inte kritiska fel, utan bara Linux-direktiv som du kan ta bort från .ovpn-filen. Om de stör dig. En annan vanlig varning är att ignorera dh i klientläge, eftersom Diffie-Hellman bara tillhör serverkonfigurationen.

Fel som t.ex tls-crypt uppackningsfel eller TLS-fel: lokala/fjärrstyrda TLS-nycklar är inte synkroniserade Detta indikerar vanligtvis att ta.key-filen inte matchar mellan servern och klienten, eller att den kopierades felaktigt. Att kontrollera och kopiera om nyckeln löser vanligtvis problemet.

Om du ser varningar gällande MTU (link-mtu inkonsistent) eller komprimering (comp-lzo) är det förmodligen Serverns och klienternas komprimeringsinställningar eller maximala paketstorlek matchar inteNumera är det av säkerhetsskäl bäst att helt inaktivera komprimering på båda sidor när det är möjligt.

En misslyckad generisk TLS-handskakning indikerar i huvudsak att En vanlig kombination av chiffer har inte hittats, eller så finns det en inkompatibel TLS-parameter.Att kontrollera chiffer, datachiffer, tls-cipher(sviter) och lägsta TLS-version på server och klient brukar belysa problemet.

Vad kännetecknar ett bra VPN och vilka alternativ finns det till OpenVPN?

När man väljer ett VPN (eller en tjänst som använder OpenVPN nedan) bör flera faktorer beaktas. En bra tjänst bör Erbjud stark kryptering av IP-adresser och protokoll, och skydda cookies och webbhistorik. och, om möjligt, inkludera tvåfaktorsautentisering för kontoåtkomst.

Funktioner som Kill switch, blockering av DNS-läckor, strikta policyer för att inte spara loggar och servrar optimerade för streaming eller P2P Det här är intressanta fördelar. På en operativ nivå är det faktum att appen är lättanvänd och att supporten svarar snabbt också en viktig detalj.

Förutom OpenVPN finns det andra tekniker och tjänster: WireGuard (väldigt snabbt och modernt), IPsec (klassiskt i företagsmiljöer), eller lösningar som NordVPN, ProtonVPN, ExpressVPN, CyberGhost, Surfshark, etc. som paketerar allt med sina egna appar. Det finns också gratisalternativ som Tinc, som erbjuder krypterad tunnling och stor flexibilitet, perfekt för komplexa nätverk eller för att integrera VPN i routrar och NAS-enheter med begränsade resurser.

Korrekt installerat, ett OpenVPN-baserat VPN på din router eller hemmaserver Det kan ge dig säker fjärråtkomst till ditt nätverk, robust kryptering, bra hastighet och bekvämligheten av att skydda alla dina enheter samtidigt.förutsatt att du är uppmärksam på konfigurationen av certifikat, kryptering, rutter och portar, och verifierar att din anslutning har en offentlig IP-adress utan att CG-NAT blockerar din väg.