Anonim

Per què utilitzar una VPN per accedir a casa vostra

Links ràpids

  • Per què utilitzar una VPN per accedir a casa vostra
  • Configura el Pi
    • Instal·leu Raspbian
  • Configura OpenVPN
    • Autoritat de Certificació
    • Feu algunes claus
    • Configuració del servidor
    • Inicieu el servidor
  • Configuració del client
    • Configuració del client
  • Reenviament de ports
  • Connecta’t amb el client
  • Pensaments de cloenda

Hi ha moltes raons per les quals voleu accedir a la vostra llar de forma remota i la millor manera de fer-ho és amb un servidor VPN. Alguns routers us permeten configurar un servidor VPN directament a l’encaminador, però, en molts casos, haureu de configurar-ne un.

Un Raspberry Pi és una manera fantàstica d’aconseguir-ho. No requereixen molta energia per funcionar, i tenen prou energia per executar un servidor VPN. Podeu configurar-ne un al costat del vostre enrutador i oblidar-lo bàsicament.

Quan tingueu accés a la vostra llar de forma remota, podeu accedir als fitxers des de qualsevol lloc. Podeu executar els vostres ordinadors de manera remota. Fins i tot podeu utilitzar la connexió VPN de casa vostra des de la carretera. Una configuració com aquesta permet que el telèfon, la tauleta o el portàtil actuen igual que a casa des de qualsevol lloc.

Configura el Pi

Abans de començar a configurar la VPN, haureu de configurar el seu Raspberry Pi. El millor és configurar el Pi amb una caixa i una targeta de memòria de mida decent, 16 GB haurien de ser més que suficients. Si és possible, connecteu el vostre Pi al vostre enrutador amb un cable Ethernet. Minimitzarà els retards de la xarxa.

Instal·leu Raspbian

El millor sistema operatiu per utilitzar al vostre Pi és Raspbian. És la tria predeterminada de la base Raspberry Pi i es basa en Debian, una de les versions Linux més segures i estables disponibles.

Vés a la pàgina de descàrregues de Rasbian i agafa la versió més recent. Podeu utilitzar la versió "Lite" aquí, perquè en realitat no necessiteu un escriptori gràfic.

Mentre baixeu, obteniu la versió més recent d' Etcher per al vostre sistema operatiu. Un cop finalitzada la descàrrega, extreu la imatge Raspbian. Després, obriu Etcher. Seleccioneu la imatge Raspbian des d'on l'heu extret. Seleccioneu la vostra targeta SD (Inseriu-la primer). Finalment, escriu la imatge a la targeta.

Deixeu la targeta SD a l’ordinador quan s’acabi. Obre un gestor de fitxers i navega a la targeta. Hauríeu de veure un parell de particions diferents. Cerqueu la partició "arrencada". Es tracta d’un fitxer “kernel.img”. Creeu un fitxer de text buit a la partició "arrencada" i truqueu-lo "ssh" sense extensió de fitxer.

Per fi podeu connectar el Pi. Assegureu-vos que l’heu connectat en última instància. No necessitareu pantalla, teclat o ratolí. Accedireu de forma remota a Raspberry Pi a la vostra xarxa.

Dóna-li al Pi uns minuts per configurar-se. A continuació, obriu un navegador web i navegueu a la pantalla de gestió del vostre enrutador. Cerqueu el Raspberry Pi i anoteu la seva adreça IP.

Tant si teniu Windows, Linux o Mac, obriu OpenSSH. Connecteu-vos al Raspberry Pi amb SSH.

$ ssh

Evidentment, utilitzeu l’adreça IP real del Pi. El nom d'usuari és sempre pi i la contrasenya és framboesa.

Configura OpenVPN

OpenVPN no és exactament senzill de configurar com a servidor. La bona notícia és que només cal fer-ho una vegada. Per tant, abans de caure, assegureu-vos que Raspbian estigui completament actualitzat.

Actualització $ sudo apt Actualització $ sudo apt actualització

Després d’acabar l’actualització, podeu instal·lar OpenVPN i l’utilitat de certificat que necessiteu.

$ sudo apt instal·lar openvpn easy-rsa

Autoritat de Certificació

Per autenticar els vostres dispositius quan intenten connectar-se al servidor, heu de configurar una autoritat de certificat per crear claus de signatura. Aquestes claus us asseguraran que només els vostres dispositius es podran connectar a la vostra xarxa domèstica.

Primer, creeu un directori per als vostres certificats. Desplaceu-vos a aquest directori.

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

Busqueu fitxers de configuració d'OpenSSL. A continuació, enllaça la més recent amb openssl.cnf.

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

A la mateixa carpeta "certs" hi ha un fitxer anomenat "vars". Obriu aquest fitxer amb el vostre editor de text. Nano és el predeterminat, però no dubteu a instal·lar Vim, si us sentiu més còmode.

Cerqueu primer la variable KEY_SIZE. Per defecte, està configurat a 2048. Canvieu-lo per 4096.

