Anonim

Prečo používať VPN na prístup do vašej domácnosti

Rýchle odkazy

  • Prečo používať VPN na prístup do vašej domácnosti
  • Nastavenie pi
    • Nainštalujte Raspbian
  • Nastaviť OpenVPN
    • Certifikačná autorita
    • Vytvorte niektoré kľúče
    • Konfigurácia servera
    • Spustite server
  • Nastavenie klienta
    • Konfigurácia klienta
  • Presmerovanie portov
  • Pripojte sa ku klientovi
  • Záverečné myšlienky

Existuje veľa dôvodov, prečo by ste chceli mať prístup k domácej sieti na diaľku, a najlepší spôsob, ako to urobiť, je pomocou servera VPN. Niektoré smerovače vám vlastne umožňujú nastaviť server VPN priamo v smerovači, ale v mnohých prípadoch budete musieť jeden nastaviť sami.

Raspberry Pi je vynikajúci spôsob, ako to dosiahnuť. Na spustenie servera VPN nevyžadujú veľa energie a majú dostatok energie na spustenie servera VPN. Môžete si jednu nastaviť vedľa smerovača a v podstate na ňu zabudnúť.

Ak máte vzdialený prístup k domácej sieti, môžete sa k svojim súborom dostať odkiaľkoľvek. Domáce počítače môžete spúšťať na diaľku. Môžete dokonca použiť pripojenie VPN vášho domova z cesty. Takéto nastavenie umožňuje, aby telefón, tablet alebo prenosný počítač fungovali rovnako ako kdekoľvek inde.

Nastavenie pi

Predtým, ako začnete nastavovať VPN, budete musieť nastaviť Raspberry Pi. Najlepšie je nastaviť pí s puzdrom a pamäťovou kartou slušnej veľkosti, 16 GB by malo byť viac ako dosť. Ak je to možné, pripojte zariadenie Pi k routeru pomocou kábla Ethernet. Minimalizuje to akékoľvek oneskorenia v sieti.

Nainštalujte Raspbian

Najlepším operačným systémom, ktorý môžete použiť na vašom Pi, je Raspbian. Je to predvolená voľba vydaná nadáciou Raspberry Pi a je založená na Debiane, jednej z najbezpečnejších a najstabilnejších dostupných verzií Linuxu.

Prejdite na stránku stiahnutia Rasbian a získajte najnovšiu verziu. Tu môžete použiť verziu „Lite“, pretože v skutočnosti nepotrebujete grafickú pracovnú plochu.

Počas sťahovania získate najnovšiu verziu aplikácie Etcher pre svoj operačný systém. Po dokončení sťahovania extrahujte obraz Raspbian. Potom otvorte Etcher. Vyberte raspbianský obrázok, z ktorého ste ho vybrali. Vyberte kartu SD (najskôr ju vložte). Nakoniec zapíšte obrázok na kartu.

Po dokončení nechajte kartu SD v počítači. Otvorte správcu súborov a prejdite na kartu. Mali by ste vidieť niekoľko rôznych oddielov. Vyhľadajte oddiel „boot“. Je to súbor so súborom „kernel.img“. Vytvorte prázdny textový súbor v oddiele „boot“ a nazvite ho „ssh“ bez prípony súboru.

Nakoniec sa môžete pripojiť k vášmu Pi. Uistite sa, že ste ho pripojili ako posledný. Nepotrebujete obrazovku, klávesnicu ani myš. Chystáte sa vzdialene pristupovať k Raspberry Pi prostredníctvom svojej siete.

Dajte Pi pár minút na to, aby ste sa postavili. Potom otvorte webový prehľadávač a prejdite na obrazovku správy smerovača. Nájdite Raspberry Pi a poznamenajte si jeho IP adresu.

Či už ste na Windows, Linux alebo Mac, otvorte OpenSSH. Pripojte sa k Raspberry Pi pomocou SSH.

$ ssh

Je zrejmé, že použite skutočnú IP adresu zariadenia Pi. Používateľské meno je vždy pi a heslo je malina.

Nastaviť OpenVPN

OpenVPN nie je celkom jednoduché nastaviť ako server. Dobrá správa je, že to musíte urobiť iba raz. Predtým, ako sa prihlásite, sa uistite, že Raspbian je úplne aktuálny.

$ sudo apt aktualizácia $ sudo apt upgrade

Po dokončení aktualizácie môžete nainštalovať OpenVPN a potrebný certifikačný program.

$ sudo apt install openvpn easy-rsa

Certifikačná autorita

Na autentifikáciu vašich zariadení, keď sa pokúšajú pripojiť k serveru, musíte vytvoriť certifikačnú autoritu na vytváranie signalizačných kľúčov. Tieto kľúče zaistia, že k vašej domácej sieti sa budú môcť pripojiť iba vaše zariadenia.

Najskôr vytvorte adresár pre svoje certifikáty. Presuňte sa do tohto adresára.

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

Vyhľadajte konfiguračné súbory OpenSSL. Potom posledný prepojte s openssl.cnf.

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

V tom istom priečinku „certs“ je súbor s názvom „vars“. Tento súbor otvorte pomocou textového editora. Nano je predvolený, ale neváhajte a nainštalujte Vim, ak vám to vyhovuje.

Najprv nájdite premennú KEY_SIZE. V predvolenom nastavení je nastavená na 2048. Zmeňte ju na 4096.

export KEY_SIZE = 4096

Hlavným blokom, s ktorým sa musíte vysporiadať, sú informácie o vašej certifikačnej autorite. Pomáha, ak sú tieto informácie presné, ale čokoľvek si pamätáte, je v poriadku.

export KEY_COUNTRY = "USA" export KEY_PROVINCE = "CA" export KEY_CITY = "SanFrancisco" export KEY_ORG = "Fort-Funston" export KEY_EMAIL = "" export KEY_OU = "MyOrganizationalUnit" export KEY_NAME = "HomeVPN"

Ak máte všetko, uložte ho a ukončite.

Tento balík Easy-RSA, ktorý ste nainštalovali predtým, obsahuje veľa skriptov, ktoré pomáhajú nastaviť všetko, čo potrebujete. Stačí ich spustiť. Začnite pridaním súboru „vars“ ako zdroja. Načítajú sa všetky premenné, ktoré ste práve nastavili.

$ sudo source ./vars

Ďalej vyčistite kľúče. Nemáte žiadne, takže si nemusíte robiť starosti so správou, že vaše kľúče budú odstránené.

$ sudo ./clean-install

Nakoniec vytvorte svoju certifikačnú autoritu. Predvolené hodnoty ste už nastavili, takže môžete akceptovať iba predvolené hodnoty, ktoré uvádza. Nezabudnite nastaviť silné heslo a odpovedať „áno“ na posledné dve otázky, ktoré nasledujú po hesle.

$ sudo ./build-ca

Vytvorte niektoré kľúče

Prešli ste všetkými ťažkosťami pri nastavovaní certifikačnej autority, aby ste mohli podpisovať kľúče. Teraz je čas urobiť nejaké. Začnite vytvorením kľúča pre svoj server.

$ sudo ./build-key-server server

Ďalej postavte PEM spoločnosti Diffie-Hellman. To je to, čo OpenVPN používa na zabezpečenie svojich klientskych pripojení k serveru.

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

Posledný kľúč, ktorý odteraz potrebujete, sa nazýva HMAC kľúč. OpenVPN používa tento kľúč na podpísanie každého jednotlivého paketu informácií vymieňaných medzi klientom a serverom. Pomáha predchádzať určitým druhom útokov na pripojenie.

$ sudo openvpn --genkey --secret /etc/openvpn/certs/keys/ta.key

Konfigurácia servera

Máte kľúče. Ďalšou súčasťou nastavenia OpenVPN je samotná konfigurácia servera. Našťastie tu nie je všetko, čo musíte urobiť. Debian poskytuje základnú konfiguráciu, pomocou ktorej môžete začať. Začnite teda získaním tohto konfiguračného súboru.

