Mündəricat:

Raspberry Pi VPN Gateway: 6 addım
Raspberry Pi VPN Gateway: 6 addım

Video: Raspberry Pi VPN Gateway: 6 addım

Video: Raspberry Pi VPN Gateway: 6 addım
Video: Build your OWN WireGuard VPN! Here's how 2024, Noyabr
Anonim
Raspberry Pi VPN Gateway
Raspberry Pi VPN Gateway

Yeniləmə 2018-01-07:

  • Yenilənmiş şeylər və mövcud Raspian versiyası üçün lazım olan dəyişikliklər edildi.
  • NordVPN üçün xüsusi bir bələdçi də yaratdı.

VPN üçün bir neçə fərqli istifadə var. Ya məxfiliyinizi və şəxsi məlumatlarınızı maraqsız gözlərdən qorumaq istəyirsiniz, ya da başqa ölkədən qaynaq almalısınız. Ölkənizdə olmayan xidmətlərə daxil olmaq üçün başqa ölkədən qaynaq almaq çox faydalı ola bilər. Bu gün orada bir çox VPN xidmətləri var və əksəriyyəti kompüteriniz üçün proqram və tablet və ya telefonunuz üçün tətbiqləri asan təklif edir. Ancaq VPN -dən keçmək istədiyiniz proqram tərəfindən dəstəklənməyən digər cihazlarınız varsa? Sonra VPN üzərindən İnternetə çıxışı təmin edən bir ağ geçidi qurun.

Əsas şəbəkə quruluşunuza baxsanız, mövcud alt şəbəkənizdə olmayan (çox sadələşdirilmiş) hər hansı bir ip ünvanı üçün istifadə olunan "standart bir ağ geçidi" var. Beləliklə, müəyyən bir VPN bağlantısı üzərindən internet trafikini yönləndirə biləcək bir ağ geçidi qurarsanız, hər hansı bir şəbəkə aktiv cihazı VPN tunelindən istifadə edə bilər.

San Francisco mənzilimdəki əsas istifadə vəziyyətim, doğma İsveç üçün bir VPN tunelidir, buna görə media oyunçularımda və ağıllı TV -də İsveç oyun kanallarını yayımlaya bilərəm. Bu VPN tunelinə ehtiyacı olan insanların çoxu üçün olduqca yaygın bir istifadə vəziyyətidir. Media pleyerlərim və ağıllı TV -lərim VPN proqramı tərəfindən dəstəklənmədiyindən Raspberry Pi -dən birini qurdum.

Amazonda 40 dollardan aşağı qiymətə ala bilərsiniz. Bununla birlikdə bir korpus və layiqli bir güc adapteri almağı məsləhət görürəm. Bu təlimat üçün sizə lazımdır:

  • Raspberry Pi 2 və ya 3
  • Bəyəndiyiniz bir hal
  • Yaxşı bir güc adapteri
  • Şəbəkə kabeli

Addım 1: VPN Xidmətinizi Seçin

VPN Xidmətinizi Seçin
VPN Xidmətinizi Seçin

Bir VPN xidməti seçərkən vacib olan tələblərinizə cavab verməsidir. Bu istifadə vəziyyətində, İsveç çıxış nöqtəsi olan bir VPN xidmətinə ehtiyacım var idi, çünki İsveç xidmətlərində olduğumdan əmin olmaq üçün İsveç xidmətlərinə ehtiyacım var. İllər ərzində bir neçə fərqli tədarükçüdən istifadə etdim və aşağıda xüsusi istifadə üçün VPN tədarükçüsü seçərkən əsas götürdüyüm şeylər var:

Pulsuz test

Proqram və ya tətbiqetməni hiss etmək üçün pulsuz bir sınaq müddəti və ya az miqdarda test məlumatı istəyirəm. Həm də ödəməzdən əvvəl performansı və ümumi təcrübəni sınamaq istəyirəm. Ödəməyə başlamazdan əvvəl fikrimin işləyəcəyini yoxlamaq da xoşdur.

Məxfilik

Tətbiq məxfilik narahatlıqları üçündürsə, məxfilik siyasətinin nələri ifadə etməsi həqiqətən vacibdir. Şirkətin hansı ölkədən fəaliyyət göstərməsi və məxfiliyinizi hansı qanunların qoruduğu da vacibdir. Həqiqətən də məxfiliklə əlaqəli istifadəçilər heç bir trafik qeydinin saxlanılmadığını bildirən bir xidmətə baxmalı və məsələn Bitcoin vasitəsilə anonim ödənişlərə icazə verməlidirlər.

İcazə verilən trafik

