INHOUDSOPGAWE:

Raspberry Pi VPN Gateway: 6 stappe
Raspberry Pi VPN Gateway: 6 stappe

Video: Raspberry Pi VPN Gateway: 6 stappe

Video: Raspberry Pi VPN Gateway: 6 stappe
Video: How to network monitor using Raspberry PI | Zabbix | NETVN 2024, Julie
Anonim
Raspberry Pi VPN Gateway
Raspberry Pi VPN Gateway

Opdateer 2018-01-07:

  • Ontbrekende dinge is opgedateer en die nodige veranderings is aangebring vir die huidige weergawe van Raspian.
  • Het ook 'n spesifieke gids vir NordVPN opgestel.

Daar is 'n paar verskillende gebruike vir VPN. Of u wil u privaatheid en privaat data beskerm teen nuuskierige oë, of u moet 'n bron uit 'n ander land kry. Om uit 'n ander land te verkry, kan baie nuttig wees om toegang te kry tot dienste wat nie in u land aangebied word nie. Daar is vandag 'n aantal VPN -dienste, en die meeste van hulle bied sagteware vir u rekenaar en programme vir u tablet of telefoon. Maar as u ander toestelle het wat nie deur die sagteware ondersteun word nie, dan wil u via die VPN gaan? Bou dan 'n poort wat u internettoegang gee via die VPN.

As u na u basiese netwerkopstelling kyk, het u 'n 'standaard gateway' wat gebruik word vir enige ip-adres wat nie in u huidige subnet geleë is nie (baie vereenvoudig). As u dus 'n poort opstel wat internetverkeer via 'n gevestigde VPN -verbinding kan lei, kan enige netwerk -toestel voordeel trek uit die VPN -tonnel.

My grootste gebruik in my woonstel in San Francisco is 'n VPN -tonnel na my geboorteland, sodat ek Sweedse speelkanale op my mediaspelers en slim -TV kan stroom. Dit is 'n redelik algemene gebruik vir die meeste mense wat 'n VPN -tonnel benodig. Aangesien my mediaspelers en slim -TV's nie deur die VPN -sagteware ondersteun word nie, het ek een uit 'n Raspberry Pi gebou.

U kan een vir minder as $ 40 op Amazon afhaal. Ek beveel egter aan dat u ook 'n omhulsel en 'n ordentlike kragadapter koop. Vir hierdie instruksies benodig u:

  • Framboos Pi 2 of 3
  • 'N Geval na jou smaak
  • 'N Behoorlike kragadapter
  • 'N Netwerkkabel

Stap 1: Kies u VPN -diens

Kies u VPN -diens
Kies u VPN -diens

Die belangrikste ding by die keuse van ‘n VPN -diens is dat dit aan u vereistes voldoen. Vir hierdie gebruik het ek 'n VPN -diens met 'n Sweedse uitgangspunt nodig, dit is die belangrikste, aangesien ek die Sweedse dienste nodig het om daarvan oortuig te wees dat ek in Swede is. Deur die jare het ek verskillende verskaffers gebruik en hieronder is die dinge wat ek in ag moet neem by die keuse van die VPN -verskaffer vir die spesifieke gebruik:

Gratis toets

Ek wil 'n gratis toetsperiode of 'n klein hoeveelheid toetsdata hê om 'n idee te kry van die sagteware of app. Ek wil ook die prestasie en algehele ervaring toets voordat ek daarvoor betaal. Dit is ook lekker om te kyk of my idee werk voordat ek begin betaal.

Privaatheid

As die implementering bedoel is vir privaatheid, is dit baie belangrik wat die privaatheidsbeleid bepaal. Dit is ook belangrik uit watter land die onderneming werk en watter wette u privaatheid beskerm. Die gebruikers wat regtig privaat is, moet kyk na 'n diens wat lui dat geen verkeerslogboeke gestoor word nie en dat anonieme betalings via Bitcoin moontlik is.

Toegestane verkeer