$ sudo gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz> /etc/openvpn/server.conf

Na otvorenie súboru /etc/openvpn/server.conf použite znova textový editor. Najprv musíte nájsť súbory ca, cert a key. Musíte ich nastaviť tak, aby sa zhodovali so skutočnými umiestneniami súborov, ktoré ste vytvorili, a to všetko v priečinkoch / etc / openvpn / certs /.

ca /etc/openvpn/certs/keys/ca.crt cert /etc/openvpn/certs/keys/server.crt key /etc/openvpn/certs/keys/server.key # Tento súbor by mal byť utajený

Nájdite nastavenie dh a zmeňte ho tak, aby zodpovedal vytvorenému súboru Diffie-Hellman.

dh dh4096.pem

Nastavte tiež cestu pre svoj kľúč HMAC.

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

Nájdite šifru a uistite sa, že zodpovedá príkladu uvedenému nižšie.

šifra AES-256-CBC

Ďalších niekoľko možností je, ale sú komentované pomocou;;. Odstráňte bodkočiarky pred každou možnosťou, aby ste ich povolili.

push "presmerovaná brána def1 bypass-dhcp" push "dhcp-option DNS 208.67.222.222" push "dhcp-option DNS 208.67.220.220"

Vyhľadajte možnosti používateľa a skupiny. Uvoľnite ich a zmeňte používateľa na „openvpn“.

užívateľ openvpn skupina nogroup

Nakoniec tieto posledné dva riadky nie sú v predvolenej konfigurácii. Budete ich musieť pridať na koniec súboru.

Nastavením prehľadu autentifikácií určíte silnejšie šifrovanie pre autentifikáciu používateľa.

# Authentication Digest auth SHA512

Potom obmedzte štiepky, ktoré môže OpenVPN použiť, iba na tie silnejšie. To pomáha obmedziť možné útoky na slabé šifry.

# Limitné šifry tls-šifra TLS-DHE-RSA-S-AES-256-GCM-SHA384: TLS-DHE-RSA-S-AES-128-GCM-SHA256: TLS-DHE-RSA-S-AES-256- CBC-SHA: TLS-DHE-RSA-S-CAMELLIA-256-CBC-SHA: TLS-DHE-RSA-S-AES-128-CBC-SHA: TLS-DHE-RSA-S-CAMELLIA-128-CBC- SHA

To je všetko pre konfiguráciu. Uložte súbor a ukončite program.

Spustite server

Predtým, ako budete môcť spustiť server, musíte urobiť zadaného používateľa openvpn.

$ sudo adduser - system --shell / usr / sbin / nologin --no-create-home openvpn

Je to špeciálny užívateľ len pre spustenie OpenVPN a neurobí nič iné.

Teraz spustite server.

$ sudo systemctl start openvpn $ sudo systemctl start

Skontrolujte, či sú spustené

$ sudo systemctl status openvpn * .service

Ak všetko vyzerá dobre, povoľte ich pri spustení.

$ sudo systemctl enable openvpn $ sudo systemctl enable

Nastavenie klienta

Váš server je teraz nastavený a beží. Ďalej musíte nastaviť klientsku konfiguráciu. Toto je konfigurácia, ktorú použijete na pripojenie vašich zariadení k serveru. Vráťte sa do priečinka certs a pripravte sa na zostavenie kľúča klienta. Môžete si zvoliť vytvorenie samostatných kľúčov pre každého klienta alebo jeden kľúč pre všetkých klientov. Pre domáce použitie by mal byť jeden kľúč v poriadku.

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

Proces je takmer totožný so serverom, preto postupujte rovnako.

Konfigurácia klienta

Konfigurácia pre klientov je veľmi podobná konfigurácii pre server. Opäť máte vopred pripravenú šablónu, na ktorej je založená vaša konfigurácia. Musíte ho iba upraviť tak, aby zodpovedal serveru.

Prejdite do adresára klienta. Potom rozbaľte konfiguráciu vzorky.

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

Otvorte súbor client.ovpn pomocou textového editora. Potom nájdite vzdialenú možnosť. Za predpokladu, že ešte nepoužívate sieť VPN, vyhľadajte v sieti Google „Čo je moja adresa IP“. Vezmite si zobrazenú adresu a nastavte na ňu vzdialenú adresu IP. Ponechajte číslo portu.

vzdialené 107.150.28.83 1194 #Táto IP je ironicky VPN

Zmeňte certs tak, aby odrážali tie, ktoré ste vytvorili, rovnako ako to urobili na serveri.

ca ca.crt cert client.crt key client.key

Nájdite možnosti používateľa a odložte ich. Je v poriadku prevádzkovať klientov ako nikto.

užívateľ nikto skupina nogroup

Odovzdajte voľbu tls-auth pre HMAC.

tls-auth ta.key 1

Ďalej vyhľadajte možnosť šifry a uistite sa, že sa zhoduje so serverom.

šifra AES-256-CBC

Potom jednoducho pridajte obmedzenia prehľadu a šifrovania v dolnej časti súboru.

# Authentication Digest auth SHA512 # Obmedzenia šifry 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-S-CAMELLIA-256-CBC-SHA: TLS-DHE-RSA-S-AES-128-CBC-SHA: TLS-DHE-RSA-S-CAMELLIA -128-CBC-SHA

Ak je všetko v poriadku, uložte súbor a ukončite program. Pomocou dechtu zabalte konfiguráciu a certs, takže ich môžete poslať klientovi.

$ 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

Preneste tento balík klientovi podľa vlastného výberu. SFTP, FTP a jednotka USB sú skvelé možnosti.

Preposielanie portov

Aby čokoľvek z toho fungovalo, musíte nakonfigurovať smerovač tak, aby presmeroval prichádzajúcu komunikáciu VPN na počítač Pi. Ak už používate sieť VPN, musíte sa uistiť, že sa nepripojujete k rovnakému portu. Ak sa nachádzate, zmeňte port v konfigurácii klienta a servera.

Pripojte sa k webovému smerovaču zadaním jeho adresy IP do prehliadača.

Každý smerovač je iný. Aj napriek tomu by všetci mali mať určitú formu tejto funkcie. Nájdite ho na svojom smerovači.

Nastavenie je v podstate rovnaké na každom routeri. Zadajte počiatočný a koncový port. Mali by byť rovnaké ako ostatné a tie, ktoré ste nastavili vo svojich konfiguráciách. Potom pre IP adresu nastavte IP adresu vášho Raspberry Pi. Uložte svoje zmeny.

Pripojte sa ku klientovi

Každý klient je iný, takže neexistuje univerzálne riešenie. Ak ste v systéme Windows, budete potrebovať klienta Windows OpenVPN .

V systéme Android môžete otvoriť tarball a preniesť kľúče do telefónu. Potom nainštalujte aplikáciu OpenVPN. Otvorte aplikáciu a pripojte informácie z konfiguračného súboru. Potom vyberte svoje kľúče.

V systéme Linux musíte nainštalovať OpenVPN rovnako ako ste pre server nainštalovali.

$ sudo apt install openvpn

Potom prejdite na / etc / openvpn a rozbaľte tarball, ktorý ste poslali.

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

Premenujte klientsky súbor.

$ sudo mv client.ovpn client.conf

Ešte nespustite klienta. Zlyhá. Najprv musíte na smerovači povoliť presmerovanie portov.

Záverečné myšlienky

Teraz by ste mali mať funkčné nastavenie. Váš klient sa pripojí priamo cez smerovač k zariadeniu Pi. Odtiaľto môžete zdieľať a pripájať sa cez svoju virtuálnu sieť, pokiaľ sú všetky zariadenia pripojené k sieti VPN. Neexistuje žiadny limit, takže vždy môžete pripojiť všetky svoje počítače k ​​Pi VPN.

Premeňte malinový pi na vpn a získajte prístup k sieti odkiaľkoľvek