Redes · VPN · Seguridad
WireGuard – Ingeniería VPN moderna
WireGuard redefine cómo debería ser un protocolo VPN. Donde OpenVPN e IPSec abarcan cientos de miles de líneas de código, la implementación del kernel de WireGuard tiene menos de 4.000. El resultado es un protocolo más rápido, más simple de auditar y mucho más fácil de configurar correctamente — sin sacrificar fortaleza criptográfica.
Fundamento criptográfico
WireGuard usa un stack criptográfico fijo y moderno: Curve25519 para intercambio de claves, ChaCha20-Poly1305 para cifrado autenticado, BLAKE2s para hashing y SipHash para claves de tablas hash. No hay vulnerabilidades en la fase de negociación ni problemas de agilidad de algoritmos. Cada conexión usa las mismas primitivas, y todas son robustas.
Claves pre-compartidas y resistencia cuántica
Añadir una PresharedKey a cada relación entre peers agrega una capa de clave simétrica sobre el handshake Diffie-Hellman. Esto hace que el túnel sea resistente a ataques de tipo harvest-now, decrypt-later de futuros ordenadores cuánticos. Es una sola línea en la configuración y una mejora de seguridad significativa para cualquier infraestructura de larga duración.
Split tunnelling vs túnel completo
AllowedIPs = 0.0.0.0/0 enruta todo el tráfico del cliente a través de la VPN. El split tunnelling — restringir AllowedIPs solo a la subred de la VPN — mantiene el tráfico local de internet directo mientras sigue proporcionando acceso seguro a servicios privados. Para escenarios de homelab y acceso remoto, el split tunnelling es casi siempre la opción correcta por defecto: menor latencia, sin fugas de DNS para tráfico público, y el servidor no es responsable de toda la navegación del cliente.
- Los clientes itinerantes mantienen sesiones a través de cambios de IP sin interrupciones
- La implementación a nivel de kernel significa una sobrecarga de latencia cercana a cero
- La autenticación de peers es puramente criptográfica — sin usuario/contraseña