Hansı növ trafikə icazə veriləcəyinizə dair məhdudiyyətlər ola bilər. Daha ciddi tədarükçülər adətən həmyaşıdları arasında trafikə mane olurlar. Bu, yalnız hüquqi problemlərin qarşısını almaq üçün deyil, bütün istifadəçilər üçün performansı qoruya bilmək üçündür. Həmyaşıdlara imkan verən və hələ də yüksək keyfiyyətli bir xidmət təqdim edən bir çox yaxşı təchizatçı var. Ancaq bu sizin əsas məqsədiniz deyilsə, həmyaşıdlara icazə verməyən bir xidmət seçməyi məsləhət görürəm.

Məlumat qapağı

Heç vaxt ödənişli istifadəçiləri üzərində məlumat məhdudiyyəti saxlayan bir xidmətdən istifadə etməyin. Bu, bir video klipdəki məzəli hissədən dərhal əvvəl telefonunuzdakı məlumatlar kimi mümkün olan ən pis vaxtda bitəcək!

Ölkələrdən çıxın

İstifadə vəziyyətindən asılı olaraq bunun fərqli əhəmiyyəti var. Xüsusi bir ölkəyə getməli olduğum mənim kimi bir istifadə nümunəsi üçün, əlbəttə ki, siyahıda olmalıdır. Hansı ölkədən çıxacağımı seçməyimə də icazə verilməlidir. Çıxış ölkəsini seçə bilmədiyiniz xidmətlər var, onlardan uzaq durun. Pis performans və ya məxfilik qanunları olan bir ölkədə ola bilərsiniz. Xüsusi bir ölkəyə ehtiyacınız olmasa belə, yaxşı performansa malik olanı tapmaq üçün bir neçə fərqli ölkədən bir xidmət seçməlisiniz.

Proqram və dəstək növü

Pulsuz testlə xidmətlərə üstünlük verməyimin əsas səbəblərindən biri budur. Arızalı, etibarsız və ya işləməyən pis proqram təminatçıları çoxdur. Raspberry Pi tətbiqi üçün OpenVPN dəstəkləyən bir provayderə ehtiyacım var.

Mənim seçimim

Bu quruluş üçün Tunnel Bear ilə birlikdə getdim. 500 GB -a qədər pulsuz bir test təklif olunur, buna görə bir şey ödəmədən əvvəl axın edə biləcəyimi sınaya bilərəm. İsveçin yanında dünyanın ən güclü məxfilik qanunlarına sahib olan Kanadada yerləşirlər. Ödənişli xidmətdə heç bir məlumat məhdudiyyəti yoxdur və eyni zamanda bir neçə cihazın bağlanmasına da icazə verirəm. Beləliklə, təhlükəsiz olmayan wifi ilə səyahət edərkən telefonum, planşetim və kompüterim üçün qorunma da sıralanır. İsveçdəki çıxış qovşağı dəstəklənir, əslində İsveçdə güclü gizlilik ilə tanınan Bahnhof vasitəsilə təmin edilir. Ödənişli planlar üçün OpenVPN dəstəyi təklif edirlər. Pulsuz test etmirlər, amma axın xidmətlərinin işlədiyinə əmin olmaq üçün bunu dizüstü kompüterimdən idarə etmək kifayət idi.

Addım 2: Raspberry Pi qurun

Bu kimi tətbiqlər üçün Raspbian Lite əməliyyat sistemindən istifadə edirəm. GUI -yə ümumiyyətlə ehtiyacım olmadığı üçün. Ən son versiyanı burada əldə edə bilərsiniz.

Raspberry Pi üçün.img faylını SD karta yükləmək üçün Win32DiskImager istifadə edirəm.

Raspberry Pi açıldıqdan sonra IP ünvanını almaq üçün routerlərim DHCP siyahısına baxıram və sonra Putty ilə SSH üzərindən əlaqə qururam. Standart istifadəçi adı və şifrə pi/moruqdur

Bağlandıqdan sonra əsas parametrləri dəyişdirmək üçün raspi-config alətini işə salıram.

sudo raspi-config

Bu konfiqurasiyada diqqət etməli olduğunuz ən vacib şeylər:

  • Fayl sistemini genişləndirin
  • Şifrəni dəyişdirin

İstəsəniz, Raspberry Pi -nin ana adını da dəyişə bilərsiniz. DHCP -nin çox uzun kirayəsi var və müəyyən bir ünvanı da rezerv edə bilərəm. Əgər bu qabiliyyətə malik deyilsinizsə, Raspberry Pi-ni statik bir IP ünvanı istifadə etmək üçün konfiqurasiya etməlisiniz. Digər qurğular bunu standart ağ geçidi olaraq istifadə edəcəyi üçün eyni IP ünvanını istifadə etməyə davam etməsi vacibdir. Budur Raspbian Jessie -də statik bir IP qurmaq haqqında yazdığım bir yazı.

Sonra hər şeyi ən son versiyaya yüksəltməliyik:

