VPN: Què són i com funcionen
Introducció
Sovint es parla de les VPNs com una manera d’accedir a continguts disponibles en altres països i, fins i tot, per securitzar el nostre accés a Internet.
En aquest post parlarem sobre el que són realment les VPNs, els seus protocols, com funcionen i si compleixen aquestes funcions que tant es publiciten.
Què és una VPN
Una VPN (Virtual Private Network) és una tecnologia que permet crear una connexió segura (túnel) entre dos punts a través d’Internet. Aquests túnels utilitzen xifratge per protegir la informació.
Amb una VPN podem connectar-nos a una xarxa LAN encara que no estiguem físicament al mateix lloc. També podríem connectar diferents xarxes entre elles.
Cal destacar que si estàs connectat a una VPN, tot el teu tràfic sortirà per la VPN, és a dir, s’enrutarà a través del túnel i sortirà a Internet amb la IP pública de l’altre costat del túnel.
Si amb el teu mòbil utilitzant dades estàs connectat a una VPN que tens al router de casa teva, podràs accedir al teu servidor local o veure Netflix saltant-te la seva restricció per IP. Si amb el mòbil busques la IP pública, tindràs la mateixa que tenen la resta de dispositius de casa teva.
Funcionament
-
L’usuari inicia una connexió amb el servidor VPN.
-
El client VPN genera claus de xifratge que compartirà servidor.
-
S’estableix la connexió segura (túnel) entre client i servidor.
-
Les dades que s’enviaran del client al servidor són xifrades pel client. Un cop arriben al servidor, les desxifra i les reenvia al destí (per exemple a un lloc web).
-
A l’hora d’enviar la resposta (per exemple del lloc web al client), el servidor xifra les dades i el client les desxifra. Això significa encapsular les dades en una capa extra de seguretat, tot i que un cop fora la VPN la informació ja no està dins aquesta capa.
Les VPN poden utilitzar tant TCP com UDP, segons si es vol rendiment o fiabilitat.
Tunelització
La tunelització és el procés d’encapsular paquets dins altres paquets que contenen informació perquè les dades viatgin segures.
Protocols de VPN
Aquesta mena de protocols defineixen com establir les connexions, com xifrar les dades i com gestionar el tràfic. Alguns dels més coneguts són:
IPSec (Internet Protocol Security)
IPSec no és un protocol, sinó un conjunt de protocols, que són:
-
Encapçalament d’autenticació (AH)
Garanteix la integritat.
-
Protocol de seguretat d’encapsulació (ESP)
S’encarrega de xifrar les dades i pot oferir autenticació.
-
Internet Security Association and Key Management Protocol (ISAKMP)
IPSec consta de dos modes:
-
Túnel
És el mode per defecte d’IPSec. Les dades s’encripten (inclòs l’encapçalament) i s’afegeix un nou encapçalament per sobre, creant així una capa adicional d’encapsulament.
-
Transport
Només es xifren les dades, sense tocar l’encapçalament original.
L’encapçalament és la part d’un paquet que conté informació sobre la ruta i el tractament de les dades del paquet (dades d’enrutament, TTL, identificadors,…)
OpenVPN
És un protocol de codi obert que utilitza SSL/TLS per crear connexions segures.
Té dos modes de xifratge considerats segurs:
-
Xifrat simètric i claus precompartides
En aquest mode existeix una clau per xifrar i per desxifrar. Per tant, qualsevol que tingui la clau pot desxifrar tot el tràfic.
-
Xifrat asimètric amb SSL/TLS
Aquí cada usuari té dues claus (pública i privada) que s’utilitzen una per xifrar i l’altra per desxifrar (si es xifra amb la privada, es desxifra amb la pública i viceversa).
L2TP (Layer 2 Tunneling Protocol)
L2TP no és més que un protocol de tunelització però no xifra. Per això, s’utilitza conjuntament amb el xifratge proporcionat per IPSec, encapsulant les dades dos cops (una amb L2TP i l’altra amb IPSec).
WireGuard
WireGuard és un protocol VPN disenyat per ser eficient i senzill de configurar. S’utilitza com a mòdul dins el kernel de Linux, millorant el rendiment respecte a altres alternatives, ja que s’executa en espai de kernel i no ha de fer canvis de context.
Es va disenyar per ser una solució VPN eficient i menys complexa que la resta de VPNs, per la qual cosa conté molt menys codi i és més fàcil debugar-lo.
Utilitza xifratge ChaCha20, que és un algorisme que té un consum de recursos baix.
Seguretat
Tot i que el tràfic dins el túnel està encriptat, el tràfic un cop fora la VPN no ho està, pel que la diferència en quant a seguretat només es dona des del nostre sistema al servidor VPN.
El que si que es pot considerar una mesura extra de seguretat és l’emmascarament que realitza de la teva IP, tot i que tampoc és una dada sensible.
Rendiment i limitacions
L’ús de VPNs no ve sense cost. El xifratge i la tunelació afegiran retards en la navegació, a més d’altres paràmetres (ample de banda, localització del servidor VPN,…). I a part del temps que suma, el xifratge augmenta els recursos utilitzats.
Hi ha llocs web que realitzant DPI (Deep packet inspection) detecten l’ús de VPN i bloquegen l’accès.
Usos comuns
Les VPNs s’utilitzen principalment per:
-
Accès remot
-
Accès a contingut restringit per zona geogràfica
-
Protegeix la navegació en certs situacions concretes (accedir a Internet des d’un Wi-Fi públic).
I fins aquí el post d’avui. Si t’ha semblat útil pots deixar un comentari i compartir-lo. Ens veiem al següent!