Las VPN
Qué resuelve una VPN y por qué se llama así, cómo se construye un túnel y qué le pasa al paquete dentro de él, en qué escenarios se despliega, con qué protocolos se monta el acceso remoto y las alternativas sobre SSL/TLS, y cómo se autentica al usuario que se conecta.
Qué resuelve una red privada virtual
Una organización con varias sedes necesita que todas se vean como una sola red. La forma tradicional de conseguirlo era contratar una línea dedicada entre ellas: un circuito propio, alquilado a un operador, por el que no circula nadie más. Funciona y es caro, y no sirve para el empleado que trabaja desde casa.
Una red privada virtual hace lo mismo sin línea propia: extiende la red local sobre una infraestructura pública compartida, normalmente internet, de manera que dos equipos separados por medio país se comporten como si estuvieran en el mismo edificio. Ese es el sentido exacto de las tres palabras del nombre. Es privada porque nadie de fuera puede leer ni alterar lo que circula por ella. Es virtual porque el cable propio no existe: lo que hay es una red compartida por la que va todo el mundo. Y es una red porque, para las aplicaciones y para los usuarios, se comporta como una red local más.
El beneficio inmediato es económico, y por eso se pregunta: se sustituye el alquiler de circuitos dedicados por una conexión a internet ordinaria en cada extremo. Pero el motivo técnico es que la red que se usa es pública y no se puede confiar en ella, así que la VPN tiene que aportar por su cuenta las tres garantías que la línea dedicada daba por su naturaleza física.
| Garantía | Qué asegura en una VPN |
|---|---|
| Confidencialidad | Que quien capture el tráfico por el camino no pueda leerlo, porque va cifrado |
| Integridad | Que si alguien modifica un paquete por el camino, el extremo receptor lo detecte y lo descarte |
| Autenticación | Que los dos extremos sean quienes dicen ser, y no un tercero que se ha colocado en medio |
Cómo funcionan por dentro el cifrado simétrico y el asimétrico, la función de resumen y el certificado electrónico se estudian en el tema de administración electrónica del bloque de legislación. Aquí interesa el papel que juega cada pieza dentro del túnel, no su matemática.
Una VPN se despliega básicamente en dos situaciones: para unir dos sedes de forma permanente y para dar entrada a un empleado que está fuera. Se desarrollan en un punto propio más adelante. En el sector público, la referencia de configuración es la guía CCN-STIC 836, de seguridad en redes privadas virtuales.
Privada por el cifrado, virtual porque el circuito no existe. Lo que ahorra es la línea dedicada; lo que aporta son confidencialidad, integridad y autenticación.
Para el examen
Qué crea: un canal cifrado sobre una red pública
Qué garantiza: confidencialidad, integridad y autenticación
Qué ahorra: pagar una línea dedicada
El túnel: encapsular un paquete dentro de otro
El mecanismo con el que se construye una VPN es el túnel, y consiste en algo muy concreto: coger el paquete original, el que lleva direcciones privadas y no podría circular por internet, y meterlo entero como carga dentro de un paquete nuevo con direcciones públicas. Al llegar al otro extremo se retira la envoltura y el paquete original sigue su camino por la red interna como si nada hubiera pasado.
De ahí vienen dos afirmaciones que se preguntan y que solo se entienden juntas. El túnel es punto a punto PARA LOS EXTREMOS, que se ven como si un cable los uniera, pero no lo es físicamente: el paquete que lo transporta atraviesa internet dando saltos por decenas de routers ajenos que ni saben ni tienen por qué saber lo que llevan dentro. Y el túnel es ESTÁTICO cuando une dos sedes, porque los extremos son siempre los mismos dos equipos y la configuración se escribe una vez y se queda.
El protocolo de túnel más elemental es GRE, encapsulación de encaminamiento genérico. Es el protocolo IP número 47 y hace solo una cosa: envolver. Su carga útil es el paquete privado completo, y su cabecera exterior lleva direcciones públicas porque tiene que atravesar internet. Ni cifra ni autentica nada, así que por sí solo NO ES SEGURO: se usa combinado con otro protocolo que aporte la protección, y de ahí la pareja habitual de GRE sobre IPsec.
Lo que sí aporta GRE es flexibilidad: como lo que transporta es opaco para él, puede llevar un paquete IPv6 dentro de uno IPv4 o al revés, y también protocolos que no son IP. Es la forma clásica de hacer viajar tráfico que la red intermedia no sabría encaminar.
Encapsular es meter el paquete privado dentro de uno público. GRE encapsula pero no protege: es el protocolo IP 47 y necesita a IPsec al lado.
Para el examen
Qué es encapsular: meter el paquete original dentro de otro
Qué se ve desde fuera: solo el envoltorio, con las direcciones públicas
Los escenarios de despliegue
Según qué se quiera integrar con qué, la misma tecnología se despliega de tres formas distintas. Las dos primeras son las que caen.
| Escenario | Qué integra | Entre quiénes se levanta el túnel |
|---|---|---|
| De acceso remoto | Un equipo suelto (el portátil del empleado que trabaja fuera) dentro de la red de la organización | Entre el programa cliente de VPN del equipo y el concentrador de VPN corporativo |
| De sitio a sitio | Dos sedes enteras de la organización, con todos sus equipos | Entre los dos routers o pasarelas de frontera, por lo que se la describe como una VPN entre routers |
| De equipo a equipo | Dos máquinas concretas y nada más | Entre los dos equipos. No da acceso a las redes en las que cada uno esté, solo comunica a los dos entre sí |
La diferencia práctica entre los dos primeros está en quién sabe que hay una VPN. En el acceso remoto lo sabe el usuario, porque tiene un programa que arranca y con el que se autentica cada vez. En el de sitio a sitio no lo sabe nadie: el túnel está permanentemente levantado entre los dos routers y los equipos de cada sede se limitan a enviar su tráfico a su puerta de enlace de siempre, sin enterarse de que en algún punto del camino se cifra y se envuelve.
Ese es también el motivo de que el de sitio a sitio se monte con protocolos estáticos, con IPsec como opción natural, mientras que el de acceso remoto necesite protocolos que sepan tratar con un extremo que aparece y desaparece, que cambia de dirección IP y que tiene detrás a una persona a la que hay que autenticar.
Acceso remoto: un equipo contra una red, extremo variable, hay que autenticar a una persona. Sitio a sitio: red contra red, entre routers de frontera, permanente y transparente.
Para el examen
Acceso remoto: usuario a sede
Sitio a sitio: dos sedes
Extranet: con un tercero
Los protocolos de túnel de acceso remoto
La primera generación de VPN de acceso remoto se construyó extendiendo por internet el protocolo con el que se conectaban los módems, PPP. De ahí salen tres nombres que se preguntan juntos y que hoy solo se usan uno de ellos.
| Protocolo | Capa | Qué hace y en qué se apoya |
|---|---|---|
| PPTP | Enlace (nivel 2) | Autentica y cifra por su cuenta; para cifrar usa la extensión MPPE, y transporta los datos dentro de GRE |
| L2F | Enlace (nivel 2) | Autentica, pero no cifra por sí solo: solo encapsula, y depende de otro para la confidencialidad |
| L2TP | Enlace (nivel 2) | Nació de unir los dos anteriores. Tampoco cifra: encapsula y viaja sobre UDP. Por eso se despliega siempre emparejado con IPsec, y se escribe L2TP/IPsec |
Los tres se consideran hoy inseguros, pero conviene tener bien la razón, porque el material de partida la da mal. No es que fueran líneas dedicadas: L2F y L2TP no cifran nada por sí mismos, de modo que sin un compañero que aporte el cifrado transportan los datos en claro; y PPTP sí cifra, pero los mecanismos con los que autentica y con los que deriva su clave están rotos desde hace años y se descifran con medios asequibles. La conclusión operativa es la misma en los tres casos: hoy solo se despliega L2TP y siempre con IPsec debajo.
Del lado del sistema, el túnel se apoya en una interfaz de red virtual: una tarjeta que no existe, que el sistema operativo trata como cualquier otra y cuyo cometido es entregar los paquetes al programa de VPN para que los envuelva, en lugar de sacarlos por un cable. Hay dos variantes y se distinguen por la capa en la que trabajan.
| Interfaz | Capa | Qué transporta |
|---|---|---|
| TUN | Red (nivel 3) | Paquetes IP. Es la opción normal para encaminar entre redes |
| TAP | Enlace (nivel 2) | Tramas Ethernet completas. Se usa cuando hace falta que el extremo remoto quede en el mismo dominio de difusión, por ejemplo para que funcionen protocolos que no son IP |
PPTP cifra con MPPE y va sobre GRE; L2TP no cifra y va sobre UDP, por eso siempre lleva IPsec. TUN es de nivel 3 y TAP de nivel 2.
Para el examen
PPTP: obsoleto e inseguro
L2TP: no cifra por sí solo: va con IPsec
WireGuard: el moderno: corto y rápido
Las VPN sobre SSL/TLS
La segunda generación de VPN de acceso remoto dejó de inventar protección propia y se apoyó en la que ya usa toda la web: SSL/TLS. La ventaja es doble. Por un lado se hereda un mecanismo probado, con su negociación de algoritmos y su autenticación por certificado. Por otro, el túnel viaja por los mismos puertos que el tráfico web ordinario, así que atraviesa sin problemas los cortafuegos y las redes de terceros que bloquearían cualquier otra cosa.
Conviene situar bien la capa, porque el material de partida lo dice mal: TLS no es un protocolo de transporte. Se apoya en TCP y se sitúa por encima de él, prestando sus servicios a las aplicaciones. Qué garantiza TLS, cómo es su saludo, cómo se lee una suite de cifrado y qué comprueba el cliente en el certificado del servidor se estudian en el tema de internet y HTTP de este mismo bloque; aquí solo se usa como transporte del túnel.
| Producto o protocolo | Qué es |
|---|---|
| OpenVPN | El producto de referencia en software libre. Levanta el túnel sobre SSL/TLS y se apoya en las interfaces TUN o TAP |
| SSTP | El protocolo de túnel de Microsoft, que transporta PPP dentro de una sesión SSL/TLS |
| SSH | Protocolo de nivel de aplicación con el que también se pueden reenviar puertos y montar túneles, aunque su cometido principal es el acceso a consola remota |
| WireGuard | Alternativa moderna, a la vez protocolo y programa, que trabaja a nivel de red sobre UDP. Destaca por ser mucho más pequeño y sencillo que los anteriores, lo que reduce la superficie de fallo |
Una ventaja que se pregunta: estos protocolos añaden menos sobrecarga que la primera generación, porque no arrastran el encadenamiento de encapsulaciones de PPP dentro de L2TP dentro de IPsec dentro de IP.
La decisión entre una VPN de IPsec y una de SSL es una pregunta clásica, y se resuelve por el escenario. (Comparativa añadida como ampliación de esta plataforma.)
| VPN con IPsec | VPN sobre SSL/TLS | |
|---|---|---|
| Capa en la que trabaja | Red: protege todo el tráfico IP sin que las aplicaciones se enteren | Por encima del transporte: protege lo que se le entregue |
| Escenario natural | Sitio a sitio, permanente entre dos pasarelas | Acceso remoto de usuarios |
| Qué hace falta en el cliente | Un cliente instalado y configurado | Puede bastar un navegador, o un cliente ligero |
| Paso por cortafuegos ajenos | Problemático: usa protocolos IP propios que muchas redes filtran | Sencillo: viaja por los puertos del tráfico web |
Si la pregunta habla de unir sedes de forma permanente, IPsec. Si habla de teletrabajo, de clientes variados o de atravesar redes ajenas, SSL.
Para el examen
Por qué puerto entra: el 443
Qué consigue: atravesar cortafuegos donde IPsec queda bloqueado
Ejemplo típico: OpenVPN
Autenticar al usuario: PAP, CHAP y EAP
Antes de levantar el túnel hay que comprobar quién se está conectando. Los tres métodos que heredó el mundo de la VPN vienen de PPP, y se preguntan siempre juntos porque forman una escalera de menos a más seguridad.
| Método | Cómo funciona | Qué falla o qué aporta |
|---|---|---|
| PAP | El cliente envía directamente su usuario y su contraseña, en texto ASCII y sin cifrar | Cualquiera que capture el tráfico se lleva la contraseña. Es el peor de los tres y solo sobrevive por compatibilidad |
| CHAP | El servidor envía un reto al cliente; el cliente lo resuelve aplicando su clave y devuelve el resultado, no la clave. El servidor hace la misma operación y compara | La contraseña nunca viaja. Exige que los dos extremos la conozcan de antemano, y el servidor puede repetir el reto durante la sesión para comprobar que sigue siendo el mismo interlocutor |
| EAP | No es un método sino un marco extensible: define cómo se transporta la conversación de autenticación y deja abierto qué método concreto se usa dentro | Permite ir mucho más allá de la contraseña, con certificados electrónicos, tarjetas o credenciales de un solo uso. Es lo que se usa hoy |
La diferencia entre los dos primeros es la pregunta segura del punto: PAP manda la contraseña y CHAP manda la respuesta a un reto. Y el matiz de EAP también cae: no compite con los otros dos porque no es un método de autenticación, es el sobre dentro del cual viaja el método que se elija.
PAP envía la contraseña. CHAP envía la solución de un reto y nunca la contraseña. EAP no autentica: transporta el método que sí lo hace.
Para el examen
PAP: manda la contraseña en claro
CHAP: desafío y respuesta, y lo repite durante la sesión
EAP: un marco que admite varios métodos
Los servidores de autenticación y el modelo AAA
En una organización con cientos de empleados, el servidor de VPN no guarda las credenciales: se apoya en un servidor de autenticación central, que es el mismo que atiende al resto de accesos. Así se dan de alta y de baja las cuentas en un solo sitio y las políticas de contraseña son las mismas para todo.
Esos productos se llaman servidores AAA por las tres funciones que prestan, y esas tres funciones son lo que hay que saber distinguir.
| Función | Qué responde |
|---|---|
| Autenticación | Quién eres. Comprueba las credenciales presentadas |
| Autorización | Qué puedes hacer. Decide si se te concede o no el acceso a un recurso concreto |
| Contabilización | Qué has hecho. Registra el consumo y la actividad, que sirve para auditar y, en un operador, para facturar |
Los cuatro nombres que hay que reconocer son RADIUS, que es el clásico y el más extendido; TACACS+, su equivalente en el mundo de los equipos de red, con la particularidad de que separa las tres funciones en lugar de juntarlas; Diameter, pensado como sucesor de RADIUS y usado sobre todo en redes de operador; y Kerberos, que estrictamente no es un AAA sino un protocolo de autenticación en dominio basado en billetes emitidos por un tercero de confianza, aunque aparezca siempre en la misma lista.
Autenticación es quién eres, autorización es qué puedes hacer y contabilización es qué has hecho. Confundir las dos primeras es el error más repetido.
Para el examen
Qué son las tres aes: autenticación, autorización y contabilidad
RADIUS: sobre UDP; solo cifra la contraseña
TACACS+: sobre TCP; cifra todo y separa las tres aes