sudo apt-get yenilikləriudo apt-get upgrade sudo apt-get dist-upgrade

Addım 3: OpenVPN quraşdırın

OpenVPN quraşdırın
OpenVPN quraşdırın

İndi Raspberry Pi -də OpenVPN qurmalıyıq.

sudo apt-get openvpn quraşdırın

Sonra xidmətin düzgün başladığından əmin olmalıyıq.

sudo systemctl openvpn imkan verir

Quraşdırma başa çatdıqda OpenVPN konfiqurasiya sənədlərini və sertifikatlarını qutuya kopyalamalıyıq. Bu sizə VPN provayderiniz tərəfindən veriləcək. Mənim vəziyyətimdə TunnelBear istifadə edərək orada Linux Dəstəyi haqqında bir blog yazısı tapdım. Bu səhifədə ehtiyacımız olan hər şeyi ehtiva edən zip faylına bir keçid var.

Fayl, tunel edə biləcəyiniz hər bir ölkə üçün sertifikat sənədlərini və.opvn konfiqurasiya faylını ehtiva edir. Seçdiyiniz ölkə üçün bütün sertifikat sənədlərinə və.opvn konfiqurasiya sənədinə ehtiyacınız var, mənim üçün İsveç. Lazım olan faylları açın və faylları Raspberry Pi -yə yükləmək üçün winscp istifadə edin. SSH üçün istifadə olunan eyni istifadəçi adı/şifrə sizi/home/pi -yə gətirəcək, sadəcə faylları ora atın.

Sonra SSH terminalına qayıdırıq və faylları OpenVPN qovluğuna köçürürük. İlk əmr, /home /pi qovluğunda olduğumuzdan əmin olmaqdır.

cd /ev /pi

sudo mv */etc/openvpn/

İndi fayllarda bəzi dəyişikliklər etməliyik. Əvvəlcə konfiqurasiya faylını.ovpn -dən.conf olaraq dəyişdirməliyik. OpenVPN daemon başladıqda /etc /openvpn qovluğunda.conf ilə bitən hər hansı bir fayl avtomatik olaraq başlayacaq. Əvvəlcə bu qovluğa daxil olmalıyıq.

cd /etc /openvpn

Sonra konfiqurasiya faylının adını dəyişirik.. Conf ilə bitdiyi müddətcə istədiyiniz hər şeyi adlandıra bilərsiniz. Boşluq olmadan fayl adlarından istifadə etməyi üstün tuturam, bu halda swe.conf ilə gedirəm.

sudo mv *.ovpn swe.conf

Sonra VPN tuneli üçün istifadə olunan istifadəçi adı və şifrəni ehtiva edən bir doğrulama sənədinə ehtiyacımız var. Mətn redaktoru açın və istifadəçi adını və şifrəni ayrı sətirlərə yazın. Bu faylı auth.txt adlandıracağıq.

sudo nano auth.txt

Məzmun bu nümunə kimi olmalıdır:

istifadəçi adı

parol

Sonra fayla yazmaq üçün CTRL + O və nano mətn redaktorundan çıxmaq üçün CTRL + X istifadə edin. Etimadnaməmiz olan auth.txt faylını da qorumalıyıq.

sudo chmod 600 /etc/openvpn/auth.txt

Sonra bütün yolların düzgün olduğundan əmin olmaq üçün konfiqurasiya faylını redaktə etməli və yeni yaradılmış auth.txt faylına istinad əlavə etməliyik.

sudo nano swe.conf

Dəyişdirilməsi lazım olan xətlər digər fayllara aiddir, mütləq yollar olmalıdır. Bu nümunədə axtardığımız budur:

ca CACertificate.crt

Sertifikat UserCertificate.crt PrivateKey.key

Onları mütləq yollara dəyişdiririk:

ca /etc/openvpn/CACertificate.crt

cert /etc/openvpn/UserCertificate.crt açarı /etc/openvpn/PrivateKey.key

Sonra faylın sonunda auth.txt faylına bir istinad əlavə edirik:

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

Bir daha faylı saxlamaq üçün CTRL + O və nanodan çıxmaq üçün CTRL + X istifadə edirik. İndi OpenVPN demonunu yenidən başladıb tunelin işlədiyini görə bilərik.

sudo xidməti openvpn yenidən başladın

İfconfig əmrini yerinə yetirirsinizsə, eth0 -a əlavə olaraq tun0 adapteri və tunel açılıbsa lo adapterlərinə baxmalısınız. Ümumi IP -ni yoxlamaq üçün bu əmri də işlədə bilərsiniz:

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

Tuneli qaldırmaqda probleminiz varsa, əvvəlcə Raspberry Pi -ni yenidən başladın və sonra konfiqurasiyanı iki dəfə yoxlayın.

Addım 4: Marşrutlaşdırma qurun

İndi IP yönləndirməsini aktivləşdirməliyik. Şəbəkə trafikinin şəbəkə interfeyslərindən birindən digərinə axmasına imkan verir. Əsasən bir yönlendirici yaratmaq.

sudo /bin /su -c "echo -e '\ n#IP yönləndirməsini aktiv edin / nnet.ipv4.ip_forward = 1'> /etc/sysctl.conf"

Sudo sysctl -p çalıştırırsanız, bunun ekranda çap olunduğunu görməlisiniz:

net.ipv4.ip_forward = 1

İndi marşrutlaşdırma aktivdir və trafik Raspberry Pi -dən tunelin üstündən keçə və internetdən çıxa bilər.

Addım 5: Firewall və NAT qurun

İçəridə bir ümumi IP ünvanı üzərindən internetə daxil olan bir neçə müştərimiz olacağından NAT -dan istifadə etməliyik. Şəbəkə ünvanlarının tərcüməsi deməkdir və məlumat tunel üzərində qayıdanda hansı müştərinin hansı trafik tələb etdiyini izləyəcək. Raspberry Pi və tunel ətrafında bir az təhlükəsizlik qurmalıyıq.

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

NAT aktivləşdirir.

sudo iptables -A İLƏ -i eth0 -o tun0 -j QƏBUL ET

Eth0 (daxili) -dən hər hansı bir trafikin tun0 (tunel) üzərindən keçməsinə icazə verilməsi.

sudo iptables -A İLƏ -i tun0 -o eth0 -m dövlət -dövlət İLƏ BAĞLI, KURULUB -j QƏBUL EDİR

Tun0 -dan (tunel) trafikin eth0 (daxili) üzərindən geri dönməsinə icazə verilməsi. ƏLAQƏLİ, ESTABLISHED vəziyyətini göstərdiyimiz üçün daxili şəbəkədən başlayan əlaqə ilə məhdudlaşacaq. Yeni bir əlaqə başlatmağa çalışan xarici trafikin bloklanması.

sudo iptables -A INPUT -i lo -j QƏBUL ET

Raspberry Pi -nin öz geri dönmə trafikinə icazə verilməsi.

sudo iptables -A INPUT -i eth0 -p icmp -j QƏBUL ET

Yerli şəbəkədəki kompüterlərin Raspberry Pi -yə qoşulmasına icazə verilməsi.

sudo iptables -A INPUT -i eth0 -p tcp --dport 22 -j QƏBUL ET

Daxili şəbəkədən SSH -ə icazə verilməsi.

sudo iptables -A GİRİŞ -m vəziyyəti -dövlət ESTABLISHED, RELATED -j ACCEPT

Raspberry Pi tərəfindən başladılan bütün trafikin geri qayıtmasına icazə verilməsi. Bu, əvvəlki dövlətin rəhbəridir.

sudo iptables -P İLƏ DAMLA

sudo iptables -P INPUT DROP sudo iptables -L

Trafik göstərilən qaydalardan heç birinə uyğun gəlmirsə, ləğv ediləcək.

sudo apt-get iptables-inadkar yükləyin

sudo systemctl netfilter-davamlılığını təmin edir

Birinci sətir, yenidən başladıqdan sonra yaratdığımız iptable qaydalarını davamlı hala gətirən bir kod sülhü qurur. İkincisi, qaydaları dəyişdirdikdən sonra onları saxlayır. Bu dəfə birincisini işə salmaq kifayətdir. Qaydaları dəyişdirsəniz, saxlamaq üçün ikincisini işlədin. Çaşqınlıq yaratsanız və girişi itirsəniz, yenidən başladın və əvvəllər qeyd olunmamış olanlar geri dönəcək.

Addım 6: Nəticə

İndi bu tuneldən eyni şəbəkədəki hər hansı bir cihazdan və ya kompüterdən istifadə edə bilərsiniz. Varsayılan ağ geçidini, Raspberry Pi-nin olduğu hər hansı bir IP ünvanına dəyişdirin. Mənim vəziyyətimdə, həm Kodi media mərkəzlərim (bir yataq otağı, həm də bir qonaq otağı) bu bağlantıdan istifadə edir, buna görə də İsveç oyun kanallarımı yayımlaya bilərəm. Əlbəttə ki, bundan istifadə edə biləcəyiniz başqa şeylər də var.

Seçdiyiniz VPN təchizatçısından və internet bağlantınızın sürətindən asılı olaraq yavaş performans ola biləcəyini unutmayın.

Hər hansı bir sualınız varsa və ya bir şeyi aydınlaşdırmağımı istəyirsinizsə şərhlərdə mənə bildirin! Daha çox texniki yazı üçün, Hackviking blogumu ziyarət edin!

Tövsiyə: