Satura rādītājs:

Raspberry Pi VPN vārteja: 6 soļi
Raspberry Pi VPN vārteja: 6 soļi

Video: Raspberry Pi VPN vārteja: 6 soļi

Video: Raspberry Pi VPN vārteja: 6 soļi
Video: 452 The definitive Guide to Zerotier VPN and why it is "better" than Wireguard (Tutorial) 2024, Novembris
Anonim
Raspberry Pi VPN vārteja
Raspberry Pi VPN vārteja

Atjauninājums 2018-01-07:

  • Atjauninātas trūkstošās lietas un nepieciešamās izmaiņas, kas nepieciešamas pašreizējai Raspian versijai.
  • Izveidoja arī īpašu rokasgrāmatu NordVPN.

Ir daži dažādi VPN lietojumi. Vai nu vēlaties aizsargāt savu privātumu un privātos datus no ziņkārīgo acīm, vai arī jums ir jāiegūst avots no citas valsts. Piegāde no citas valsts var būt ļoti noderīga, lai piekļūtu pakalpojumiem, kas netiek sniegti jūsu valstī. Mūsdienās ir pieejami vairāki VPN pakalpojumi, un lielākā daļa no tiem piedāvā ērti lietojamu programmatūru jūsu datoram un lietotnes planšetdatoram vai tālrunim. Bet ja jums ir citas ierīces, kuras neatbalsta programmatūra, kuru vēlaties izmantot, izmantojot VPN? Pēc tam izveidojiet vārteju, kas nodrošina piekļuvi internetam, izmantojot VPN.

Ja paskatās uz tīkla pamata iestatījumiem, jums ir "noklusējuma vārteja", kas tiek izmantota jebkurai IP adresei, kas neatrodas jūsu pašreizējā apakštīklā (ļoti vienkāršota). Tātad, ja iestatāt vārteju, kas var novirzīt interneta trafiku, izmantojot izveidoto VPN savienojumu, jebkura tīkla iespējota ierīce var izmantot VPN tuneļa priekšrocības.

Mans galvenais izmantošanas gadījums manā Sanfrancisko dzīvoklī ir VPN tunelis uz manu dzimto Zviedriju, lai es varētu straumēt zviedru atskaņošanas kanālus savos multivides atskaņotājos un viedajā televizorā. Tas ir diezgan izplatīts gadījums lielākajai daļai cilvēku, kuriem nepieciešams VPN tunelis. Tā kā VPN programmatūra neatbalsta manus multivides atskaņotājus un viedos televizorus, es to izveidoju no Raspberry Pi.

Jūs varat to iegādāties par cenu, kas mazāka par 40 USD, vietnē Amazon. Tomēr es iesaku jums iegādāties korpusu un pienācīgu strāvas adapteri. Lai iegūtu šo pamācību, jums ir nepieciešams:

  • Raspberry Pi 2 vai 3
  • Gadījums pēc jūsu patikas
  • Labs strāvas adapteris
  • Tīkla kabelis

1. darbība: VPN pakalpojuma izvēle

VPN pakalpojuma izvēle
VPN pakalpojuma izvēle

Izvēloties VPN pakalpojumu, ir svarīgi, lai tas atbilstu jūsu prasībām. Šim lietošanas gadījumam man bija nepieciešams VPN pakalpojums ar Zviedrijas izejas punktu, tas ir vissvarīgākais, jo man ir nepieciešami zviedru pakalpojumi, lai pārliecinātos, ka esmu Zviedrijā. Gadu gaitā esmu izmantojis vairākus dažādus piegādātājus, un zemāk ir lietas, kuras es ņemu vērā, izvēloties VPN piegādātāju konkrētam lietošanas gadījumam:

Bezmaksas tests

Es vēlos bezmaksas testa periodu vai nelielu testa datu daudzumu, lai sajustu programmatūru vai lietotni. Tāpat es vēlos pārbaudīt veiktspēju un vispārējo pieredzi, pirms es par to samaksāju. Ir arī patīkami pārbaudīt, vai mana ideja darbosies, pirms sāku maksāt.

Privātums

Ja īstenošana ir saistīta ar privātuma problēmām, tad ir patiešām svarīgi, ko nosaka privātuma politika. Ir arī svarīgi, no kuras valsts uzņēmums darbojas un kādi likumi aizsargā jūsu privātumu. Patiešām privātuma lietotājiem vajadzētu apskatīt pakalpojumu, kurā teikts, ka netiek glabāti satiksmes žurnāli, un, piemēram, atļaut anonīmus maksājumus, izmantojot Bitcoin.

