Anonim

Zašto koristiti VPN za pristup svom domu

Brze veze

  • Zašto koristiti VPN za pristup svom domu
  • Postavi Pi
    • Instalirajte Raspbian
  • Postavljanje OpenVPN-a
    • Tijelo za certifikate
    • Napravite nekoliko ključeva
    • Konfiguracija poslužitelja
    • Pokrenite poslužitelj
  • Postavljanje klijenta
    • Konfiguracija klijenta
  • Prosljeđivanje luka
  • Povežite se s klijentom
  • Završne misli

Postoji mnogo razloga zbog kojih želite pristupiti svojoj matičnoj mreži na daljinu, a najbolji način je to s VPN poslužiteljem. Neki usmjerivači zapravo vam omogućuju postavljanje VPN poslužitelja izravno unutar usmjerivača, ali u puno slučajeva trebat ćete ga postaviti sami.

Raspberry Pi je sjajan način da se to postigne. Za pokretanje im nije potrebno puno energije i imaju dovoljno snage za pokretanje VPN poslužitelja. Možete ga postaviti pokraj rutera i u osnovi ga zaboraviti.

Ako imate pristup svojoj kućnoj mreži na daljinu, možete doći do svojih datoteka s bilo kojeg mjesta. Kućna računala možete pokretati na daljinu. Možete čak koristiti VPN vezu vašeg doma s ceste. Ovakva postavka omogućuje vašem telefonu, tabletu ili prijenosnom računalu da djeluje kao da je kod kuće odnekud.

Postavi Pi

Prije nego što započnete postavljanje VPN-a, morat ćete postaviti Raspberry Pi. Najbolje je Pi postaviti kućište s memorijskom karticom i pristojnim veličinama, 16GB bi trebalo biti više nego dovoljno. Ako je moguće, spojite svoj Pi na usmjerivač pomoću Ethernet kabela. To će umanjiti mrežna kašnjenja.

Instalirajte Raspbian

Najbolji operativni sustav koji se koristi na vašem Pi-u je Raspbian. To je zadani izbor koji je izdvojila fonda Raspberry Pi, a temelji se na Debianu, jednoj od najsigurnijih i najstabilnijih dostupnih verzija Linuxa.

Idite na stranicu za preuzimanje softvera Rasbian 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 Etchera za vaš operativni sustav. Nakon dovršetka preuzimanja, izvadite raspbijsku sliku. Zatim otvorite Etcher. Odaberite Raspbian sliku odakle ste je izvadili. Odaberite SD karticu (prvo je umetnite). Na kraju, upišite sliku na karticu.

Kad završite, ostavite SD karticu u računalu. Otvorite upravitelj datoteka i potražite karticu. Trebali biste vidjeti nekoliko različitih particija. Potražite particiju "boot". Ona je u kojoj je datoteka "kernel.img". Napravite praznu tekstualnu datoteku na particiji "boot" i nazovite je "ssh" bez proširenja datoteke.

Konačno možete povezati svoj Pi. Obavezno ga priključite zadnji. Neće vam trebati zaslon, tipkovnica ili miš. Daljinski ćete pristupiti Raspberry Pi putem vaše mreže.

Dajte Pi nekoliko minuta da se postavi. Zatim otvorite web preglednik i pomaknite se do zaslona za upravljanje rutera. Pronađite Raspberry Pi i zabilježite njegovu IP adresu.

Bez obzira jeste li na Windows-u, Linuxu ili Mac-u, otvorite OpenSSH. Spojite se na Raspberry Pi s SSH.

$ ssh

Očito koristite stvarnu IP adresu Pi. Korisničko ime je uvijek pi, a lozinka je malina.

Postavljanje OpenVPN-a

OpenVPN nije baš jednostavno postaviti kao poslužitelj. Dobra vijest je da to trebate učiniti samo jednom. Prije nego što kopate, provjerite je li Raspbian ažuriran.

$ sudo apt update nadogradnja $ sudo apt

Nakon dovršetka ažuriranja možete instalirati OpenVPN i uslužni program certifikata koji su vam potrebni.

$ sudo apt instalirati openvpn easy-rsa

Tijelo za certifikate

Da biste autentificirali svoje uređaje kada se pokušavaju povezati s poslužiteljem, morate postaviti ovlaštenje za stvaranje certifikata za izradu ključeva za prijavu. Ove tipke osigurat će da se samo vaši uređaji mogu povezati s kućnom mrežom.

Prvo napravite direktorij za svoje certifikate. Pomaknite se u taj direktorij.

$ sudo make-cadir / etc / openvpn / certs $ cd / etc / openvpn / certs

Pogledajte oko konfiguracijskih datoteka OpenSSL-a. Zatim povežite najnoviju verziju s openssl.cnf.

$ ls | grep -i openssl $ sudo ln -s openssl-1.0.0.cnf openssl.cnf

U toj istoj mapi "certs" nalazi se datoteka zvana "vars". Otvorite datoteku zajedno s uređivačem teksta. Nano je zadani, ali slobodno instalirajte Vim, ako vam je ugodnije.

