WireGuard

WireGuard
Parte de núcleo Linux
Logo oficial de WireGuard.
Información general
Tipo de programa Red privada virtual
Autor Jason A. Donenfeld
Desarrollador Jason A. Donenfeld
Lanzamiento inicial 2015
Licencia GPLv2
Información técnica
Programado en C (módulo de kernel de Linux), Go (implementación del espacio de usuario)
Versiones
Última versión estable 1.0.20220627 (info) ( 27 de junio de 2022)
Archivos legibles
WireGuard profile
Archivos editables
WireGuard profile
Enlaces

WireGuard es una aplicación de software libre y de código abierto y un protocolo de comunicación que implementa técnicas de red privada virtual (VPN) para crear conexiones seguras punto a punto en configuraciones enrutadas o puenteadas.[1]​ Se ejecuta como un módulo dentro del núcleo Linux y tiene como objetivo un mejor rendimiento que los protocolos de tunelización IPsec y OpenVPN.[2]​ Fue escrito por Jason A. Donenfeld y se publica bajo la segunda versión de la GNU General Public License (GPL).[3]​ El sitio web oficial describe el protocolo como un trabajo en progreso.[4]

Características

[editar]

WireGuard tiene como objetivo proporcionar una VPN que sea simple y altamente efectiva. Una revisión realizada por ArsTechnica observó que tecnologías VPN populares como OpenVPN e IPsec son a menudo complejas de configurar, desconectan fácilmente (en ausencia de configuración adicional), toman un tiempo considerable negociando reconexiones, pueden usar cifrados obsoletos y tienen un código relativamente masivo (de 400,000 a 600,000 líneas de código para los dos ejemplos dados) lo que hace que sea más difícil encontrar bugs.[5]

El diseño de WireGuard busca reducir estos problemas, haciendo el túnel más seguro y fácil de administrar por defecto. Mediante el uso de versionado de paquetes de criptografía, se centra en cifradores que se consideran entre los métodos de encriptación actuales más seguros, y también tiene una base de código de alrededor de 4000 líneas, aproximadamente el 1% de OpenVPN o IPsec, lo que facilita las auditorías de seguridad. Ars Technica informó que en sus pruebas, los túneles estables fueron fáciles de crear con WireGuard, en comparación con las alternativas, y comentó que sería "difícil regresar" a largos retrasos de reconexión, en comparación con las reconexiones instantáneas y "sin disparates" de WireGuard.[5]

Protocolo

[editar]

WireGuard utiliza Curve25519 para el intercambio de claves, ChaCha20 para la encriptación, Poly1305 para la autenticación de datos, SipHash para claves de hashtables y BLAKE2s para el hashing.[3]​ Soporta la capa 3 para IPv4 e IPv6 y puede encapsular v4 en v6 y viceversa.[6]

En mayo de 2019, investigadores del INRIA publicaron una prueba del protocolo verificada por una máquina, producida utilizando el asistente de pruebas de CryptoVerif.[7]

Historia

[editar]

Las primeras snapshots de la base de código existen desde el 30 de junio de 2016.[8]​ Cuatro de los primeros usuarios de WireGuard fueron los proveedores de servicios de VPN Mullvad,[9]​ AzireVPN,[10]IVPN[11]​ y cryptostorm.[12]​ WireGuard ha recibido donaciones de Mullvad, Private Internet Access, IVPN y la NLnet Foundation.[13]

A fecha de junio de 2018, los desarrolladores de WireGuard recomiendan tratar el código y el protocolo como experimentales, y advierten que aún no han logrado una versión estable compatible con el seguimiento de CVE de cualquier vulnerabilidad de seguridad que pueda descubrirse.[14][15]

El 9 de diciembre de 2019, David Miller, responsable principal de la pila de red de Linux, aceptó los parches de WireGuard en el árbol de mantenimiento "net-next", para su inclusión en un kernel próximo.[16][17][18]​ El 28 de enero de 2020, Linus Torvalds fusionó el árbol net-next de David Miller, y WireGuard ingresa al árbol principal del núcleo Linux.[19]

Recepción

[editar]

El senador de Oregón, Ron Wyden, recomendó al National Institute of Standards and Technology (NIST) que evalúen WireGuard como reemplazo de tecnologías existentes como IPsec y OpenVPN.[20]

Este sistema ha sido recibido muy favorablemente por toda la comunidad, ganando mención en docenas de canales de tecnología, debido a su gran velocidad comparado con sistemaas como OpenVPN y un proceso de instalación muy sencillo [1]

Implementaciones

[editar]

Entre las implementaciones del protocolo WireGuard se incluyen:

Programas de espacio de usuario que soportan WireGuard

[editar]

Entre los programas de espacio de usuario que soportan WireGuard se incluyen:

Véase también

[editar]
  • Secure Shell (SSH), un protocolo de red criptográfico utilizado para proteger los servicios a través de una red no segura.
  • OpenVPN, un VPN de que ha ganado amplia fama por su gran uso en la industria

Referencias

[editar]
  1. «Wireguard VPN | How to use it?». Proxy Server. Consultado el 11 de febrero de 2020. 
  2. Preneel, Bart; Vercauteren, Frederik (eds.). Applied Cryptography and Network Security. Springer. ISBN 978-3-319-93387-0. Archivado desde el original el 18 de febrero de 2019. Consultado el 25 de junio de 2018. 
  3. a b «WireGuard: fast, modern, secure VPN tunnel». WireGuard. Archivado desde el original el 28 de abril de 2018. Consultado el 28 de abril de 2018. 
  4. «Work in Progress». Wireguard.com. 
  5. a b Salter, Jim (26 de agosto de 2018). «WireGuard VPN review: A new type of VPN offers serious advantages». Ars Technica. Archivado desde el original el 20 de septiembre de 2018. 
  6. Donenfeld, Jason A. «Introduction & Motivation». WireGuard: Next Generation Kernel Network Tunnel (PDF). Archivado desde el original el 4 de marzo de 2018. 
  7. Benjamin Lipp, Bruno Blanchet, Karthikeyan Bhargavan (2019), A Mechanised Cryptographic Proof of the WireGuard Virtual Private Network Protocol, Research Report RR-9269, Paris: Inria, hal-02100345 .
  8. https://download.wireguard.com/monolithic-historical/
  9. Mason, John (13 de febrero de 2019). «Mullvad Review». thebestwpn. 2. Strong Tunneling Protocols – OpenVPN & WireGuard. Archivado desde el original el 16 de marzo de 2019. Consultado el 8 de abril de 2019. 
  10. Mason, John (19 de febrero de 2019). «AzireVPN Review». thebestvpn. 2. Impressive Protocols and Encryption. Archivado desde el original el 8 de abril de 2019. Consultado el 8 de abril de 2019. 
  11. Pestell, Nick. «Introducing Wireguard». Consultado el 22 de septiembre de 2019. 
  12. «WireGuard support added!». cryptostorm blog. 5 de abril de 2019. Archivado desde el original el 9 de diciembre de 2019. Consultado el 9 de diciembre de 2019. 
  13. «Donations». WireGuard. Archivado desde el original el 28 de abril de 2018. Consultado el 28 de abril de 2018. 
  14. «About The Project». WireGuard. Work in Progress. Archivado desde el original el 25 de junio de 2018. Consultado el 25 de junio de 2018. 
  15. «Installation». WireGuard. Archivado desde el original el 26 de junio de 2018. Consultado el 26 de junio de 2018. 
  16. «e7096c131e5161fa3b8e52a650d7719d2857adfd - pub/scm/linux/kernel/git/davem/net-next - Git at Google». kernel.googlesource.com. 
  17. «LKML: David Miller: Re: [PATCH net-next v2] net: WireGuard secure network tunnel». lkml.org. 
  18. «[ANNOUNCE] WireGuard merged to net-next, on its way to Linux 5.6». web.archive.org. 9 de enero de 2020. Archivado desde el original el 9 de enero de 2020. Consultado el 16 de marzo de 2020. 
  19. Torvalds, Linus. «index : kernel/git/torvalds/linux.git». Linux kernel source tree. Kernel.org. Consultado el 2 de febrero de 2020. 
  20. «US Senator Recommends Open-Source WireGuard To NIST For Government VPN». Phoronix. 30 de junio de 2018. Archivado desde el original el 5 de agosto de 2018. Consultado el 5 de agosto de 2018. 
  21. Donenfeld, Jason (7 de junio de 2019). «WireGuard: fast, modern, secure VPN tunnel». Consultado el 16 de junio de 2019. 
  22. Krasnov, Vlad (18 de diciembre de 2018). «BoringTun, a userspace WireGuard implementation in Rust». Cloudflare Blog (en inglés estadounidense). Archivado desde el original el 4 de abril de 2019. Consultado el 29 de marzo de 2019. 
  23. «CloudFlare Launches "BoringTun" As Rust-Written WireGuard User-Space Implementation». phoronix.com. Consultado el 29 de marzo de 2019. 
  24. «WireGuard in NetworkManager». 
  25. «systemd». 
  26. «Intel ConnMan 1.38 Released With WireGuard Support». 
  27. «Mozilla VPN Sicher, schnell und zuverlässig – auf jedem Gerät, egal wo du bist.» (en alemán). 

Otras lecturas

[editar]

Enlaces externos

[editar]