Atļautā satiksme

Var būt ierobežojumi attiecībā uz to, kāda veida satiksme jums būs atļauta. Nopietnākie piegādātāji parasti bloķē vienādranga satiksmi. Tas ir paredzēts ne tikai, lai izvairītos no juridiskām problēmām, bet arī lai varētu nodrošināt visu lietotāju veiktspēju. Ir ļoti daudz labu piegādātāju, kas ļauj vienādrangam un joprojām sniedz augstas kvalitātes pakalpojumus. Bet, ja tā nav jūsu galvenā atveseļošanās, iesaku izvēlēties pakalpojumu, kas neļauj vienādrangam.

Datu ierobežojums

Nekad neizmantojiet pakalpojumu, kas saglabā datu ierobežojumu saviem maksājošajiem lietotājiem. Tas vienkārši beigsies sliktākajā iespējamajā laikā tieši tāpat kā jūsu tālruņa dati tieši pirms videoklipa smieklīgās daļas!

Izbrauciet no valstīm

Atkarībā no lietošanas gadījuma tam ir atšķirīga nozīme. Lietošanas gadījumam, piemēram, manam, kur man jābeidzas noteiktā valstī, protams, tam ir jābūt sarakstā. Man arī jāatļauj izvēlēties valsti, kurā es izeju. Ir pakalpojumi, kuros nevarat izvēlēties izceļošanas valsti, turieties tālāk no šīs valsts. Jūs varat nonākt valstī ar sliktu sniegumu vai privātuma likumiem. Pat ja jums nav nepieciešama konkrēta valsts, jums joprojām jāizvēlas pakalpojums ar dažām dažādām valstīm, no kurām parādīt, lai varētu atrast labu sniegumu.

Programmatūras veids un atbalsts

Tas ir viens no galvenajiem iemesliem, kāpēc es dodu priekšroku pakalpojumiem ar bezmaksas testu. Ir tik daudz pakalpojumu sniedzēju ar sliktu programmatūru, kas ir kļūdaini, nedroši vai vienkārši nedarbojas. Raspberry Pi ieviešanai man ir nepieciešams pakalpojumu sniedzējs, kas atbalsta OpenVPN.

Mana izlase

Šai būvei es devos ar Tunnel Bear. Tiek piedāvāts bezmaksas tests līdz 500 GB, lai es varētu pārbaudīt, vai es varētu straumēt, pirms es kaut ko samaksāju. Viņi atrodas Kanādā, kur blakus Zviedrijai ir daži no spēcīgākajiem privātuma likumiem pasaulē. Maksas pakalpojumam nav datu ierobežojumu, un man ir atļauts vienlaikus pievienot vairākas ierīces. Tātad tiek sakārtota arī mana tālruņa, planšetdatora un datora aizsardzība, ceļojot ar nedrošu wifi. Izejas mezgls Zviedrijā tiek atbalstīts, tas faktiski tiek nodrošināts, izmantojot Bahnhof, kas Zviedrijā ir pazīstama ar spēcīgu privātumu. Apmaksātajiem plāniem viņi piedāvā OpenVPN atbalstu. Viņi to nedara bezmaksas testam, bet ar to pietika, lai palaistu to no mana klēpjdatora, lai pārliecinātos, ka straumēšanas pakalpojumi darbojas.

2. darbība: instalējiet Raspberry Pi

Šādām ieviešanām es izmantoju Raspbian Lite operētājsistēmu. Tā kā man vispār nav nepieciešama GUI. Jaunāko laidienu varat iegūt šeit.

Es izmantoju Win32DiskImager, lai ielādētu.img failu Raspberry Pi SD kartē.

Kad Raspberry Pi ir sāknējies, es meklēju maršrutētāju DHCP sarakstā, lai iegūtu IP adresi, un pēc tam izveidoju savienojumu ar SSH ar Putty. Standarta lietotājvārds un parole ir pi/aveņu

Kad esmu izveidojis savienojumu, es palaižu raspi-config rīku, lai mainītu pamata iestatījumus.

sudo raspi-config

Vissvarīgākās lietas, par kurām jārūpējas šajā konfigurācijā, ir šādas:

  • Paplašiniet failu sistēmu
  • Mainīt paroli

Ja vēlaties, varat arī mainīt sava Raspberry Pi saimniekdatora nosaukumu. Manam DHCP ir ļoti ilgi nomas līgumi, un es varu arī rezervēt konkrētu adresi. Ja jums nav šīs iespējas, jums ir jākonfigurē Raspberry Pi, lai izmantotu statisku IP adresi. Tā kā citas ierīces to izmantos kā noklusējuma vārteju, ir svarīgi, lai tā turpinātu izmantot to pašu IP adresi. Šeit ir ziņa, kuru es rakstīju par statiskā IP iestatīšanu Raspbian Jessie.

