À la fin juillet, les développeurs du tunnel VPN WireGuard ont proposé , qui intégreront leur logiciel de création de tunnels VPN au noyau de Linux. Cependant, la date précise de mise en œuvre de cette "idée" reste inconnue. Sous le paragraphe, nous allons discuter de cet outil plus en détail.
/ фото
Brève présentation du projet
WireGuard est un tunnel VPN de nouvelle génération, créé par Jason Donenfeld, le directeur de l'entreprise Edge Security. Le projet a été développé comme et rapide à OpenVPN et IPsec. La première version du produit comptait seulement 4 000 lignes de code. À titre de comparaison, OpenVPN en compte environ 120 000, tandis qu'IPsec en compte 420 000.
Selon pour les développeurs, WireGuard est facile à configurer, et la sécurité du protocole est assurée . : Wi-Fi, LTE ou Ethernet, il est nécessaire de se reconnecter à chaque fois au serveur VPN. En revanche, les serveurs WireGuard ne rompent pas la connexion, même si l'utilisateur reçoit une nouvelle adresse IP.
Bien que WireGuard soit initialement conçu pour le noyau Linux, les développeurs à une version portable de l'outil pour les appareils Android. L'application est encore en cours de développement, mais elle peut déjà être testée. Pour cela, il faut .
Dans l'ensemble, WireGuard est assez populaire et a même été adopté par plusieurs fournisseurs VPN, tels que Mullvad et AzireVPN. De nombreux de cette solution sont disponibles en ligne. Par exemple, , créés par des utilisateurs, et d'autres guides .
Détails techniques
Dans (p.18) est indiqué que la bande passante de WireGuard est quatre fois supérieure à celle d'OpenVPN : 1011 Mbit/s contre 258 Mbit/s, respectivement. WireGuard devance également la solution standard pour Linux, IPsec, qui atteint 881 Mbit/s. Il surpasse également celle-ci en termes de simplicité de configuration.
Après l'échange des clés (la connexion VPN est initialisée presque comme en SSH), WireGuard gère toutes les autres tâches de manière autonome : il n'est pas nécessaire de se soucier du routage, du contrôle d'état, etc. Des efforts supplémentaires pour la configuration ne seront nécessaires que si l'on souhaite utiliser le chiffrement symétrique.

/ фото
Pour l'installation, un système d'exploitation avec un noyau Linux "version 4.1 ou supérieure" est requis. Celui-ci peut être trouvé dans les dépôts des principales distributions Linux.
$ sudo add-apt-repository ppa:hda-me/wireguard
$ sudo apt update
$ sudo apt install wireguard-dkms wireguard-tools
Comme le mentionnent les rédacteurs de xakep.ru, l'assemblage autonome à partir des sources est également simple. Il suffit de lever l'interface et de générer des clés publiques et privées :
$ sudo ip link add dev wg0 type wireguard
$ wg genkey | tee privatekey | wg pubkey > publickey
WireGuard interface pour travailler avec le fournisseur de cryptographie . À la place, un chiffrement par flux est utilisé , cryptographique Poly1305 et ses propres fonctions de hachage cryptographique.
La clé secrète est générée à l'aide de basé sur une courbe elliptique . Lors de l'indexation, les et . Grâce au format de l'horodatage le protocole rejette les paquets avec une valeur d'horodatage inférieure, empêchant ainsi et .
WireGuard utilise la fonction ioctl pour contrôler l'entrée/sortie (qui était auparavant ), ce qui rend le code plus propre et plus simple. Vous pouvez le vérifier en consultant le .
Plans des développeurs
Pour l'instant, WireGuard est un module du noyau hors arbre. Mais l'auteur du projet, Jason Donenfeld , a déclaré qu'il était déjà temps pour une mise en œuvre complète dans le noyau Linux. Car il est plus simple et plus fiable que d'autres solutions. Jason dans ce domaine même Linus Torvalds - il a qualifié le code de WireGuard "œuvre d'art".
Mais personne ne parle encore des dates précises de l'intégration de WireGuard dans le noyau. Et que cela arrive avec la sortie du noyau Linux 4.18 en août. Cependant, il y a une chance que cela se produise dans un avenir très proche : dans la version 4.19 ou 5.0.
Lorsque WireGuard sera ajouté au noyau, les développeurs améliorer l'application pour les appareils Android et commencer à écrire une application pour iOS. De plus, il est prévu de finaliser les mises en œuvre en Go et Rust et de les porter sur macOS, Windows et BSD. Une mise en œuvre de WireGuard pour des systèmes plus "exotiques" est également prévue : , , ainsi qu'un certain nombre d'autres choses intéressantes. Toutes sont énumérées dans le des auteurs du projet.
P.S. Quelques autres articles de notre blog d'entreprise :
Notre principale activité est la fourniture de services cloud :
| | | | | |
Source : habr.com