Prvo pronađite varijablu KEY_SIZE. Prema zadanim postavkama postavljena je na 2048. godinu. Promijenite ga na 4096.

izvoz KEY_SIZE = 4096

Glavni blok s kojim se trebate baviti uspostavlja podatke o vašem tijelu certifikata. Pomaže ako su ove informacije točne, ali sve što se možete sjetiti je u redu.

izvoz KEY_COUNTRY = "US" izvoz KEY_PROVINCE = "CA" izvoz KEY_CITY = "SanFrancisco" izvoz KEY_ORG = "Fort-Funston" izvoz KEY_EMAIL = "" izvoz KEY_OU = "MyOrganizationalUnit" izvoz KEY_NAME = "PočetnaVPN

Kad imate sve, spremite i izađite.

Taj Easy-RSA paket koji ste instalirali prije sadrži puno skripti koje pomažu u postavljanju svega što vam je potrebno. Samo ih trebate pokrenuti. Započnite dodavanjem datoteke "vars" kao izvora. To će učitati sve varijable koje ste upravo postavili.

$ sudo izvor ./vars

Zatim oč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

Na kraju, izgradite ovlaštenje certifikata. Već ste postavili zadane vrijednosti, tako da možete jednostavno prihvatiti zadane postavke koje predstavlja. Ne zaboravite postaviti jaku lozinku i odgovorite "da" na posljednja dva pitanja, prateći lozinku.

$ sudo ./build-ca

Napravite nekoliko ključeva

Prošli ste sve probleme oko postavljanja ovlaštenja za certifikate kako biste mogli potpisati ključeve. Sada je vrijeme da ih napravimo. Započnite s izgradnjom ključa za vaš poslužitelj.

$ sudo ./build-key-server poslužitelja

Zatim izgradite Diffie-Hellman PEM. To je ono što OpenVPN koristi za osiguranje veza vašeg klijenta s poslužiteljem.

$ sudo openssl dhparam 4096> /etc/openvpn/dh4096.pem

Posljednji ključ koji vam je sada potreban zove se HMAC tipka. OpenVPN koristi ovu tipku za potpisivanje svakog pojedinačnog paketa informacija razmjenjenih između klijenta i poslužitelja. Pomaže u sprečavanju određenih 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 toliko što trebate učiniti. Debian pruža baznu konfiguraciju koju možete koristiti za početak. 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 upotrijebite uređivač teksta za otvaranje /etc/openvpn/server.conf. Prve stvari koje trebate pronaći su datoteke ca, cert i ključne datoteke. Morate ih postaviti tako da odgovaraju stvarnim lokacijama datoteka koje ste stvorili, a koje se nalaze u / etc / openvpn / certs / key.

ca /etc/openvpn/certs/keys/ca.crt cert /etc/openvpn/certs/keys/server.crt tipka /etc/openvpn/certs/keys/server.key # ovu datoteku treba čuvati u tajnosti

Pronađite dh postavku i promijenite je da odgovara Diffie-Hellman .pem koji ste stvorili.

dh dh4096.pem

Postavite stazu i za svoj HMAC ključ.

tls-auth /etc/openvpn/certs/keys/ta.key 0

Pronađite šifru i provjerite odgovara li donjem primjeru.

šifra AES-256-CBC

Sljedećih nekoliko opcija postoje, ali su komentirane s;. Uklonite točke s zarezima ispred svake mogućnosti da biste ih omogućili.

push "preusmjeravanje-gateway def1 bypass-dhcp" push "dhcp-opcija DNS 208.67.222.222" push "dhcp-opcija DNS 208.67.220.220"

Potražite korisničke i grupne mogućnosti. Odjavite ih i promijenite korisnika u "openvpn."

korisnik openvpn grupa nogroup

Konačno, ta posljednja dva retka nisu u zadanoj konfiguraciji. Morat ćete ih dodati na kraju datoteke.

Postavite proveru autentičnosti da odredite jače enkripcije za provjeru autentičnosti korisnika.

# Authentication Digest auth SHA512

Zatim ograničite cipere koje OpenVPN može koristiti samo na jače. To pomaže ograničiti moguće napade na slabe šifre.

# Ograničite šifre 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-SA-CAMELLIA-256-CBC-SHA: TLS-DHE-RSA-SA-AES-128-CBC-SHA: TLS-DHE-RSA-SA-CAMELLIA-128-CBC- SHA

To je sve za konfiguraciju. Spremite datoteku i izađite.

Pokrenite poslužitelj

Prije nego što pokrenete poslužitelj, morate napraviti tog korisnika openvpn koji ste naveli.

$ sudo adduser - sustav - školjka / 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 početak

Provjerite jesu li oba pokrenuta

$ sudo systemctl status openvpn * .service

Ako sve izgleda dobro, omogućite ih pri pokretanju.

$ sudo systemctl omogućuju openvpn $ sudo systemctl omogućuju

Postavljanje klijenta