Daar kan beperkings wees op die tipe verkeer wat u mag bestuur. Die ernstiger verskaffers blokkeer gewoonlik eweknie-verkeer. Dit is nie net om regskwessies te vermy nie, maar om die prestasie vir alle gebruikers te behou. Daar is altyd baie goeie verskaffers wat peer-to-peer moontlik maak en steeds 'n hoë kwaliteit diens lewer. Maar as dit nie u belangrikste werwing is nie, raai ek u aan om 'n diens te kies wat nie eweknie moontlik maak nie.

Datakap

Moet nooit 'n diens gebruik wat 'n datakap oor hul betalende gebruikers hou nie. Dit sal op die ergste moontlike tyd opraak, presies soos die data op u telefoon, net voor die snaakse deel van 'n videogreep!

Verlaat lande

Afhangende van die gebruiksgeval, het dit 'n ander belang. Vir 'n gebruiksgeval soos myne, waar ek in 'n spesifieke land moet beland, moet dit natuurlik op die lys wees. Ek moet ook toegelaat word om te kies in watter land ek gaan. Daar is dienste waar u nie die land kan kies nie; bly weg van die lande. U kan beland in 'n land met swak prestasie- of privaatheidswette. Selfs as u nie 'n spesifieke land nodig het nie, moet u steeds 'n diens met 'n paar verskillende lande kies om van te wys om een met goeie prestasie te vind.

Soort sagteware en ondersteuning

Dit is een van die belangrikste redes waarom ek dienste verkies met 'n gratis toets. Daar is soveel verskaffers met slegte sagteware wat foutief, onveilig is of net nie werk nie. Vir 'n Raspberry Pi -implementering het ek 'n verskaffer nodig wat OpenVPN ondersteun.

My keuse

Vir hierdie bouwerk het ek saam met Tunnel Bear gegaan. 'N Gratis toets tot 500 GB word aangebied, sodat ek kan toets of ek eintlik kan stroom voordat ek iets betaal. Hulle is gevestig in Kanada, wat, naas Swede, van die sterkste privaatheidswette ter wêreld is. Geen gegewensdop vir betaalde diens nie en ek mag ook verskeie toestelle tegelyk verbind. Beskerming vir my telefoon, tablet en rekenaar terwyl ek op onveilige wifi reis, word ook gesorteer. Uitgangsknooppunt in Swede word ondersteun, dit word eintlik verskaf via Bahnhof wat bekend is vir sterk privaatheid in Swede. Vir die betaalde planne bied hulle OpenVPN -ondersteuning aan. Hulle doen dit nie vir die gratis toets nie, maar dit was genoeg om dit vanaf my skootrekenaar uit te voer om seker te maak dat die stromingsdienste werk.

Stap 2: Installeer die Raspberry Pi

Vir implementerings soos hierdie gebruik ek die Raspbian Lite -bedryfstelsel. Aangesien ek die GUI glad nie nodig het nie. U kan die nuutste weergawe hier kry.

Ek gebruik Win32DiskImager om die.img lêer op die SD-kaart vir die Raspberry Pi te laai.

Nadat die Raspberry Pi begin het, kyk ek in die DHCP-lys van my routers om die IP-adres te kry en skakel dan via SSH met Putty. Standaard gebruikersnaam en wagwoord is pi/framboos

Nadat ek gekoppel is, gebruik ek die raspi-config-instrument om die basiese instellings te verander.

sudo raspi-config

Die belangrikste dinge wat u in hierdie konfigurasie moet versorg, is:

  • Brei lêerstelsel uit
  • Verander wagwoord

U kan ook die gasheernaam van u Raspberry Pi verander as u wil. My DHCP het baie lang huurkontrakte en ek kan ook 'n spesifieke adres bespreek. As u nie die vermoë het nie, moet u die Raspberry Pi instel om 'n statiese IP-adres te gebruik. Aangesien ander toestelle dit as die standaard gateway sal gebruik, is dit belangrik dat dit dieselfde IP-adres aanhou gebruik. Hier is 'n plasing wat ek geskryf het oor die instelling van 'n statiese IP in Raspbian Jessie.

Dan moet ons alles opgradeer na die nuutste weergawe:

sudo apt-get updates sudo apt-get upgrade sudo apt-get dist-upgrade

Stap 3: Installeer OpenVPN

