Huvud Mac Förvandla en Raspberry Pi till ett VPN för att komma åt ditt nätverk var som helst

Förvandla en Raspberry Pi till ett VPN för att komma åt ditt nätverk var som helst



Varför använda en VPN för att komma åt ditt hem

Det finns många anledningar till att du vill komma åt ditt hemnätverk på distans, och det bästa sättet att göra det är med en VPN-server. Vissa routrar låter dig faktiskt ställa in en VPN-server direkt i routern, men i många fall kommer du att behöva ställa in en själv.

En Raspberry Pi är ett utmärkt sätt att åstadkomma detta. De behöver inte mycket energi för att köra, och de har tillräckligt med kraft för att köra en VPN-server. Du kan ställa in en bredvid din router och i princip glömma bort den.

När du har tillgång till ditt hemnätverk på distans kan du komma till dina filer var som helst. Du kan köra dina hemdatorer på distans. Du kan till och med använda ditt hems VPN-anslutning från vägen. En sådan inställning låter din telefon, surfplatta eller bärbara dator agera precis som den var hemma var som helst.

Ställ in Pi

Innan du kan börja ställa in VPN måste du ställa in din Raspberry Pi. Det är bäst att konfigurera Pi med ett fodral och anständigt storlek minneskort, 16 GB borde vara mer än tillräckligt. Anslut om möjligt din Pi till din router med en Ethernet-kabel. Det minimerar eventuella förseningar i nätverket.

Installera Raspbian

Det bästa operativsystemet att använda på din Pi är Raspbian. Det är standardvalet som läggs ut av Raspberry Pi-stiftelsen, och det är baserat på Debian, en av de mest säkra och stabila Linux-versionerna som finns tillgängliga.

Gå till Rasbian nedladdningssida , och ta tag i den senaste versionen. Du kan använda Lite-versionen här, eftersom du inte behöver ett grafiskt skrivbord.

Medan det hämtas, hämta den senaste versionen av Etsare för ditt operativsystem. När nedladdningen är klar, extrahera Raspbian-bilden. Öppna sedan Etcher. Välj den Raspbian-bild från vilken du extraherade den. Välj ditt SD-kort (Sätt i det först). Skriv slutligen bilden till kortet.

hur många människor kan använda Disney Plus

Lämna SD-kortet i din dator när det är klart. Öppna en filhanterare och bläddra till kortet. Du bör se ett par olika partitioner. Leta efter startpartitionen. Det är den med en kernel.img-fil i den. Skapa en tom textfil på startpartitionen och kalla den ssh utan filtillägg.

Du kan äntligen ansluta din Pi. Se till att du sätter i den sist. Du behöver inte en skärm, tangentbord eller mus. Du kommer att få fjärranslutning till Raspberry Pi via ditt nätverk.

Ge Pi några minuter för att ställa in sig själv. Öppna sedan en webbläsare och navigera till routerns hanteringsskärm. Hitta Raspberry Pi och notera dess IP-adress.

Oavsett om du använder Windows, Linux eller Mac, öppna OpenSSH. Anslut till Raspberry Pi med SSH.

$ ssh [email protected] 

Använd självklart den faktiska IP-adressen till Pi. Användarnamnet äralltid pi, och lösenordet ärhallon.

Ställ in OpenVPN

OpenVPN är inte helt enkelt att konfigurera som server. Den goda nyheten är att du bara behöver göra det en gång. Så innan du gräver in, se till att Raspbian är helt uppdaterad.

$ sudo apt update $ sudo apt upgrade

När uppdateringen är klar kan du installera OpenVPN och det certifikatverktyg som du behöver.

$ sudo apt install openvpn easy-rsa

Certifikatmyndighet

För att autentisera dina enheter när de försöker ansluta till servern måste du ställa in en certifikatutfärdare för att skapa signeringsnycklar. Dessa nycklar säkerställer att endast dina enheter kan ansluta till ditt hemnätverk.

Skapa först en katalog för dina certifikat. Gå in i den katalogen.

$ sudo make-cadir /etc/openvpn/certs $ cd /etc/openvpn/certs

Leta efter OpenSSL-konfigurationsfiler. Länka sedan den senaste medopenssl.cnf.

$ ls | grep -i openssl $ sudo ln -s openssl-1.0.0.cnf openssl.cnf

I samma certs-mapp finns en fil som heter vars. Öppna den filen med din textredigerare. Nano är standard, men installera gärna Vim om du är mer bekväm med det.

Redigera Vars-filen

HittaKEY_SIZEvariabel först. Det är inställt på2048som standard. Ändra det till4096.

export KEY_SIZE=4096

Huvudblocket som du behöver hantera etablerar information om din certifikatutfärdare. Det hjälper om denna information är korrekt, men allt du kommer ihåg är bra.

export KEY_COUNTRY='US' export KEY_PROVINCE='CA' export KEY_CITY='SanFrancisco' export KEY_ORG='Fort-Funston' export KEY_EMAIL=' [email protected] ' export KEY_OU='MyOrganizationalUnit' export KEY_NAME='HomeVPN'

När du har allt, spara och avsluta.

Det Easy-RSA-paketet som du installerade tidigare innehåller många skript som hjälper dig att ställa in allt du behöver. Du behöver bara köra dem. Börja med att lägga till vars-filen som källa. Det laddar alla variabler som du just har ställt in.

$ sudo source ./vars

Rengör sedan nycklarna. Du har ingen, så oroa dig inte för att meddelandet säger att dina nycklar kommer att raderas.

$ sudo ./clean-install

Skapa certifikatutfärdare

Slutligen bygg din certifikatutfärdare. Du har redan ställt in standardvärdena, så du kan bara acceptera de standardvärden som den innehåller. Kom ihåg att ställa in ett starkt lösenord och svara ja på de två sista frågorna efter lösenordet.

$ sudo ./build-ca

Gör några nycklar

Bygg servernyckeln

Du har gått igenom alla problem för att skapa en certifikatutfärdare så att du kan signera nycklar. Nu är det dags att göra lite. Börja med att bygga nyckeln till din server.

$ sudo ./build-key-server server

Bygg Diffie-Hellman

Bygg sedan Diffie-Hellman PEM. Det är vad OpenVPN använder för att säkra dina klientanslutningar till servern.

$ sudo openssl dhparam 4096 > /etc/openvpn/dh4096.pem

Den sista nyckeln du behöver från och med nu kallas en HMAC-nyckel. OpenVPN använder den här nyckeln för att signera varje enskilt paket med information som utbyts mellan klienten och servern. Det hjälper till att förhindra vissa typer av attacker på anslutningen.

$ sudo openvpn --genkey --secret /etc/openvpn/certs/keys/ta.key

Serverkonfiguration

Du har nycklarna. Nästa del i att ställa in OpenVPN är själva serverkonfigurationen. Tack och lov är det inte så mycket du behöver göra här. Debian tillhandahåller en baskonfiguration som du kan använda för att komma igång. Så börja med att få den konfigurationsfilen.

$ sudo gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz > /etc/openvpn/server.conf

Använd din textredigerare igen för att öppna/etc/openvpn/server.conf. De första sakerna du behöver hitta ärdet där,certochnyckel-filer. Du måste ställa in dem så att de matchar de faktiska platserna för filerna du skapade, som alla finns i/ etc / openvpn / certs / keys.

OpenVPN Server Config Keys

ca /etc/openvpn/certs/keys/ca.crt cert /etc/openvpn/certs/keys/server.crt key /etc/openvpn/certs/keys/server.key # This file should be kept secret

Hittadvs.och ändra den så att den matchar Diffie-Hellman.pemsom du skapade.

dh dh4096.pem

Ange sökvägen för din HMAC-nyckel också.

tls-auth /etc/openvpn/certs/keys/ta.key 0

Hittachifferoch se till att den matchar exemplet nedan.

cipher AES-256-CBC

Nästa par alternativ finns, men de kommenteras med en;. Ta bort semikolonna framför varje alternativ för att aktivera dem.

push 'redirect-gateway def1 bypass-dhcp' push 'dhcp-option DNS 208.67.222.222' push 'dhcp-option DNS 208.67.220.220'

Leta efteranvändareochgruppalternativ. Avkommentera dem och ändraanvändareatt öppna vpn.

user openvpn group nogroup

Slutligen är de två sista raderna inte i standardkonfigurationen. Du måste lägga till dem i slutet av filen.

OpenVPN Server Config Auth

Ställ in autentiseringssammandragningen för att ange starkare kryptering för användarautentisering.

# Authentication Digest auth SHA512

Begränsa sedan cipers som OpenVPN kan använda till bara starkare. Detta hjälper till att begränsa möjliga attacker på svaga chiffer.

# Limit Ciphers tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384:TLS-DHE-RSA-WITH-AES-128-GCM-SHA256:TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA:TLS-DHE-RSA-WITH-AES-128-CBC-SHA:TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA

Allt för konfiguration. Spara filen och avsluta.

Starta servern

Innan du kan starta servern måste du göra detopenvpnanvändare som du angav.

$ sudo adduser --system --shell /usr/sbin/nologin --no-create-home openvpn

Det är en speciell användare bara för att köra OpenVPN, och det kommer inte att göra något annat.

Starta nu servern.

$ sudo systemctl start openvpn $ sudo systemctl start [email protected] 

Kontrollera att de båda kör

$ sudo systemctl status openvpn*.service

Om allt ser bra ut, aktivera dem vid start.

$ sudo systemctl enable openvpn $ sudo systemctl enable [email protected] 

Klientinställning

Din server är nu inställd och igång. Därefter måste du ställa in din klientkonfiguration. Det här är konfigurationen som du använder för att ansluta dina enheter till din server. Återgå tillvissamappen och förbered dig för att bygga klientnycklarna. Du kan välja att skapa separata nycklar för varje klient eller en nyckel för alla klienter. För hemmabruk bör en nyckel vara bra.

$ cd /etc/openvpn/certs $ sudo source ./vars $ sudo ./build-key client

Processen är nästan identisk med servern, så följ samma procedur.

Klientkonfiguration

Konfigurationen för klienter är mycket lik den för servern. Återigen har du en färdig mall för att basera din konfiguration på. Du behöver bara ändra den så att den matchar servern.

Byt tillklientkatalog. Packa sedan upp provkonfigurationen.

$ cd /etc/openvpn/client $ sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/client/client.ovpn

Öppnaclient.ovpnfil med din textredigerare. Hitta sedanavlägsenalternativ. Förutsatt att du inte redan använder en VPN, Google-sökning Vad är min IP? Ta adressen som den visar och ställ inavlägsenIP-adress till den. Lämna portnumret.

remote 107.150.28.83 1194 #That IP ironically is a VPN

OpenVPN Client Config Keys

Ändra certifikaten så att de återspeglar de du skapade, precis som du gjorde med servern.

ca ca.crt cert client.crt key client.key

Hitta användaralternativen och avmarkera dem. Det är bra att köra klienterna somingen.

user nobody group nogroup

Avkommentarertls-authalternativ för HMAC.

tls-auth ta.key 1

OpenVPN-klientkoder

Leta sedan efterchifferoch se till att den matchar servern.

cipher AES-256-CBC

Lägg sedan bara till autentiseringssmältnings- och krypteringsbegränsningar längst ner i filen.

# Authentication Digest auth SHA512 # Cipher Restrictions tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384:TLS-DHE-RSA-WITH-AES-128-GCM-SHA256:TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA:TLS-DHE-RSA-WITH-AES-128-CBC-SHA:TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA

När allt ser bra ut, spara filen och avsluta. Använda sig avtarför att packa upp konfigurationen och certifikaten så att du kan skicka dem till klienten.

$ sudo tar cJf /etc/openvpn/clients/client.tar.xz -C /etc/openvpn/certs/keys ca.crt client.crt client.key ta.key -C /etc/openvpn/clients/client.ovpn

Överför paketet till klienten hur du än väljer. SFTP, FTP och en USB-enhet är alla bra alternativ.

Port Forwarding

Port Forwarding

För att något av detta ska fungera måste du konfigurera din router för att vidarebefordra inkommande VPN-trafik till Pi. Om du redan använder ett VPN måste du se till att du inte ansluter i samma port. Om du är det ändrar du porten på din klient- och serverkonfiguration.

Anslut till din routers webbgränssnitt genom att skriva in dess IP-adress i din webbläsare.

Varje router är annorlunda. Ändå borde de alla ha någon form av denna funktionalitet. Hitta den på din router.

Installationen är i princip densamma på varje router. Ange start- och slutportarna. De ska vara desamma som varandra och den som du ställer in i dina konfigurationer. Ställ sedan in den för din Raspberry Pi: s IP för IP-adressen. Spara dina ändringar.

Anslut till klienten

Varje klient är annorlunda, så det finns ingen universell lösning. Om du använder Windows behöver du Windows OpenVPN-klient .

På Android kan du öppna din tarball och överföra nycklarna till din telefon. Installera sedan OpenVPN-appen. Öppna appen och anslut informationen från din konfigurationsfil. Välj sedan dina nycklar.

På Linux måste du installera OpenVPN mycket som du gjorde för servern.

$ sudo apt install openvpn

Byt sedan till/ etc / openvpnoch packa upp tarballen som du skickade över.

$ cd /etc/openvpn $ sudo tar xJf /path/to/client.tar.xz

Byt namn på klientfilen.

$ sudo mv client.ovpn client.conf

Starta inte klienten ännu. Det kommer att misslyckas. Du måste först aktivera vidarebefordran av port på din router.

Avslutande tankar

Du bör nu ha en fungerande installation. Din klient kommer att ansluta direkt via din router till Pi. Därifrån kan du dela och ansluta via ditt virtuella nätverk så länge alla enheter är anslutna till VPN. Det finns ingen gräns, så du kan alltid ansluta alla dina datorer till Pi VPN.

Intressanta Artiklar

Redaktionen

Växla mellan HKCU och HKLM i Windows 10 Registerredigerare
Växla mellan HKCU och HKLM i Windows 10 Registerredigerare
I Windows 10 är det möjligt att växla snabbt mellan registernycklar i filialen HKEY_LOCAL_MACHINE och filialen HKEY_CURRENT_USER. Så här gör du.
Vad är en megabit (Mb)?
Vad är en megabit (Mb)?
En megabit är en måttenhet för datastorlek och/eller dataöverföring. Det kallas ofta för Mb eller Mbps när man diskuterar dataöverföringshastigheter.
Vad är en bra Instagram Stories Engagement Rate?
Vad är en bra Instagram Stories Engagement Rate?
Varför skapar vi sociala medieprofiler? Det är vanligtvis för att vi vill ha någon form av interaktion med vår familj, vänner och anhängare. Det finns inte så många som bara tittar på. Beroende på hur stor din profil är,
iMac Pro: 32 GB, 64 GB eller 128 GB, hur mycket minne behöver du?
iMac Pro: 32 GB, 64 GB eller 128 GB, hur mycket minne behöver du?
IMac Pro är en allt-i-ett-maskin som levereras med en Xeon W-processor och kan gå upp till 18 kärnor. Det kan enkelt drivas genom både flertrådade och engängade arbetsflöden och uppgifter. Med denna typ av kraft,
Metroid Winamp Skin
Metroid Winamp Skin
Namn: Metroid Typ: Classic Winamp Skin Extension: wsz Storlek: 103085 kb Du kan få Winamp 5.6.6.3516 och 5.7.0.3444 beta härifrån. Obs: Winaero är inte författare till denna hud, alla poäng går till den ursprungliga hudförfattaren (se hudinformation i Winamp-inställningar). Vissa skinn kräver ClassicPro-plugin från Skin Consortium, få det
Ny startmeny Sökalternativ i Windows 10
Ny startmeny Sökalternativ i Windows 10
Förutom nya meddelandealternativ i Windows 10 Build 18917 introducerar 20H1-grenen av den kommande funktionsuppdateringen några mindre förbättringar av sökfunktionen i Start-menyn. Annons Windows 10 kommer med en helt omarbetad Start-meny, som kombinerar Live Tiles introducerad i Windows 8 med klassiska appgenvägar.
Vad är en rotmapp eller en rotkatalog?
Vad är en rotmapp eller en rotkatalog?
Rotmappen, aka rotkatalogen, är den högsta mappen i någon mappbaserad hierarki. Till exempel är rotmappen för C-enheten C:.