Vaš poslužitelj je sada postavljen i radi. Zatim trebate postaviti konfiguraciju vašeg klijenta. Ovo je konfiguracija koju ćete koristiti za povezivanje uređaja s poslužiteljem. Vratite se u mapu certs i pripremite se za izgradnju klijentskog ključa. Možete odabrati zasebne ključeve za svakog klijenta ili jedan ključ za sve klijente. Za kućnu upotrebu jedan bi ključ trebao biti u redu.

$ cd / etc / openvpn / certs $ sudo izvor ./vars $ sudo ./build-key client

Proces je gotovo identičan onome na poslužitelju, pa slijedite isti postupak.

Konfiguracija klijenta

Konfiguracija za klijente vrlo je slična onoj za poslužitelj. Opet imate pripremljeni predložak na kojem možete temeljiti svoju konfiguraciju. Morate je modificirati samo tako da odgovara poslužitelju.

Promijenite u imeniku klijenta. Zatim raspakirajte konfiguraciju uzorka.

$ cd / etc / openvpn / client $ sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/client/client.ovpn

Otvorite datoteku client.ovpn s uređivačem teksta. Zatim pronađite daljinsku opciju. Pod pretpostavkom da već ne upotrebljavate VPN, Google traži "Što je moj IP." Uzmite adresu koja se prikazuje i postavite joj udaljenu IP adresu. Ostavite broj porta.

daljinski 107.150.28.83 1194 #Ta IP ironično je VPN

Promijenite certs tako da odražavaju one koje ste stvorili, baš kao što ste učinili s poslužiteljem.

ca ca.crt cert client.crt ključ client.key

Pronađite korisničke mogućnosti i komentirajte ih. U redu je voditi klijente kao nitko.

korisnik nitko grupu nogroup

Nekomentirajte opciju tls-auth za HMAC.

tls-auth ta.key 1

Zatim potražite mogućnost šifriranja i provjerite odgovara li poslužitelju.

šifra AES-256-CBC

Zatim, samo dodajte sažetak provjere autentičnosti i šifriranje ograničenja na dnu datoteke.

# Authentication Digest auth SHA512 # Šifrijska ograničenja tls-cipher TLS-DHE-RSA-S-AES-256-GCM-SHA384: TLS-DHE-RSA-SA-AES-128-GCM-SHA256: TLS-DHE-RSA-WITH -AES-256-CBC-SHA: TLS-DHE-RSA-SA-CAMELLIA-256-CBC-SHA: TLS-DHE-RSA-SA-AES-128-CBC-SHA: TLS-DHE-RSA-SA-CAMELLIA -128-CBC-SHA

Kad sve izgleda kako treba, spremite datoteku i izađite. Upotrijebite tar za pakiranje konfiguracije i certs kako biste ih mogli 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 koji vi odaberete. SFTP, FTP i USB pogon sve su sjajne opcije.

Prosljeđivanje luka

Kako bi bilo što od ovoga radilo, morate konfigurirati svoj usmjerivač tako da dolazni VPN promet preusmjeri na Pi. Ako već koristite VPN, morate biti sigurni da se ne povezujete na istom priključku. Ako jeste, promijenite port na konfiguraciji vašeg klijenta i poslužitelja.

Spojite se na web sučelje vašeg usmjerivača tako da upišete njegovu IP adresu na svom pregledniku.

Svaki usmjerivač je različit. Čak i dalje, svi bi oni trebali imati neki oblik ove funkcionalnosti. Pronađite ga na usmjerivaču.

Podešavanje je u osnovi isto na svakom usmjerivaču. Unesite početni i krajnji priključak. Oni trebaju biti jednaki jedni drugima i oni koje ste postavili u svojim konfiguracijama. Zatim ga za IP adresu postavite na IP vašeg Raspberry Pi-a. Spremite svoje promjene.

Povežite se s klijentom

Svaki je klijent različit, tako da nema univerzalnog rješenja. Ako ste u sustavu Windows, trebat će vam Windows OpenVPN klijent .

Na Androidu možete otvoriti tarbolu i prenijeti tipke na telefon. Zatim instalirajte OpenVPN aplikaciju. Otvorite aplikaciju i uključite podatke iz vaše konfiguracijske datoteke. Zatim odaberite svoje ključeve.

Na Linuxu morate instalirati OpenVPN kao što ste učinili za poslužitelj.

$ sudo apt instalirati openvpn

Zatim promijenite u / etc / openvpn i raspakirajte tarbolu koju ste poslali.

$ cd / etc / openvpn $ sudo tar xJf /path/to/client.tar.xz

Preimenujte datoteku klijenta.

$ sudo mv client.ovpn client.conf

Ne pokrenite klijenta još. Neće uspjeti. Prvo morate omogućiti usmjeravanje porta na vašem usmjerivaču.

Završne misli

Sada biste trebali imati radno postavljanje. Vaš će se klijent izravno povezati putem usmjerivača na Pi. Odatle možete dijeliti i povezivati ​​se putem virtualne mreže sve dok su svi uređaji povezani na VPN. Nema ograničenja, tako da sva svoja računala uvijek možete spojiti na Pi VPN.

Pretvorite malinu pi u vpn da biste pristupili mreži s bilo kojeg mjesta