Tad mums viss ir jāatjaunina uz jaunāko versiju:

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

3. darbība: instalējiet OpenVPN

Instalējiet OpenVPN
Instalējiet OpenVPN

Tagad mums ir jāinstalē OpenVPN Raspberry Pi.

sudo apt-get instalēt openvpn

Tad mums jāpārliecinās, vai pakalpojums tiek sākts pareizi.

sudo systemctl iespējot openvpn

Kad instalēšana ir pabeigta, lodziņā ir jākopē OpenVPN konfigurācijas faili un sertifikāti. To jums nodrošinās jūsu VPN pakalpojumu sniedzējs. Manā gadījumā, izmantojot TunnelBear, es tur atradu emuāra ziņu par Linux atbalstu. Šajā lapā ir saite uz zip failu, kurā ir viss nepieciešamais.

Fails satur sertifikātu failus un.opvn konfigurācijas failu katrai valstij, uz kuru varat veikt tuneli. Jums ir nepieciešami visi sertifikātu faili un.opvn konfigurācijas fails izvēlētajai valstij, manā gadījumā Zviedrijai. Izsaiņojiet nepieciešamos failus un izmantojiet WinSp, lai augšupielādētu failus savā Raspberry Pi. Tas pats lietotājvārds/parole, ko izmantoja SSH, jūs novirzīs uz/home/pi, vienkārši nometiet failus.

Pēc tam mēs atgriežamies SSH terminālī un pārvietojam failus uz mapi OpenVPN. Pirmā komanda ir tikai, lai pārliecinātos, ka esam mapē /home /pi.

cd /mājas /pi

sudo mv */etc/openvpn/

Tagad mums ir jāveic dažas izmaiņas failos. Vispirms mums ir jāpārdēvē konfigurācijas fails no.ovpn uz.conf. Jebkurš fails, kas beidzas ar.conf mapē /etc /openvpn, tiks automātiski palaists, kad tiks palaists OpenVPN dēmons. Vispirms mums jāiekļūst šajā direktorijā.

cd /etc /openvpn

Tad mēs mainām konfigurācijas faila nosaukumu. Varat to nosaukt par visu, ko vēlaties, ja vien tas beidzas ar.conf. Es labprātāk izmantoju failu nosaukumus bez tukšām atstarpēm, šajā gadījumā es eju ar swe.conf.

sudo mv *.ovpn swe.conf

Tad mums ir nepieciešams autentifikācijas fails, kas satur VPN tunelim izmantoto lietotājvārdu un paroli. Atveriet teksta redaktoru un ierakstiet lietotājvārdu un paroli atsevišķās rindās. Šo failu sauksim par auth.txt.

sudo nano auth.txt

Saturam vajadzētu būt līdzīgam šim piemēram:

lietotājvārds

parole

Pēc tam izmantojiet taustiņu kombināciju CTRL + O, lai rakstītu failā, un CTRL + X, lai izietu no nano teksta redaktora. Mums ir arī jāaizsargā auth.txt fails, kurā ir mūsu akreditācijas dati.

sudo chmod 600 /etc/openvpn/auth.txt

Tad mums ir jārediģē konfigurācijas fails, lai pārliecinātos, ka visi ceļi ir pareizi, un jāpievieno atsauce uz jaunizveidoto auth.txt failu.

sudo nano swe.conf

Jāmaina rindas, kas attiecas uz citiem failiem, tiem jābūt absolūtiem ceļiem. Šajā piemērā mēs meklējam:

ca CACertificate.crt

cert UserCertificate.crt atslēga PrivateKey.key

Mēs tos mainām uz absolūtiem ceļiem šādi:

ca /etc/openvpn/CACertificate.crt

cert /etc/openvpn/UserCertificate.crt atslēga /etc/openvpn/PrivateKey.key

Pēc tam faila beigās mēs pievienojam atsauci uz failu auth.txt, piemēram:

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

Vēlreiz mēs izmantojam CTRL + O, lai saglabātu failu, un pēc tam CTRL + X, lai izietu no nano. Tagad mēs varam restartēt OpenVPN dēmonu un redzēt, ka tunelis darbojas.

sudo pakalpojums openvpn restart

Ja palaižat komandu ifconfig, papildus eth0 un lo adapteriem vajadzētu redzēt tun0 adapteri, ja tunelis ir uz augšu. Varat arī palaist komandu šī komanda, lai pārbaudītu savu publisko IP:

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