exportació KEY_SIZE = 4096

El bloc principal amb el qual cal tractar estableix informació sobre la vostra autoritat de certificat. Ajuda si aquesta informació és exacta, però qualsevol cosa que puguis recordar està bé.

exportació KEY_COUNTRY = exportació "EUA" KEY_PROVINCE = exportació "CA" KEY_CITY = exportació "SanFrancisco" KEY_ORG = "Fort-Funston" exportació KEY_EMAIL = "" exportació KEY_OU = "MyOrganizationalUnit" exportació KEY_NAME = "HomeVPN"

Quan ho tingueu tot, guardeu i sortiu.

Aquest paquet Easy-RSA que heu instal·lat abans conté un munt de scripts que ajuden a configurar tot el que necessiteu. Només cal executar-les. Comença per afegir el fitxer "vars" com a font. Carregarà totes les variables que acabeu de definir.

$ sudo font ./vars

A continuació, netegeu les tecles. No en teniu cap, així que no us preocupeu del missatge que us indica que seran eliminades les vostres claus.

$ sudo ./clean-install

Finalment, creeu la vostra autoritat de certificat. Ja heu definit els valors predeterminats, de manera que només podeu acceptar els valors predeterminats que presenta. No oblideu establir una contrasenya forta i respondre “sí” a les dues darreres preguntes, després de la contrasenya.

$ sudo ./build-ca

Feu algunes claus

Heu passat tots aquests problemes per configurar una autoritat de certificat perquè pugueu signar les claus. Ara és hora de fer-ne algunes. Comença per crear la clau del servidor.

Servidor $ sudo ./build-key-server

A continuació, construïu la PEM de Diffie-Hellman. És el que utilitza OpenVPN per assegurar les connexions de client amb el servidor.

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

La darrera clau que necessiteu a partir d’ara s’anomena clau HMAC. OpenVPN utilitza aquesta clau per signar cada paquet d'informació individual que s'intercanvia entre el client i el servidor. Ajuda a prevenir certs tipus d’atacs a la connexió.

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

Configuració del servidor

Teniu les claus. La següent peça a configurar OpenVPN és la configuració del servidor. Per sort, no hi ha tot el que heu de fer aquí. Debian proporciona una configuració base que podeu utilitzar per començar. Per tant, comenceu per obtenir aquest fitxer de configuració.

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

Torneu a utilitzar l’editor de text per obrir /etc/openvpn/server.conf. Els primers elements que heu de trobar són els fitxers ca, cert i clau. Haureu de definir-los perquè coincideixin amb les ubicacions reals dels fitxers que heu creat, que són totes les claus / etc / openvpn / certs /.

ca /etc/openvpn/certs/keys/ca.crt cert /etc/openvpn/certs/keys/server.crt clau /etc/openvpn/certs/keys/server.key # Aquest fitxer s’ha de mantenir en secret

Cerqueu el paràmetre dh i canvieu-lo perquè coincideixi amb el Diffie-Hellman .pem que vau crear.

dh dh4096.pem

Definiu també el camí per a la vostra clau HMAC.

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

Cerqueu el xifrat i assegureu-vos que coincideix amb l'exemple següent.

xifrat AES-256-CBC

El següent parell d’opcions hi són, però es comenten amb una;. Elimineu els punt i coma de davant de cada opció per activar-los.

push "redirect-gateway def1 bypass-dhcp" push "opció dhcp DNS 208.67.222.222" push "Opció dhcp DNS 208.67.220.220"

Busqueu les opcions d’usuaris i grups. Descomenceu-los i canvieu l’usuari a “openvpn”.

nogrupo grup de l’usuari openvpn

Finalment, aquestes dues últimes línies no estan en la configuració predeterminada. Haureu d’afegir-les al final del fitxer.

Definiu la digestió d'autenticació per especificar el xifrat més fort per a l'autenticació de l'usuari.

# Autenticació Digest Auth SHA512

A continuació, limiteu els cítrics que OpenVPN pot utilitzar només als més forts. Això ajuda a limitar possibles atacs a xifres febles.

# Limitar xifres tls-xifrat TLS-DHE-RSA-AMB AES-256-GCM-SHA384: TLS-DHE-RSA-AMB AES-128-GCM-SHA256: TLS-DHE-RSA-AMB AES-256- CBC-SHA: TLS-DHE-RSA-AMB CAMELLIA-256-CBC-SHA: TLS-DHE-RSA-AMB AES-128-CBC-SHA: TLS-DHE-RSA-AMB CAMELLIA-128-CBC- SHA

Tot això per configurar. Desa el fitxer i surt.

Inicieu el servidor

Abans de poder iniciar el servidor, heu de fer aquell usuari openvpn que heu especificat.

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

És un usuari especial per executar OpenVPN i no farà res més.

Ara, inicieu el servidor.

$ sudo systemctl start openvpn $ sudo systemctl start

Comproveu que tots dos estan funcionant

$ sudo systemctl estat openvpn * .service

Si tot es veu bé, activeu-los al començament.

$ sudo systemctl activen openvpn $ sudo systemctl habilitat

Configuració del client

El servidor ja està configurat i en funcionament. A continuació, heu de configurar la configuració del client. Aquesta és la configuració que fareu servir per connectar els dispositius al vostre servidor. Torneu a la carpeta certs i prepareu-vos per crear les claus de client. Podeu optar per crear claus separades per a cada client o una clau per a tots els clients. Per a ús domèstic, una clau ha d’estar bé.

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

El procés és gairebé idèntic al del servidor del 1, així que seguiu el mateix procediment.

Configuració del client

La configuració per als clients és molt similar a la del servidor. Un cop més, teniu una plantilla prèviament feta a la qual es basa la vostra configuració. Només cal que el modifiqueu perquè coincideixi amb el servidor.

Canvieu al directori client. A continuació, desempaquetem la configuració de l’exemple.

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

Obre el fitxer client.ovpn amb el teu editor de text. A continuació, busqueu l’opció remota. Suposant que ja no utilitzeu una VPN, cerqueu a Google “Què és la meva IP”. Agafeu l’adreça que es mostra i configureu-hi l’adreça IP remota. Deixeu el número de port.

remota 107.150.28.83 1194 # Aquesta IP és irònicament una VPN

Canvieu els certificats perquè reflecteixin els que heu creat, tal com vau fer amb el servidor.

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

Cerqueu les opcions de l’usuari i desmarqueu-les. Va bé fer servir els clients com ningú.

grup d'usuari ningú grup no

Descomprimeix l’opció Tls-auth per a l’HMAC.

tls-auth ta.key 1

A continuació, busqueu l’opció de xifrat i assegureu-vos que coincideixi amb el servidor.

xifrat AES-256-CBC

A continuació, només cal afegir les restriccions de xifrat i de xifrat d'autenticació a la part inferior del fitxer.

# Authentication Digest auth SHA512 # Cipher Restriccions tls-xifrat TLS-DHE-RSA-AMB AES-256-GCM-SHA384: TLS-DHE-RSA-AMB AES-128-GCM-SHA256: TLS-DHE-RSA-With -AES-256-CBC-SHA: TLS-DHE-RSA-AMB CAMELLIA-256-CBC-SHA: TLS-DHE-RSA-AMB AES-128-CBC-SHA: TLS-DHE-RSA-AMB CAMELLIA -128-CBC-SHA

Quan tot sembli correcte, deseu el fitxer i sortiu. Utilitzeu tar per empaquetar la configuració i els certificats, de manera que els pugueu enviar al client.

$ 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

Transferiu aquest paquet al client que vulgueu. L'opció SFTP, FTP i una unitat USB són excel·lents opcions.

Reenviament de ports

Perquè tot això funcioni, heu de configurar el router per reenviar el trànsit VPN entrant al Pi. Si ja utilitzeu una VPN, heu d'assegurar-vos que no us connecteu al mateix port. Si ho és, canvieu el port de la configuració del client i del servidor.

Connecteu-vos a la interfície web del vostre enrutador escrivint la seva adreça IP al navegador.

Cada encaminador és diferent. Tot i així, tots han de tenir alguna forma d’aquesta funcionalitat. Trobeu-lo al vostre encaminador.

La configuració és bàsicament la mateixa a tots els encaminadors. Introduïu els ports d’inici i final. Han de ser els mateixos que els que definiu a les configuracions. Aleshores, per a l'adreça IP, configureu-la a la IP de Raspberry Pi. Desa els canvis

Connecta’t amb el client

Cada client és diferent, així que no hi ha una solució universal. Si teniu Windows, necessitareu el client de Windows OpenVPN .

A Android, podeu obrir el vostre tarball i transferir les tecles al vostre telèfon. Després, instal·leu l’aplicació OpenVPN. Obriu l'aplicació i connecteu la informació del fitxer de configuració. A continuació, selecciona les teves claus.

A Linux, necessiteu instal·lar OpenVPN com en el servidor.

$ sudo apt instal·lar openvpn

Aleshores, canvieu a / etc / openvpn i desempareu el tarball que vau enviar.

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

Canvieu el nom del fitxer client.

$ sudo mv client.ovpn client.conf

Encara no inicieu el client. Fallarà. Primer has d’activar el reenviament de ports del teu router.

Pensaments de cloenda

Ara hauríeu de tenir una configuració de funcionament. El vostre client es connectarà directament a través del vostre enrutador al Pi. Des d'allà, podeu compartir i connectar-vos a la vostra xarxa virtual, sempre que tots els dispositius estiguin connectats a la VPN. No hi ha cap límit, de manera que sempre podeu connectar tots els vostres equips a la VPN Pi.

Convertiu un gerd en un VPN per accedir a la vostra xarxa des de qualsevol lloc