Anonim

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«.

$ sudo ./build-ca

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.

Maline pi spremenite v vpn, da dostopate do svojega omrežja od kjer koli