Installeer OpenVPN
Installeer OpenVPN

Nou moet ons OpenVPN op die Raspberry Pi installeer.

sudo apt-get installeer openvpn

Dan moet ons seker maak dat die diens behoorlik begin.

sudo systemctl aktiveer openvpn

As die installasie klaar is, moet ons die OpenVPN -konfigurasielêers en -sertifikate na die kassie kopieer. U VPN sal dit aan u verskaf. In my geval, met behulp van TunnelBear, vind ek 'n blogpos oor Linux -ondersteuning. Op die bladsy is daar 'n skakel na 'n zip -lêer met alles wat ons nodig het.

Die lêer bevat die sertifikaatlêers en 'n.opvn -konfigurasie lêer vir elke land waarheen u kan tonnel. U benodig al die sertifikaatlêers en die.opvn -konfigurasielêer vir die land van u keuse, in my geval Swede. Pak die nodige lêers uit en die gebruik winscp om die lêers na u Raspberry Pi op te laai. Dieselfde gebruikersnaam/wagwoord as wat vir SSH gebruik is, sal u na/home/pi bring, net die lêers daar laat val.

Dan gaan ons terug na die SSH -terminale en skuif die lêers na die OpenVPN -lêergids. Die eerste opdrag is net om seker te maak dat ons in die /home /pi -lêergids is.

cd /huis /pi

sudo mv */etc/openvpn/

Nou moet ons die lêers verander. Eerstens moet ons die konfigurasielêer van.ovpn na.conf hernoem. Enige lêer wat eindig met.conf in die gids /etc /openvpn, sal outomaties begin wanneer die OpenVPN -demoon begin word. Eerstens moet ons in die gids kom.

cd /etc /openvpn

Dan verander ons die naam van die config -lêer. U kan dit alles noem wat u wil, solank dit eindig op.conf. Ek verkies om lêernaam sonder leë spasies te gebruik; in hierdie geval gaan ek met swe.conf.

sudo mv *.ovpn swe.conf

Dan benodig ons 'n verifikasielêer met die gebruikersnaam en wagwoord wat vir die VPN -tonnel gebruik word. Maak 'n teksredakteur oop en skryf die gebruikersnaam en wagwoord op aparte reëls. Ons sal hierdie lêer auth.txt noem.

sudo nano auth.txt

Die inhoud moet soos hierdie voorbeeld wees:

gebruikersnaam

wagwoord

Gebruik dan CTRL + O om na die lêer te skryf en die CTRL + X om die nano -teksredakteur te verlaat. Ons moet ook die auth.txt -lêer wat ons geloofsbriewe bevat, beskerm.

sudo chmod 600 /etc/openvpn/auth.txt

Dan moet ons die config -lêer wysig om seker te maak dat alle paaie korrek is en 'n verwysing na die nuutgemaakte auth.txt -lêer voeg.

sudo nano swe.conf

Die lyne wat verander moet word, verwys na ander lêers; dit moet absolute paaie wees. In hierdie voorbeeld is dit wat ons soek:

ca CACertificate.crt

cert UserCertificate.crt -sleutel PrivateKey.key

Ons verander dit na absolute paaie soos volg:

ca /etc/openvpn/CACertificate.crt

cert /etc/openvpn/UserCertificate.crt sleutel /etc/openvpn/PrivateKey.key

Aan die einde van die lêer voeg ons 'n verwysing na die auth.txt -lêer, soos volg:

auth-user-pass /etc/openvpn/auth.txt

Weereens gebruik ons CTRL + O om die lêer te stoor en dan CTRL + X om nano te verlaat. Nou kan ons die OpenVPN -demoon weer begin en sien dat die tonnel werk.

sudo diens openvpn herbegin

As u die opdrag ifconfig uitvoer, moet u, behalwe u eth0, ook 'n tun0 -adapter sien, en kyk as die tonnel op is. U kan ook die opdrag met hierdie opdrag uitvoer om u openbare IP na te gaan:

wget https://ipinfo.io/ip -qO -

As u probleme ondervind met die opstel van die tonnel, probeer dan eers om u Raspberry Pi te herlaai en kyk dan na die konfigurasie vir foute.

Stap 4: Stel roete op

Nou moet ons IP -deurstuur moontlik maak. Dit stel die netwerkverkeer in staat om van die een van die netwerkkoppelvlakke in te stroom en die ander uit. In wese skep 'n router.

sudo /bin /su -c "echo -e '\ n#Aktiveer IP -routering / nnet.ipv4.ip_forward = 1'> /etc/sysctl.conf"

As u sudo sysctl -p gebruik, moet dit op die skerm verskyn:

net.ipv4.ip_forward = 1

Nou is routing moontlik en kan verkeer deur die Raspberry Pi, oor die tonnel en op die internet gaan.

Stap 5: Stel Firewall en NAT op

Aangesien ons aan die binnekant verskeie kliënte toegang tot die internet sal hê via een openbare IP -adres, moet ons NAT gebruik. Dit staan vir netwerkadresvertaling en hou by watter kliënt die verkeer versoek het wanneer die inligting oor die tonnel terugkeer. Ons moet ook 'n bietjie beveiliging instel rondom die Raspberry Pi self en die tonnel.

sudo iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

Aktiveer NAT.

sudo iptables -A VOORUIT -i eth0 -o tun0 -j AANVAAR

Laat enige verkeer van eth0 (intern) toe om oor tun0 (tonnel) te gaan.

sudo iptables -A VOORUIT -i tun0 -o eth0 -m toestand -staat VERWANTE, VASGESTELD -j AANVAAR

Laat verkeer vanaf tun0 (tonnel) toe om terug te gaan oor eth0 (intern). Aangesien ons die toestand VERWANTE, GEVESTIGE spesifiseer, sal dit beperk wees tot die verbinding wat vanaf die interne netwerk begin word. Blokkeer eksterne verkeer om 'n nuwe verbinding te begin.

sudo iptables -A INVOER -i lo -j AANVAAR

Laat die Raspberry Pi se eie loopback -verkeer toe.

sudo iptables -A INVOER -i eth0 -p icmp -j AANVAAR

Laat rekenaars op die plaaslike netwerk toe om die Raspberry Pi te ping.

sudo iptables -A INPUT -i eth0 -p tcp --port 22 -j AANVAAR

Laat SSH toe van die interne netwerk.

sudo iptables -A INVOER -m toestand -staat GESTEL, VERWANTE -j AANVAAR

Laat alle verkeer wat deur die Raspberry Pi geïnisieer is, terugkeer. Dit is dieselfde staatshoof as vroeër.

sudo iptables -P VORENTOE DROP

sudo iptables -P INVOER DROP sudo iptables -L

As die verkeer nie by een van die gespesifiseerde reëls pas nie, word dit laat val.

sudo apt-get install iptables-persistent

sudo systemctl aktiveer netfilter-persistent

Eerste reël installeer 'n gemoedsrus wat die aanpasbare reëls wat ons pas geskep het, herhaaldelik maak tussen herlaai. Die tweede stoor die reëls nadat u dit verander het. Hierdie keer is dit genoeg om die eerste een te hardloop. As u die reëls verander, moet u die tweede een stoor. Iptable -reëls is van krag sodra u dit byvoeg as u deurmekaar raak en toegang verloor, net herlaai en die wat nog nie gestoor is nie, sal terugkeer.

Stap 6: Gevolgtrekking

Nou kan u hierdie tonnel vanaf enige toestel of rekenaar op dieselfde netwerk gebruik. Verander net die standaard gateway na die IP-adres van u Raspberry Pi. In my geval gebruik beide my Kodi -mediasentrums (een slaapkamer en een woonkamer) hierdie verbinding, sodat ek my Sweedse speelkanale kan stroom. Daar is natuurlik ook ander dinge waarvoor u dit kan gebruik.

Hou net in gedagte dat daar, afhangende van die VPN -verskaffer wat u gekies het en die snelheid van u internetverbinding, 'n stadige prestasie kan wees.

Laat weet my in die kommentaar as u enige vrae het of wil hê dat ek iets moet verduidelik! Besoek my blog Hackviking vir meer tegniese plasings!

Aanbeveel: