Opsætning af OpenVPN på en Raspberry Pi er ret ligetil takket være PiVPN.
Hvad er OpenVPN?
OpenVPN er en open-source netværksløsning designet til at oprette sikre punkt-til-punkt eller site-til-site-forbindelser. Den krypterer brugerens internettrafik og sender den gennem en server for at skjule deres data og placering. OpenVPN giver et ekstra lag af privatliv og sikkerhed online, især på offentlige Wi-Fi-netværk.
Inden du går i gang!
Du skal bruge: En Raspberry Pi som du kan tilgå enten via SSH eller anden måde at tilgå den på.
OBS:
Hvis du vil bruge dynamisk DNS adresse til guiden, scroll til bunden af guiden og følg bonus guiden først!
Installation af Raspberry Pi OS
Før man kan installere OpenVPN på en Raspberry Pi, skal man installere Raspberry Pi OS først.
0.1)
Gå til Raspberry Pi’s hjemmeside og download Raspberry Pi Imager.
0.2)
åben “Raspberry Pi Imager” efter du har installeret det, og tilslutte dit SD-kort til din computer. – Vælg nu “Choose OS”
0.3)
Gå til Raspberry Pi OS (Other) og vælg det operativsystem, du gerne vil bruge. I dette eksempel vil jeg bruge Raspbian Pi Lite (32 Bit)
0.4)
Efter at have valgt dit operativsystem skal du nu trykke “CHOOSE SD CARD” og vælg det SD-kort, du har tilsluttet til din PC
OBS: Dette vil slette alle data på dit SD-kort, så fjern eventuelle vigtige data, inden du fortsætter.
0.5)
Når operativsystemet og SD-kortet er valgt, skal du vælge WRITE. Nu installeres operativsystemet til SD-kortet.
Du kan også finde inspiration i denne YouTube video
Lad os komme i gang med at installere PiVPN
1.1)
Kør følgende kommando på din “Raspberry Pi” som ROOT eller med en SUDO bruger for at installere PiVPN.
1.2)
Den første skærm informerer dig om, at du skal indstille en statisk lan IP-adresse. Det er bedst at bruge en statisk lan IP for at sikre, din Raspberry Pi ikke skifter IP-adresse efter noget tid.
Dog skal du være OBS på at bruge en IP uden for routers DHCP range, så den ikke kommer til at konflikte med andre enheder på netværket!
Nogle routere kan lave DHCP-reservationer, og det vil være at fortrække!
– Dog er dette normalt ikke muligt i routere der leveres af internetudbydere, da de er meget begrænset i funktionalitet.
Jeg har specificeret en statisk lan IP-adresse i min router ved hjælp af “DHCP-reservationer”, har du også statisk ip skal du vælge “Yes”.
Hvis du bruger installationen til at lave en statisk IP-adresse på din Raspberry Pi skal du vælge “No”!
1.3)
Nu skal du vælge en lokal bruger. Hvis du har oprettet en anden bruger (udover standardbrugeren “pi”), vil du have muligheden her. I de fleste tilfælde skal du bare vælge brugeren “pi”.
1.4)
Du vil blive præsenteret for en skærm, der informerer dig om, at PiVPN giver dig mulighed for at installere enten OpenVPN eller WireGuard på din Raspberry Pi. Vælg OpenVPN og derefter OK.
1.5)
Den næste sektion vil have nogle standardindstillinger. Min anbefaling er at beholde disse indstillinger, vælg “No” for at fortsætte eller “YES” hvis du ændre disse installinger.
1.6)
Standard porten, som OpenVPN bruger, er UDP 1194. Hvis du gerne vil ændre dette, kan du gøre det her.
Vælg OK og vælg derefter Ja for at bekræfte, at portindstillingerne er korrekte.
1.7)
Nu skal du vælge en DNS-udbyderen, som du gerne vil bruge. Vælg “Custom”, hvis du vil bruge din egen DNS-server (som f.eks. Pi-hole/AdGuard Home), eller vælg en af de offentlige DNS-udbydere. mit personlige valg er Google.
1.8)
Du vil nu blive bedt om at bruge din IP-adresse og det skal være en fast ip, eller brug “Bonus guiden” til at oprette DuckDNS for at få en fast ip.
1.9)
Hvis du valgte at bruge en Public DNS Adresse, kan du indtaste den information her. På næste skærm skal du vælge “OK” for at bekræfte, at oplysningerne er korrekte.
1.10)
Du vil få besked om, at servernøglen og HMAC-nøglen vil blive genereret. Vælg OK.
1.11)
Det næste trin vil informere dig om, at VPN-serveren vil kontrollere for automatiske opgraderinger, og at der vil være behov for periodiske genstart. Dette er en god mulighed. Aktivér automatiske opgraderinger (medmindre du har en god grund til ikke at gøre det) og fortsæt. Pakkerne vil nu blive installeret.
1.12)
Installationen er nu gemmenført! Genstart din Raspberry Pi. Den næste sektion vil forklare, hvordan du kan opsætte VPN-profiler.
Sådan opretter du OpenVPN profiler på en Raspberry Pi med PiVPN
2.1.)
Oprettelse af en OpenVPN profil er meget nemt, takket være PiVPN.
Kør følgende kommando for at starte oprettelsen af profilen.
OBS: Login med den bruger du har oprettet i PiVPN instationen (Normalt PI) og skriv
2.2.)
Indtast et navn til din bruger. Du vil derefter blive spurgt, hvor længe certifikatet skal virke. De fleste mennesker vil bruge 1080-dages standardcertifikat, men dette kan justeres, hvis du ønsker det. Indtast og bekræft derefter en adgangskode for brugeren. Profilen vil derefter blive oprettet!
Vær opmærksom på, at adgangskoden er vigtig for sikkerheden, så sørg for at vælge en stærk adgangskode, der er svær at gætte.
Gem adgangskoden et sikkert sted, da du får brug for den senere, når du opretter forbindelse til VPN-serveren.
2.3)
Du kan nu få adgang til profilen ved at navigere til “ovpns-mappen”
I denne mappe finder du den genererede OpenVPN-profil i form af en .ovpn-fil. Du kan kopiere denne fil til din klient og bruge den til at etablere forbindelse til din VPN-server ved hjælp af en OpenVPN-klient.
Det anbefales, at du overfører denne fil lokalt ved at bruge et netværksdrev eller en ekstern USB-nøgle. Årsagen er, at din .ovpn-fil indeholder et certifikat i bunden af filen. Selvom det ikke alene ikke vil tillade dig at oprette forbindelse (du skal stadig bruge adgangskoden (Som du defineret ovenfor), Det anbefales stadig, at du gør dit bedste for at holde den fil lokal på den enhed, der bruger den.
Følg instruktionerne nedenfor, hvis du vil mounte et eksternt USB-drev til din Raspberry Pi og flytte .ovpn-filen.
3.1)
For at oprette en mappe til at mounte det eksterne USB-drev, ka du følge disse trin:
3.2)
Sæt dit USB Stik til din Raspberry Pi, og skriv nedstående kommando for at finde navnet på USB drevet! I vores tilfælde “/dev/sda1”
Monter drevet til mappelokationen og kopier filen! BEMÆRK: Sørg for at erstatte “/dev/sda1” med dit enhedsnavn.
3.4)
thomas.ovpn vil nu være kopieret til dit USB-drev!
Husk at skifte filnavnet (thomas.ovpn) ud med det navn du selv har oprettet!
Port Forward for din OpenVPN til din Raspberry Pi
4.1)
Vi skal nu viderestille UDP-port 1194 i din router til vores Raspberry Pi’s lan IP.
Hvordan man gør det vil være lidt anderledes, da det kommer an på hver enkelt routers indstillinger, alt afhængig af hvilke mærke er.
Her er nogle gode vejledninger, der viser, hvordan man viderestiller porte på forskellige mærker (fabrikater) af routere.
Du kan evt. søge efter navnet på din router + “port forwarding” på Google. Eksempel: Netgear port forwarding.
I korte træk, skal lave en port forward til din Raspberry Pi lan IP -adresse f.eks 192.168.1.197 – Porten skal være UDP 1194
OpenVPN-klientkonfiguration – Sådan opsættes OpenVPN på din enhed!
5.1)
Download OpenVPN-klienten til din enhed! Det kan være i Appstore, Google play, Windows eller MacOS – I dette tilfælde henter jeg det til min android tlf.
5.2)
Importer din .ovpn fil i dit vpn klient! Filen er den som oprettet tidligere. Upload filen og indtast derefter den private nøgle-adgangskode, som vi brugte i guiden.
Billedet nedenunder viser hvordan din client ser ud på Android 🙂
5.3)
Nu bør du kunne oprette forbindelse til din VPN fra et eksternt netværk og få adgang til dine lokale ressourcer!
Færdig 🙂
Tak fordi du læste min vejledningen om, hvordan du opsætter OpenVPN på en Raspberry Pi. Hvis du har nogen spørgsmål om, hvordan du opsætter OpenVPN på en Raspberry Pi, er du velkommen til at efterlade en kommentar!
Bonus Guide:
Sådan sætter du DuckDNS op på din Raspberry Pi
– Med DuckDNS bliver din dynamiske WAN IP altid opdateret op mod dit DuckDNS domaine – Så f.eks “futuretest.duckdns.org” vil altid pege på min dynamiske WAN IP
OBS: Før du starter, skal du have oprettet en konto på https://www.duckdns.org.
6.1)
A) Login på duckdns.org – Du kan enten bruge: GitHub, Google, Twitter – Jeg anbefaler google!
B) Klik på Sub Domian, og tilføj dit eget navn! – Tryk nu på “Add Domain”
C) Du skal gemme din Token, samt dit domain navn i dette tilfælde futuretest.duckdns.org
6.2)
Login på din Raspberry Pi – via SSH. – Når du er logget ind på din Raspberry Pi, skal vi oprettet “duck.sh”, som vil køre med et planlagt tidsinterval. – Kør disse kommandoer
6.3)
6.4)
Nu skal vi placeret scriptet i vores duck.sh, samt køre det i et planlagt tidsinterval. Læs mere om CRON her…
Scriptet ser sådan ud.
Du skal skifte [YOUR_DOMAIN] samt [YOUR_TOKEN] med info fra https://www.duckdns.org/domains
Min version af scripet ser sådan ud:
6.5)
Tryk nu på CTRL + X og tryk på Y for at lukke og gemme vores script i nano!
6.6)
Nu skal vi ændre tilladelsen for vores nye script samt tilføje det til “crontab” Yderlig skal vi planlægge scriptet til at køre hvert 5. minut.
“Crontab er en opgaveplanlægger, der automatiserer visse kommandoer.”
6.7)
Indsæt indholdet af scriptet i din crontab-fil.
Når du har kopieret din kode ind i crontab (CTRL + INSERT) tryk nu på “CTRL + X -> Y” for at gemme og afslutte crontab (Hvis du brugte nano)
Dit script vil nu køre hvert femte minut via crontab!
For at teste om det virker, kan du skrive!:
Hvis du modtager et OK efter at have kørt disse to komandoer, fungerede processen korrekt. Hvis du modtager KO, har du en fejl et sted i din scriptfil eller du har ikke givet de rette tilladelser til filen.
6.8)
Dette er en meget enkel og ligetil proces! Når du vil oprettet forbindelse til din openvpn server, skal du bruge det domæne som du har oprettet! I
denne guide brugte jeg “futuretest.duckdns.org”
OBS: Det er vigtigt at du er forbundet til internettet, når du bruger tjenesten!
Slut for denne bonus guide!