Ja jums rodas problēmas ar tuneļa izveidošanu, vispirms mēģiniet restartēt Raspberry Pi un pēc tam vēlreiz pārbaudiet, vai nav konfigurācijas kļūdu.

4. solis: iestatiet maršrutēšanu

Tagad mums ir jāiespējo IP pārsūtīšana. Tas ļauj tīkla trafikam ieplūst no vienas tīkla saskarnes un no otras. Būtībā maršrutētāja izveidošana.

sudo /bin /su -c "echo -e '\ n#Iespējot IP maršrutēšanu / nnet.ipv4.ip_forward = 1'> /etc/sysctl.conf"

Ja palaižat sudo sysctl -p, ekrānā vajadzētu redzēt šo:

net.ipv4.ip_forward = 1

Tagad maršrutēšana ir iespējota, un satiksme var iet caur Raspberry Pi, pāri tunelim un internetā.

5. darbība: iestatiet ugunsmūri un NAT

Tā kā mums būs vairāki klienti, kas piekļūs internetam, izmantojot vienu publisku IP adresi, mums jāizmanto NAT. Tas nozīmē tīkla adrešu tulkošanu un sekos līdzi tam, kurš klients pieprasīja kādu datplūsmu, kad informācija atgriežas pa tuneli. Mums ir jāiestata arī drošība ap Raspberry Pi it un tuneli.

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

NAT iespējošana.

sudo iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT

Ļaujot jebkurai satiksmei no eth0 (iekšējā) pārsniegt tun0 (tuneli).

sudo iptables -A FORWARD -i tun0 -o eth0 -m state --valsts SAISTĪTA, IESTATĪTA -j ACCEPT

Ļaujot satiksmei no tun0 (tunelis) atgriezties virs eth0 (iekšējā). Tā kā mēs norādām stāvokli SAISTĪTS, IZVEIDOTS, tas aprobežosies ar savienojumu, kas uzsākts no iekšējā tīkla. Bloķējot ārējo trafiku, mēģinot izveidot jaunu savienojumu.

sudo iptables -A INPUT -i lo -j ACCEPT

Ļaujot Raspberry Pi paša atgriezeniskajai satiksmei.

sudo iptables -A INPUT -i eth0 -p icmp -j ACCEPT

Ļaujot datoriem vietējā tīklā pingēt Raspberry Pi.

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

SSH atļaušana no iekšējā tīkla.

sudo iptables -A INPUT -m stāvoklis -valsts, kas izveidota, saistīta -j ACCEPT

Ļaujot atgriezties visai Raspberry Pi uzsāktajai satiksmei. Tas ir tāds pats valsts princips kā iepriekš.

sudo iptables -P FORWARD DROP

sudo iptables -P INPUT DROP sudo iptables -L

Ja satiksme neatbilst nevienam no norādītajiem noteikumiem, tā tiks pārtraukta.

sudo apt-get install iptables-persistent

sudo systemctl iespējo pastāvīgu netfilter

Pirmā rinda instalē koda mieru, kas padara tikko izveidotos iptable noteikumus pastāvīgus starp pārstartēšanu. Otrais saglabā noteikumus pēc to mainīšanas. Šoreiz pietiek, lai palaistu pirmo. Ja maināt noteikumus, palaidiet otro, lai saglabātu. Iptable noteikumi stājas spēkā, tiklīdz tos pievienojat, ja sajaucat un zaudējat piekļuvi, vienkārši atsāknējiet, un tie, kas vēl nav saglabāti, tiks atjaunoti.

6. darbība. Secinājums

Tagad jūs varat izmantot šo tuneli no jebkuras ierīces vai datora tajā pašā tīklā. Vienkārši nomainiet noklusējuma vārteju uz jebkuru Raspberry Pi IP adresi. Manā gadījumā abi mani Kodi mediju centri (viena guļamistaba un viena dzīvojamā istaba) izmanto šo savienojumu, lai es varētu straumēt savus zviedru atskaņošanas kanālus. Protams, ir arī citas lietas, kurām varat to izmantot.

Vienkārši paturiet prātā, ka atkarībā no jūsu izvēlētā VPN piegādātāja un interneta savienojuma ātruma veiktspēja var būt lēna.

Ja jums ir kādi jautājumi vai vēlaties, lai es kaut ko paskaidroju, paziņojiet man komentāros! Lai iegūtu vairāk tehnoloģiju ziņu, lūdzu, apmeklējiet manu emuāru Hackviking!

Ieteicams: