Zašto koristiti VPN za pristup svom domu
Puno je razloga zbog kojih biste željeli pristupiti svojoj kućnoj mreži na daljinu, a najbolji način za to je pomoću VPN poslužitelja. Neki usmjerivači zapravo vam omogućuju postavljanje VPN poslužitelja izravno u usmjerivaču, ali u puno slučajeva morat ćete ga postaviti sami.
Raspberry Pi sjajan je način da se to postigne. Za pokretanje im nije potrebno puno energije, a imaju dovoljno snage za pokretanje VPN poslužitelja. Možete ga postaviti pored svog usmjerivača i u osnovi zaboraviti na njega.
Kada imate pristup svojoj kućnoj mreži na daljinu, do svojih datoteka možete doći s bilo kojeg mjesta. Kućna računala možete pokretati na daljinu. Možete čak koristiti VPN vezu svog doma s ceste. Ovakva postavka omogućuje vašem telefonu, tabletu ili prijenosnom računalu da se ponašaju kao da su kod kuće bilo gdje.
Postavi Pi
Prije nego što započnete s postavljanjem VPN-a, morat ćete postaviti Raspberry Pi. Najbolje je Pi postaviti s kućištem i memorijskom karticom pristojne veličine, 16 GB trebalo bi biti više nego dovoljno. Ako je moguće, povežite svoj Pi s usmjerivačem Ethernet kabelom. Smanjit će sva kašnjenja na mreži.
Instalirajte Raspbian
Najbolji operativni sustav za korištenje na vašem Pi je Raspbian. To je zadani izbor koji je objavila zaklada Raspberry Pi, a temelji se na Debianu, jednoj od najsigurnijih i najstabilnijih dostupnih verzija Linuxa.
Idite na Stranica za preuzimanje Rasbian-a i zgrabite najnoviju verziju. Ovdje možete koristiti verziju Lite, jer zapravo ne trebate grafičku radnu površinu.
Dok se to preuzima, nabavite najnoviju verziju Bakropisac za vaš operativni sustav. Nakon završetka preuzimanja izvadite Raspbian sliku. Zatim otvorite Etcher. Odaberite Raspbian sliku s mjesta na kojem ste je izvukli. Odaberite SD karticu (prvo je umetnite). Na kraju, napišite sliku na karticu.
kako dobiti neaktivno korisničko ime za instagram
Ostavite SD karticu u računalu kada je gotova. Otvorite upravitelj datoteka i potražite karticu. Trebali biste vidjeti nekoliko različitih particija. Potražite particiju za pokretanje. To je onaj u kojem je datoteka kernel.img. Stvorite praznu tekstualnu datoteku na particiji za pokretanje i nazovite je ssh bez nastavka datoteke.
Napokon možete povezati svoj Pi. Obavezno ga priključite na zadnji. Neće vam trebati zaslon, tipkovnica ili miš. Daljinski ćete pristupiti Raspberry Pi preko svoje mreže.
Dajte Pi nekoliko minuta da se postavi. Zatim otvorite web preglednik i prijeđite na zaslon za upravljanje usmjerivačem. Pronađite Raspberry Pi i zabilježite njegovu IP adresu.
Bilo da ste na Windowsima, Linuxu ili Macu, otvorite OpenSSH. Spojite se na Raspberry Pi pomoću SSH-a.
$ ssh [email protected]
Očito je da koristite stvarnu IP adresu Pi. Korisničko ime jestalno pi, a lozinka jekupina.
Postavite OpenVPN
OpenVPN nije baš jednostavno postaviti kao poslužitelj. Dobra vijest je da to trebate učiniti samo jednom. Dakle, prije nego što zakopate, provjerite je li Raspbian potpuno ažuran.
$ sudo apt update $ sudo apt upgrade
Nakon završetka ažuriranja možete instalirati OpenVPN i uslužni program za certifikate koji su vam potrebni.
$ sudo apt install openvpn easy-rsa
Tijelo za ovjere
Da biste provjerili autentičnost svojih uređaja kada se pokušaju povezati s poslužiteljem, morate postaviti tijelo za izdavanje certifikata za izradu ključeva za potpis. Ovi će ključevi osigurati da se samo vaši uređaji mogu povezati s vašom kućnom mrežom.
Prvo stvorite direktorij za svoje certifikate. Premjestite se u taj direktorij.
$ sudo make-cadir /etc/openvpn/certs $ cd /etc/openvpn/certs
Potražite OpenSSL konfiguracijske datoteke. Zatim povežite najnoviju sopenssl.cnf.
$ ls | grep -i openssl $ sudo ln -s openssl-1.0.0.cnf openssl.cnf
U toj istoj mapi certs nalazi se datoteka koja se naziva vars. Otvorite tu datoteku pomoću uređivača teksta. Nano je zadani, ali slobodno instalirajte Vim, ako vam je ugodnije.
NaćiKEY_SIZEprvo varijabla. To je postavljeno na2048prema zadanim postavkama. Promijenite ga u4096.
export KEY_SIZE=4096
Glavni blok s kojim trebate riješiti uspostavlja informacije o vašem tijelu za izdavanje certifikata. Pomaže ako su ove informacije točne, ali sve čega se možete sjetiti je u redu.
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'
Kad imate sve, spremite i izađite.
Taj Easy-RSA paket koji ste prije instalirali sadrži puno skripti koje pomažu u postavljanju svega što vam treba. Samo ih trebate pokrenuti. Započnite dodavanjem datoteke vars kao izvora. To će učitati sve varijable koje ste upravo postavili.
$ sudo source ./vars
Zatim počistite ključeve. Nemate ih, pa se ne brinite zbog poruke koja će vam reći da će vaši ključevi biti izbrisani.
$ sudo ./clean-install
Napokon, izgradite svoje tijelo za izdavanje certifikata. Već ste postavili zadane postavke, tako da možete samo prihvatiti zadane vrijednosti. Ne zaboravite postaviti jaku lozinku i odgovoriti da na zadnja dva pitanja, slijedeći lozinku.
$ sudo ./build-ca
Napravite neke ključeve
Prošli ste sve te probleme kako biste postavili tijelo za izdavanje certifikata kako biste mogli potpisati ključeve. Sad je vrijeme da ih napravite. Započnite s izradom ključa za vaš poslužitelj.
$ sudo ./build-key-server server
Dalje, izgradite Diffie-Hellman PEM. To OpenVPN koristi za osiguranje vaših klijentskih veza s poslužiteljem.
$ sudo openssl dhparam 4096 > /etc/openvpn/dh4096.pem
Posljednji ključ koji vam od sada treba naziva se HMAC ključ. OpenVPN koristi ovaj ključ za potpisivanje svakog pojedinačnog paketa informacija razmijenjenih između klijenta i poslužitelja. Pomaže u sprečavanju određenih vrsta napada na vezu.
$ sudo openvpn --genkey --secret /etc/openvpn/certs/keys/ta.key
Konfiguracija poslužitelja
Imate ključeve. Sljedeći dio u postavljanju OpenVPN-a je sama konfiguracija poslužitelja. Srećom, ovdje nema sve što trebate učiniti. Debian nudi osnovnu konfiguraciju pomoću koje možete započeti. Dakle, započnite s dobivanjem te konfiguracijske datoteke.
$ sudo gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz > /etc/openvpn/server.conf
Ponovno otvorite uređivač teksta/etc/openvpn/server.conf. Prvo što trebate pronaći suda,cert, iključdatoteke. Morate ih postaviti tako da odgovaraju stvarnim lokacijama datoteka koje ste stvorili i koje se sve nalaze/ etc / openvpn / certs / 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
Naćitjpostavku i promijenite je tako da odgovara Diffie-Hellmanu.pemkoje ste stvorili.
dh dh4096.pem
Postavite put i za svoj HMAC ključ.
tls-auth /etc/openvpn/certs/keys/ta.key 0
Naćišifrai pobrinite se da odgovara primjeru u nastavku.
cipher AES-256-CBC
Sljedećih je nekoliko mogućnosti tu, ali oni su komentirani s;. Uklonite točke sa zarezom ispred svake opcije da biste ih omogućili.
push 'redirect-gateway def1 bypass-dhcp' push 'dhcp-option DNS 208.67.222.222' push 'dhcp-option DNS 208.67.220.220'
Potražitekorisnikiskupinamogućnosti. Otkomentirajte ih i promijenitekorisnikotvoritivpn.
user openvpn group nogroup
Napokon, ova zadnja dva retka nisu u zadanoj konfiguraciji. Morat ćete ih dodati na kraju datoteke.
Postavite sažetak provjere autentičnosti kako biste odredili jaču enkripciju za autentifikaciju korisnika.
# Authentication Digest auth SHA512
Zatim ograničite cipere koje OpenVPN može koristiti samo na jače. To pomaže u ograničavanju mogućih napada na slabe šifre.
# 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
To je sve za konfiguraciju. Spremite datoteku i izađite.
Pokrenite poslužitelj
Prije nego što možete pokrenuti poslužitelj, to morate napravitiopenvpnkorisnika kojeg ste naveli.
$ sudo adduser --system --shell /usr/sbin/nologin --no-create-home openvpn
Poseban je korisnik samo za pokretanje OpenVPN-a i neće raditi ništa drugo.
Sada pokrenite poslužitelj.
$ sudo systemctl start openvpn $ sudo systemctl start [email protected]
Provjerite rade li obje
$ sudo systemctl status openvpn*.service
Ako sve izgleda dobro, omogućite ih prilikom pokretanja.
$ sudo systemctl enable openvpn $ sudo systemctl enable [email protected]
Postavljanje klijenta
Vaš je poslužitelj sada postavljen i pokrenut. Dalje, trebate postaviti konfiguraciju klijenta. Ovo je konfiguracija koju ćete koristiti za povezivanje uređaja s poslužiteljem. Povratak naizvjesnamapu i pripremite se za izgradnju ključeva klijenta. Možete odabrati izgradnju zasebnih ključeva za svakog klijenta ili jedan ključ za sve klijente. Za kućnu upotrebu jedan ključ trebao bi biti u redu.
$ cd /etc/openvpn/certs $ sudo source ./vars $ sudo ./build-key client
Postupak je gotovo identičan poslužiteljskom, pa slijedite isti postupak.
Konfiguracija klijenta
Konfiguracija za klijente vrlo je slična onoj za poslužitelj. Opet, imate unaprijed izrađeni predložak na kojem ćete temeljiti svoju konfiguraciju. Trebate ga samo izmijeniti kako bi odgovarao poslužitelju.
Promijenite se uklijentimenik. Zatim raspakirajte uzorak konfiguracije.
$ cd /etc/openvpn/client $ sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/client/client.ovpn
Otvoriklijent.ovpndatoteku s uređivačem teksta. Zatim pronađitedaljinskiopcija. Pod pretpostavkom da već ne koristite VPN, Google pretraživanje Koji je moj IP. Uzmi adresu koja se prikazuje i postavidaljinskiIP adresa na nju. Ostavite broj priključka.
remote 107.150.28.83 1194 #That IP ironically is a VPN
Promijenite certifikate tako da odražavaju one koje ste stvorili, baš kao što ste to učinili sa poslužiteljem.
ca ca.crt cert client.crt key client.key
Pronađite korisničke opcije i raskomentirajte ih. U redu je voditi klijente kaonitko.
user nobody group nogroup
Komentirajtetls-authopcija za HMAC.
tls-auth ta.key 1
Dalje, potražitešifraopciju i provjerite odgovara li poslužitelju.
cipher AES-256-CBC
Zatim samo dodajte sažetak provjere autentičnosti i ograničenja šifre na dnu datoteke.
# 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
Kad sve izgleda ispravno, spremite datoteku i izađite. Koristitikatranda spakirate konfiguraciju i certifikate, tako da ih možete poslati klijentu.
$ 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
Prenesite taj paket klijentu kako god želite. SFTP, FTP i USB pogon izvrsne su mogućnosti.
Prosljeđivanje luka
Da bi bilo što od ovoga moglo funkcionirati, morate konfigurirati usmjerivač da prosljeđuje dolazni VPN promet na Pi. Ako već upotrebljavate VPN, morate biti sigurni da se ne povezujete na isti priključak. Ako jeste, promijenite port na konfiguracijama klijenta i poslužitelja.
Povežite se s web sučeljem usmjerivača tako što ćete u preglednik upisati njegovu IP adresu.
Svaki usmjerivač je drugačiji. Čak i dalje, svi bi trebali imati neki oblik ove funkcionalnosti. Pronađite ga na usmjerivaču.
Postavljanje je u osnovi isto na svim usmjerivačima. Unesite početni i završni port. Trebali bi biti jednaki jedni drugima i onaj koji ste postavili u svojim konfiguracijama. Zatim, za IP adresu, postavite je na IP vaše Raspberry Pi. Spremite promjene.
Povežite se s klijentom
Svaki je klijent drugačiji, tako da ne postoji univerzalno rješenje. Ako imate Windows, trebat će vam Klijent Windows OpenVPN .
Na Androidu možete otvoriti tarball i prenijeti ključeve na telefon. Zatim instalirajte aplikaciju OpenVPN. Otvorite aplikaciju i priključite podatke iz svoje konfiguracijske datoteke. Zatim odaberite svoje tipke.
Na Linuxu morate instalirati OpenVPN slično kao što ste to učinili za poslužitelj.
$ sudo apt install openvpn
Zatim se presvucite u/ etc / openvpni raspakirajte tarball koji ste poslali.
$ cd /etc/openvpn $ sudo tar xJf /path/to/client.tar.xz
Preimenujte datoteku klijenta.
$ sudo mv client.ovpn client.conf
Nemojte još pokretati klijenta. Neće uspjeti. Prvo morate omogućiti prosljeđivanje porta na usmjerivaču.
Zatvaranje misli
Sada biste trebali imati radnu postavku. Vaš će se klijent izravno povezati putem vašeg usmjerivača na Pi. Odatle možete dijeliti i povezivati se putem svoje virtualne mreže, sve dok su svi uređaji povezani s VPN-om. Nema ograničenja, tako da uvijek možete povezati sva svoja računala s Pi VPN-om.