Túneles VPN y encriptación de canales
Resumen breve
Una VPN (Virtual Private Network) es un conjunto de tecnologías que permiten crear un canal seguro sobre una red insegura (normalmente Internet). Objetivos clave: privacidad (cifrado), integridad (autenticación de mensajes), autenticidad (autenticación mutua de nodos/usuarios) y disponibilidad (resistencia a fallos y bloqueos). En la infraestructura corporativa, la VPN cierra escenarios de site-to-site, acceso remoto, conectividad interconectada y servicio-a-service (machine-to-machine). La práctica moderna es minimizar las redes L3 «planas» y aplicar la segmentación, el principio de menos privilegios y la transición gradual a la Confianza Cero.
Conceptos básicos
La tunelización es la encapsulación de paquetes de un protocolo en otro (por ejemplo, IP dentro de UDP), lo que permite «llevar» un plan de direcciones y políticas privadas a través de una red pública.
Cifrado: protección del contenido del tráfico (AES-GCM, ChaCha20-Poly1305).
Autenticación: autenticación de nodos/usuarios (certificados X.509, PSK, claves SSH).
Integridad - Protección de sustitución (HMAC, AEAD).
PFS (Perfect Forward Secrecy): las claves de sesión no se extraen a largo plazo; el compromiso de la clave a largo plazo no revela las sesiones pasadas.
Scripts típicos
1. Site-to-Site (L3): oficina ↔ centro de datos/nube; normalmente un router IPsec/IKEv2, estático o dinámico.
2. Acceso remoto (User-to-Site): empleados de portátiles/móviles; OpenVPN/WireGuard/IKEv2, MFA, split/full-tunnel.
3. Hub-and-Spoke: todas las sucursales al hub central (on-prem o Cloud Transit).
4. Mesh: una red de sucursales/microdatacents completamente conectada (enrutamiento dinámico + IPsec).
5. Cloud-to-Cloud: canales interconectados (túneles IPsec, VPN/Transit Gateway Cloud, SD-WAN).
6. Service-to-Service: conexiones de máquina entre clústeres/NM (WireGuard, IPsec en CNI/SD-WAN, mTLS a nivel de servicio).
Protocolos VPN y donde son fuertes
IPsec (ESP/IKEv2) es el «estándar de oro» de Site-to-Site
Capas: IKEv2 (intercambio de claves), ESP (cifrado/autenticación de tráfico).
Modos: túnel (generalmente), transporte (raramente, host a host).
Ventajas: hardware offload, madurez, interoperabilidad, ideal para autopistas y puertas de enlace en la nube.
Contras: dificultad de personalización, sensibilidad a NAT (resuelto por NAT-T/UDP-4500), más «rituales» a la hora de alinear políticas.
Uso: sucursales, centros de datos, nubes, altos requisitos de rendimiento.
OpenVPN (TLS 1. 2/1. 3)
Capas: L4/L7, tráfico sobre UDP/TCP; a menudo un esquema similar a DTLS por UDP.
Pros: flexible, bien transitado NAT y DPI en la habilidad de enmascarar (tcp/443), un ecosistema rico.
Contras: mayor sobrecarga que IPsec/WireGuard; necesita una criptoconfiguración ordenada.
Uso: acceso remoto, ambientes mixtos cuando la «perforación» de la red es importante.
WireGuard (NoiseIK)
Capas: L3 sobre UDP; base de código minimalista, criptomonedas modernas (Curve25519, ChaCha20-Poly1305).
Ventajas: alto rendimiento (especialmente en móviles/ARM), fácil confecciones, roaming rápido.
Contras: no hay PKI incorporado; la administración de claves/identidades requiere procesos alrededor.
Uso: acceso remoto, conectividad interclúster, S2S en la pila moderna, DevOps.
Túneles SSH (L7)
Типы: Local/Remote/Dynamic (SOCKS).
Pros: herramienta de «bolsillo» para acceso por puntos/administración.
Contras: no se escala como una VPN de chasis, la administración de claves y la auditoría son más complejas.
Uso: acceso puntual a los servicios, «periscopio» a la red cerrada, jump-host.
GRE/L2TP/… (encapsulación sin cifrado)
Asignación: crea un túnel de L2/L3, pero no cifra. Generalmente se combina con IPsec (L2TP sobre IPsec/GRE sobre IPsec).
Uso: casos raros en los que se necesita la naturaleza L2 del canal (protocolos antiguos/VLANs aisladas sobre L3).
Configuración y criptografía
Cifrados: AES-GCM-128/256 (aceleración de hardware, AES-NI), ChaCha20-Poly1305 (móvil/sin AES-NI).
KECH/grupos: ECDH (Curve25519, secp256r1), grupos DH ≥ 2048; habilite PFS.
Firmas/PKI: ECDSA/Ed25519 preferiblemente; automatice la liberación/rotación, utilice OCSP/CRL.
Los plazos de vida de las claves son: IKE SA/Child SA corto, rekey regular (por ejemplo, 8-24 h, por tráfico/tiempo).
MFA: para VPN personalizadas - TOTP/WebAuthn/Push.
Rendimiento y confiabilidad
MTU/MSS: configuración correcta de PMTU (generalmente 1380-1420 para túneles UDP); MSS-clamp en los nodos fronterizos.
DPD/MOBIKE/Keepalive: Detección rápida de «caídos», roaming ininterrumpido (IKEv2 MOBIKE, WireGuard PersistentKeepalive).
Enrutamiento: ECMP/Multipath, BGP encima de los túneles para el altavoz.
Offload: aceleradores de cifrado de hardware, SmartNIC/DPU, núcleo Linux (xfrm, kernel WireGuard).
Romper bloqueos: cambiar puertos/transportes, ofuscar un apretón de manos (donde legalmente es admisible).
QoS: clasificación y prioridad del tráfico, control de jitter para flujos de tiempo real.
Topologías y diseño
Full-tunnel vs Split-tunnel:- Full: todo el tráfico a través de VPN (control/seguridad más alto, carga más grande).
- Split: sólo las subredes deseadas (ahorros, menos retrasos, mayores requisitos de protección de los canales «bypass»).
- Segmentación: túneles/VRF/políticas individuales para entornos (Prod/Stage), dominios de datos (PII/financial), proveedores.
- Nubes: Cloud VPN/Transit Gateways (AWS/GCP/Azure), IPsec S2S, enrutamiento a través de un centro de tránsito centralizado.
- SD-WAN/SASE: overlays con selección automática de canales, telemetría incorporada y políticas de seguridad.
Seguridad del canal
Firewall/ACL: alw-lists explícitos por puerto/subred, deny predeterminado.
Seguridad DNS: DNS corporativo forzado a través de un túnel, protección contra fugas (IPv6, WebRTC).
Políticas del cliente: kill-switch (bloque de tráfico cuando el túnel cae), prohibición de split-DNS cuando se requiere cumplimiento.
Registros y auditorías: centralice los registros de apretones de manos, autenticación, rekey, rechazados por SA.
Secretos: HSM/vendedores KMS, rotación, minimización PSK (preferiblemente certificados o claves WG).
Dispositivos: verificación de conformidad (OS, parches, cifrado de disco, EDR), NAC/MDM.
Observabilidad, SLO/SLA y alerting
Métricas clave:- Disponibilidad del túnel (% aptime).
- Latency, jitter, packet loss a través de rutas clave.
- Ancho de banda (p95/p99), CPU/IRQ de cifrado.
- Frecuencia de eventos rekey/DPD, errores de autenticación.
- Errores de fragmentación/PMTU.
- "Disponibilidad de VPN-hub ≥ 99. 95% en mes"
- "p95 demoras entre DC-A y DC-B ≤ 35 ms'.
- «< 0. 1% de IKE SA fallidos por hora".
- Túnel Down> X segundos; ráfaga de DPD; el crecimiento de los errores handshake; degradación p95> del umbral; errores CRL/OCSP.
Operaciones y ciclo de vida
PKI/certificados: liberación/actualización automática, TTL cortos, revocar inmediatamente cuando se comprometa.
Rotación de llaves: regular, con la conversión por etapas de las fiestas.
Cambios: planes de cambio con rebote (antiguo/nuevo SA paralelo), ventanas de servicio.
Break-glass: cuentas/claves de repuesto, acceso manual documentado a través de jump-host.
Incidentes: en caso de sospecha de compromiso - revocación de certificados, rotación PSK, fuerza rekey, cambio de puertos/direcciones, auditoría de registros.
Conformidad y aspectos jurídicos
GDPR/PII: cifrado en tránsito obligatorio, minimización del acceso, segmentación.
PCI DSS: cifrados fuertes, MFA, registros de acceso, segmentación de zonas cardholder.
Restricciones locales de tráfico/criptomonedas: cumpla con los requisitos de las jurisdicciones (exportación de criptomonedas, DPI, bloqueos).
Registros: almacenamiento de acuerdo con la política (retoque, integridad, acceso).
Zero Trust, SDP/ZTNA vs clásico VPN
VPN clásica: distribuye acceso a la red (a menudo amplio).
ZTNA/SDP: da acceso a una aplicación/servicio específico después de una verificación contextual (identidad, estado del dispositivo, riesgo).
Modelo híbrido: deje una VPN para las autopistas/S2S, y para los usuarios, una baldosa ZTNA para las aplicaciones deseadas; eliminar gradualmente los conjuntos «planos».
Cómo seleccionar un protocolo (matriz breve)
Entre sucursales/nubes: IPsec/IKEv2.
Acceso remoto a los usuarios: WireGuard (si necesita un cliente fácil y rápido) o OpenVPN/IKEv2 (si necesita PKI/políticas maduras).
Alta «perforación» a través del proxy/DPI: OpenVPN-TCP/443 (con conciencia de las facturas) u ofuscación (donde se permite).
Móvil/itinerancia: WireGuard o IKEv2 MOBIKE.
L2 encima de L3: GRE/L2TP junto con IPsec (cifrado obligatorio).
Lista de comprobación de implementación
1. Definir dominios de acceso (Prod/Stage/Back-office) y el principio de privilegios mínimos.
2. Seleccionar protocolo/topología (hub-and-spoke vs mesh), planificar direccionamiento y enrutamiento.
3. Aprobar criptoprofilo (AES-GCM/ChaCha20, ECDH, PFS, TTL breves).
4. Configurar PKI, MFA, política de plazos y revisiones.
5. Configurar MTU/MSS, DPD/MOBIKE, keepalive.
6. Incluye logaling, dashboards, métricas SLO y alertas.
7. Realizar pruebas de carga/feover (caída del eje, rekey-burst, cambio de link).
8. Documentar break-glass y el procedimiento de rotación.
9. Llevar a cabo una formación de los usuarios (clientes, políticas).
10. Revisar periódicamente los accesos y los informes de auditoría.
Errores frecuentes y cómo evitarlos
L2TP/GRE sin IPsec: no hay cifrado → siempre agregue IPsec.
MTU incorrecto: fragmentación/drops → configurar MSS-clamp, comprobar PMTU.
PSK «para siempre»: claves obsoletas → rotación, transición a certificados/Ed25519.
Redes amplias en split-tunnel: fugas de tráfico → rutas/políticas claras, DNS sólo a través de VPN.
Un único «superhub» sin reservas: SPOF → activo-activo, ECMP, varias regiones.
No hay control de apretones de manos: caídas «mudas» → DPD/alarmas/baratos.
Ejemplos de configuración
WireGuard (Linux) — `wg0. conf`
ini
[Interface]
Address = 10. 20. 0. 1/24
PrivateKey = <server_private_key>
ListenPort = 51820
Client 1
[Peer]
PublicKey = <client1_public_key>
AllowedIPs = 10. 20. 0. 10/32
PersistentKeepalive = 25
Cliente:
ini
[Interface]
Address = 10. 20. 0. 10/32
PrivateKey = <client_private_key>
DNS = 10. 20. 0. 2
[Peer]
PublicKey = <server_public_key>
Endpoint = vpn. example. com:51820
AllowedIPs = 10. 20. 0. 0/24, 10. 10. 0. 0/16
PersistentKeepalive = 25
strongSwan (IPsec/IKEv2) — `ipsec. conf`
conf config setup uniqueids=never
conn s2s keyexchange=ikev2 ike=aes256gcm16-prfsha384-ecp256!
esp=aes256gcm16-ecp256!
left=%any leftid=@siteA leftsubnet=10. 1. 0. 0/16 right=vpn. remote. example rightsubnet=10. 2. 0. 0/16 dpdaction=restart dpddelay=30s rekey=yes auto=start
`ipsec. secrets`:
conf
: RSA siteA. key
OpenVPN (UDP, TLS 1. 3) — `server. conf`
conf port 1194 proto udp dev tun tls-version-min 1. 3 cipher AES-256-GCM data-ciphers AES-256-GCM:CHACHA20-POLY1305 auth SHA256 user nobody group nogroup topology subnet server 10. 30. 0. 0 255. 255. 255. 0 push "redirect-gateway def1"
push "dhcp-option DNS 10. 30. 0. 2"
keepalive 10 60 persist-key persist-tun verb 3
Práctica para plataformas de iGaming/fintech
Segmentación: túneles individuales para integraciones de pago, back-office, proveedores de contenido, antifraude; aislar los dominios PII/de pago.
Políticas de acceso rígidas: machine-to-machine por puerto/subred específica (allow-list por PSP, reguladores).
Observabilidad: p95 Time-to-Wallet puede degradarse debido a incidentes VPN - monitoree la conectividad a PSP/bancos críticos.
Cumplimiento: almacena registros de acceso y autenticación, implementa MFA, pentests de canales regulares.
FAQ
¿Es posible hacer full-mesh entre todas las sucursales?
Sólo si hay automatización y enrutamiento dinámico; de lo contrario, el aumento de la complejidad. A menudo es más rentable que hub-and-spoke + excepciones locales.
¿Es necesario cifrar el tráfico «interno» entre las nubes?
Sí. Los backends públicos y las autopistas interregionales requieren IPsec/WireGuard y ACL estrictas.
¿Qué es más rápido - AES-GCM o ChaCha20-Poly1305?
En x86 con AES-NI - AES-GCM; en ARM/móviles a menudo gana ChaCha20-Poly1305.
¿Cuándo cambiar a ZTNA?
Cuando el acceso a la red a través de una VPN se ha vuelto «amplio» y las aplicaciones se pueden publicar puntualmente con autenticación contextual y validación de dispositivos.
Resultado
Una arquitectura VPN confiable no es solo «protocolo y puerto». Se trata de un criptoprofilo con PFS, segmentación pensada, observabilidad con SLO rígidos, disciplina PKI/rotaciones y transición controlada a ZTNA donde el acceso a la red es redundante. Siguiendo la lista de verificación y la matriz de selección anterior, construirá una conectividad estable y manejable para los sistemas distribuidos modernos.