Zakaj uporabljati VPN za dostop do doma
hitre povezave
- Zakaj uporabljati VPN za dostop do doma
- Nastavite Pi
- Namestite program Raspbian
- Nastavite OpenVPN
- Organ za potrjevanje
- Naredite nekaj tipk
- Konfiguracija strežnika
- Zaženite strežnik
- Namestitev odjemalca
- Konfiguracija odjemalca
- Posredovanje vrat
- Povežite se s stranko
- Zaključne misli
Obstaja veliko razlogov, da želite dostopati do domačega omrežja na daljavo, najboljši način pa je to s strežnikom VPN. Nekateri usmerjevalniki vam dejansko dovolijo, da nastavite strežnik VPN neposredno znotraj usmerjevalnika, v mnogih primerih pa ga boste morali nastaviti sami.
Raspberry Pi je odličen način za dosego tega. Za zagon ne potrebujejo veliko energije in imajo dovolj moči za zagon strežnika VPN. Lahko ga postavite poleg usmerjevalnika in nanj v bistvu pozabite.
Ko imate dostop do domačega omrežja na daljavo, lahko do svojih datotek pridete od kjer koli. Domače računalnike lahko zaženete na daljavo. Uporabite lahko celo domačo VPN povezavo s ceste. Takšna nastavitev omogoča, da se telefon, tablični računalnik ali prenosni računalnik obnašajo tako, kot je bil doma od kjer koli.
Nastavite Pi
Preden začnete z nastavitvijo VPN-ja, boste morali nastaviti svoj Raspberry Pi. Najbolje je, da Pi nastavite s ohišjem in spodnjo pomnilniško kartico, 16 GB bi moralo biti več kot dovolj. Če je mogoče, priključite Pi na usmerjevalnik s kablom Ethernet. To bo zmanjšalo morebitne zamude v omrežju.
Namestite program Raspbian
Najboljši operacijski sistem, ki ga lahko uporabljate na vašem Pi, je Raspbian. To je privzeta izbira, ki jo je postavila fundacija Raspberry Pi, temelji pa na Debianu, eni najbolj varnih in stabilnih različic Linuxa, ki so na voljo.
Pojdite na stran za prenos datoteke Rasbian in preberite najnovejšo različico. Tu lahko uporabite različico "Lite", ker grafičnega namizja dejansko ne potrebujete.
Medtem ko to prenašate, najdite najnovejšo različico Etcherja za svoj operacijski sistem. Ko se prenos konča, izvlečite sliko Raspbian. Nato odprite Etcher. Izberite Raspbian sliko, od koder ste jo ekstrahirali. Izberite SD kartico (najprej jo vstavite). Na koncu zapišite sliko na kartico.
Ko konča, pustite kartico SD v računalniku. Odprite upravitelja datotek in poiščite kartico. Morali bi videti nekaj različnih particij. Poiščite particijo »boot«. To je tista, v kateri je datoteka „kernel.img“. Ustvarite prazno besedilno datoteko na "zagonski" particiji in jo pokličite "ssh" brez razširitve datoteke.
Končno lahko povežete svoj Pi. Prepričajte se, da ste ga vtaknili zadnji. Ne boste potrebovali zaslona, tipkovnice ali miške. Oddaljeni boste dostopali do programa Raspberry Pi prek svojega omrežja.
Dajte Pi nekaj minut, da se nastavi. Nato odprite spletni brskalnik in se pomaknite do zaslona za upravljanje usmerjevalnika. Poiščite Raspberry Pi in si zapišite njegov IP naslov.
Ne glede na to, ali uporabljate Windows, Linux ali Mac, odprite OpenSSH. Povežite se z malino Pi s SSH.
$ ssh
Očitno uporabite dejanski IP naslov Pi. Uporabniško ime je vedno pi, geslo pa malina.
Nastavite OpenVPN
OpenVPN ni ravno preprost za nastavitev kot strežnik. Dobra novica je, da jo morate storiti samo enkrat. Preden se kopate, se prepričajte, da je Raspbian popolnoma posodobljen.
$ sudo apt posodobitev $ sudo apt nadgradnja
Po končani posodobitvi lahko namestite OpenVPN in pripomoček za potrdila, ki ga potrebujete.
$ sudo apt namestite openvpn easy-rsa
Organ za potrjevanje
Če želite preveriti pristnost naprav, ko se poskušajo povezati s strežnikom, morate vzpostaviti pooblastilo za potrdila, da ustvarite podpisne ključe. Ti ključi bodo zagotovili, da se bodo lahko samo vaše naprave povezale z vašim domačim omrežjem.
Najprej ustvarite imenik za potrdila. Premakni se v ta imenik.
$ sudo make-cadir / etc / openvpn / certs $ cd / etc / openvpn / certs
Oglejte si konfiguracijske datoteke OpenSSL. Nato najnovejšo povezavo povežite z openssl.cnf.
$ ls | grep -i openssl $ sudo ln -s openssl-1.0.0.cnf openssl.cnf
V isti mapi "certs" je datoteka, imenovana "vars". Odprite to datoteko z urejevalnikom besedil. Nano je privzeto, a namesti Vim, če vam bolj ustreza.
Najprej poiščite spremenljivko KEY_SIZE. Privzeto je nastavljena na 2048 Spremenite v 4096.
izvoz KEY_SIZE = 4096
Glavni blok, ki ga morate obravnavati, določa podatke o vašem certifikacijskem organu. Pomaga, če so te informacije točne, a vse, kar se spomnite, je v redu.
izvoz KEY_COUNTRY = "ZDA" izvoz KEY_PROVINCE = "CA" izvoz KEY_CITY = "SanFrancisco" izvoz KEY_ORG = "Fort-Funston" izvoz KEY_EMAIL = "" izvoz KEY_OU = "MyOrganizationalUnit" izvoz KEY_NAME = "DomovVPN
Ko imate vse, shranite in zapustite.
Paket Easy-RSA, ki ste ga predhodno namestili, vsebuje veliko skript, ki pomagajo nastaviti vse, kar potrebujete. Samo voditi jih morate. Začnite z dodajanjem datoteke »vars« kot vira. To bo naložilo vse spremenljivke, ki ste jih pravkar nastavili.
$ sudo vir ./vars
Nato očistite ključe. Nimate nobenega, zato ne skrbite, ko bo sporočilo, da bodo vaši ključi izbrisani.
$ sudo ./clean-install
Končno sestavite svoj certifikat. Privzete vrednosti ste že nastavili, tako da lahko preprosto sprejmete privzete nastavitve, ki jih predstavlja. Ne pozabite, da nastavite močno geslo in na zadnji dve vprašanji odgovorite z »da«.
Naredite nekaj tipk
Skozi vse te težave ste šli in postavili pooblastilo za potrdila, da boste lahko podpisali ključe. Zdaj je čas, da jih nekaj naredimo. Začnite z gradnjo ključa za vaš strežnik.
$ sudo ./build-key-server strežnik
Nato zgradite Diffie-Hellman PEM. To je tisto, kar OpenVPN uporablja za zavarovanje povezav vaše stranke s strežnikom.
$ sudo openssl dhparam 4096> /etc/openvpn/dh4096.pem
Zadnji ključ, ki ga od zdaj potrebujete, se imenuje ključ HMAC. OpenVPN uporablja to tipko za podpis vsakega posameznega paketa informacij, izmenjanih med odjemalcem in strežnikom. Pomaga preprečiti nekatere vrste napadov na povezavo.
$ sudo openvpn --genkey --secret /etc/openvpn/certs/keys/ta.key
Konfiguracija strežnika
Ključe imate. Naslednji del pri nastavitvi OpenVPN je konfiguracija strežnika. Na srečo tukaj ni toliko, kar bi morali storiti. Debian ponuja osnovno konfiguracijo, ki jo lahko uporabite za začetek. Torej, začnite s pridobivanjem te konfiguracijske datoteke.
$ sudo gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz> /etc/openvpn/server.conf
Znova uporabite urejevalnik besedila, da odprete /etc/openvpn/server.conf. Najprej morate najti datoteke ca, cert in key. Nastaviti jih morate tako, da se ujemajo z dejanskimi lokacijami datotek, ki ste jih ustvarili in so vse v / etc / openvpn / certs / keys.
ca /etc/openvpn/certs/keys/ca.crt cert /etc/openvpn/certs/keys/server.crt tipka /etc/openvpn/certs/keys/server.key # To datoteko je treba hraniti v tajnosti
Poiščite nastavitev dh in jo spremenite tako, da se bo ujemala z Diffie-Hellman .pem, ki ste ga ustvarili.
dh dh4096.pem
Nastavite tudi pot do ključa HMAC.
tls-auth /etc/openvpn/certs/keys/ta.key 0
Poiščite šifro in se prepričajte, da se ujema s spodnjim primerom.
šifra AES-256-CBC
Naslednjih nekaj možnosti je na voljo, vendar jih komentirajo z.; Odstranite podpičke pred vsako možnostjo, da jih omogočite.
push "preusmeritveni prehod def1 bypass-dhcp" push "dhcp-opcija DNS 208.67.222.222" push "dhcp-opcija DNS 208.67.220.220"
Poiščite uporabniške in skupinske možnosti. Odklopite jih in spremenite uporabnika v "openvpn."
uporabnik openvpn skupina nogroup
Končno ti zadnji dve vrstici nista v privzeti konfiguraciji. Dodati jih boste morali na koncu datoteke.
Nastavite preiskavo pristnosti, da določite močnejšo šifriranje za preverjanje pristnosti uporabnika.
# Authentication Digest auth SHA512
Nato omejite cipers, ki jih OpenVPN lahko uporablja samo na močnejše. To pomaga omejiti morebitne napade na šibke šifre.
# Omejite šifre tls-šifer 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 vse za konfiguracijo. Shranite datoteko in zapustite.
Zaženite strežnik
Preden lahko zaženete strežnik, morate narediti tistega openvpn uporabnika, ki ste ga določili.
$ sudo adduser --sistem --shell / usr / sbin / nologin --no-create-home openvpn
Je poseben uporabnik samo za zagon OpenVPN in ne bo naredil nič drugega.
Zdaj zaženite strežnik.
$ sudo systemctl začetek openvpn $ sudo systemctl začetek
Preverite, ali oba tečeta
$ sudo systemctl status openvpn * .service
Če je vse videti dobro, jih omogočite ob zagonu.
$ sudo systemctl omogoči openvpn $ sudo systemctl omogoči
Namestitev odjemalca
Vaš strežnik je zdaj nastavljen in deluje. Nato morate nastaviti konfiguracijo odjemalca. To je konfiguracija, ki jo boste uporabili za povezavo naprav s strežnikom. Vrnite se v mapo certs in se pripravite, da sestavite odjemalske ključe. Izberete lahko, da sestavite ločene ključe za vsako stranko ali en ključ za vse stranke. Za domačo uporabo bi moral biti en ključ v redu.
$ cd / etc / openvpn / certs $ sudo vir ./vars $ sudo ./build-key odjemalec
Postopek je skoraj enak strežniškemu, zato sledite istemu postopku.
Konfiguracija odjemalca
Konfiguracija za odjemalce je zelo podobna konfiguraciji za strežnik. Ponovno imate vnaprej izdelano predlogo, na kateri lahko konfigurirate svojo konfiguracijo. Morate ga le spremeniti tako, da ustreza strežniku.
Spremenite se v imenik odjemalcev. Nato razpakirajte vzorčno konfiguracijo.
$ cd / etc / openvpn / client $ sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/client/client.ovpn
Odprite datoteko client.ovpn s svojim urejevalnikom besedil. Nato poiščite oddaljeno možnost. Ob predpostavki, da že ne uporabljate VPN, Google poišče »Kaj je moj IP.« Vzemite naslov, ki ga prikazuje, in mu nastavite oddaljeni naslov IP. Pustite številko vrat.
daljinski 107.150.28.83 1194 #Ta IP ironično je VPN
Spremenite certs tako, da odražajo tiste, ki ste jih ustvarili, tako kot ste to storili s strežnikom.
ca ca.crt cert client.crt ključ client.key
Poiščite uporabniške možnosti in jih komentirajte. Dobro je voditi stranke kot nihče.
uporabnik nihče ni skupina nog
Komentirajte možnost tls-auth za HMAC.
tls-auth ta.key 1
Nato poiščite možnost šifriranja in se prepričajte, da se ujema s strežnikom.
šifra AES-256-CBC
Nato na dnu datoteke dodajte samo omejitve prenosa pristnosti in šifrirane omejitve.
# Preverjanje pristnosti auth SHA512 # Omejitve šifre tls-šifer TLS-DHE-RSA-S-AES-256-GCM-SHA384: TLS-DHE-RSA-S-AES-128-GCM-SHA256: TLS-DHE-RSA-WITH -AES-256-CBC-SHA: TLS-DHE-RSA-SA-CAMELLIA-256-CBC-SHA: TLS-DHE-RSA-WITH-AES-128-CBC-SHA: TLS-DHE-RSA-WITH-CAMELLIA -128-CBC-SHA
Ko je vse videti v redu, shranite datoteko in zapustite. Uporabite tar za pakiranje konfiguracije in certs, tako da jih lahko pošljete stranki.
$ sudo tar cJf /etc/openvpn/clients/client.tar.xz -C / itd / openvpn / certs / keys ca.crt client.crt client.key ta.key -C /etc/openvpn/clients/client.ovpn
Paket prenesite stranki, ki ga izberete. SFTP, FTP in USB pogon so vse odlične možnosti.
Posredovanje vrat
Da bi lahko kaj od tega delovalo, morate svoj usmerjevalnik konfigurirati tako, da dohodni VPN promet posreduje Pi-ju. Če že uporabljate VPN, se morate prepričati, da se ne povezujete na istem pristanišču. Če ste, spremenite vrata v konfiguraciji odjemalca in strežnika.
Povežite se s spletnim vmesnikom vašega usmerjevalnika tako, da v brskalnik vpišete njegov IP naslov.
Vsak usmerjevalnik je drugačen. Kljub temu bi morali imeti vsi to funkcijo. Poiščite ga na usmerjevalniku.
Nastavitev je v osnovi enaka na vsakem usmerjevalniku. Vnesite začetna in končna vrata. Morali bi biti enaki drug drugemu in tisti, ki ste jih nastavili v svojih konfiguracijah. Nato za naslov IP nastavite to na svoj naslov Raspberry Pi. Shranite spremembe.
Povežite se s stranko
Vsaka stranka je drugačna, zato ni univerzalne rešitve. Če uporabljate Windows, boste potrebovali odjemalca Windows OpenVPN .
V Androidu lahko odprete tarblobo in tipke prenesete v telefon. Nato namestite aplikacijo OpenVPN. Odprite aplikacijo in vstavite podatke iz svoje konfiguracijske datoteke. Nato izberite tipke.
V Linuxu morate OpenVPN namestiti tako, kot ste ga naredili za strežnik.
$ sudo apt namestite openvpn
Nato spremenite v / etc / openvpn in razpakirajte kroglico, ki ste jo poslali.
$ cd / etc / openvpn $ sudo tar xJf /path/to/client.tar.xz
Preimenujte datoteko odjemalca.
$ sudo mv client.ovpn client.conf
Stranke še ne zaženite. Ne bo uspelo. Najprej morate na usmerjevalniku omogočiti posredovanje vrat.
Zaključne misli
Zdaj bi morali imeti delujočo namestitev. Vaša stranka se bo prek usmerjevalnika neposredno povezala na Pi. Od tam lahko delite in se povežete prek svojega virtualnega omrežja, če so vse naprave povezane v VPN. Omejitev ni, zato lahko vse svoje računalnike vedno povežete s Pi VPN.
