ProHoster > WireGuard wird in den Linux-Kernel „kommen“ – warum?
WireGuard wird in den Linux-Kernel „kommen“ – warum?
Ende Juli schlugen die Entwickler den WireGuard VPN-Tunnel vor Patch-Set, wodurch ihre VPN-Tunneling-Software Teil des Linux-Kernels wird. Das genaue Datum der Umsetzung der „Idee“ bleibt jedoch unbekannt. Im Folgenden werden wir ausführlicher auf dieses Tool eingehen.
WireGuard ist ein VPN-Tunnel der nächsten Generation, der von Jason A. Donenfeld, CEO von Edge Security, entwickelt wurde. Das Projekt wurde entwickelt als vereinfacht und eine schnelle Alternative zu OpenVPN und IPsec. Die erste Version des Produkts enthielt nur 4 Codezeilen. Zum Vergleich: OpenVPN verfügt über etwa 120 Leitungen und IPSec über 420.
Auf Text Entwicklern ist WireGuard einfach zu konfigurieren und Protokollsicherheit wird erreicht durch bewährte kryptografische Algorithmen. Beim Netzwerkwechsel: WLAN, LTE oder Ethernet müssen sich jedes Mal neu mit dem VPN-Server verbinden. WireGuard-Server brechen die Verbindung nicht ab, auch wenn der Benutzer eine neue IP-Adresse erhalten hat.
Trotz der Tatsache, dass WireGuard ursprünglich für den Linux-Kernel entwickelt wurde, haben die Entwickler gesorgt und über eine portable Version des Tools für Android-Geräte. Die Anwendung ist noch nicht vollständig entwickelt, aber Sie können sie jetzt ausprobieren. Dafür benötigen Sie Werden Sie einer der Tester.
В amtliche Dokumentation (S. 18) Es wird darauf hingewiesen, dass der Durchsatz von WireGuard viermal höher ist als der von OpenVPN: 1011 Mbit/s gegenüber 258 Mbit/s. WireGuard ist auch der Standardlösung für Linux IPsec voraus – es verfügt über 881 Mbit/s. Es übertrifft es auch in der einfachen Einrichtung.
Nachdem die Schlüssel ausgetauscht wurden (die VPN-Verbindung wird ähnlich wie SSH initialisiert) und die Verbindung hergestellt ist, erledigt WireGuard alle anderen Aufgaben selbstständig: Sie müssen sich nicht um Routing, Statuskontrolle usw. kümmern. Es fallen lediglich zusätzliche Konfigurationsaufwände an erforderlich, wenn Sie die symmetrische Verschlüsselung verwenden möchten.
Zur Installation benötigen Sie eine Distribution mit einem Linux-Kernel älter als 4.1. Es ist in den Repositories der wichtigsten Linux-Distributionen zu finden.
Wie die Herausgeber von xakep.ru anmerken, ist die Selbstzusammenstellung aus Quelltexten ebenfalls einfach. Es reicht aus, die Schnittstelle zu öffnen und öffentliche und private Schlüssel zu generieren:
$ sudo ip link add dev wg0 type wireguard
$ wg genkey | tee privatekey | wg pubkey > publickey
WireGuard verwendet nicht Schnittstelle für die Zusammenarbeit mit einem Krypto-Anbieter Cryptoapi. Stattdessen wird eine Stream-Verschlüsselung verwendet ChaCha20, kryptographisch Imitationseinsatz Poly1305 und proprietäre kryptografische Hash-Funktionen.
In diesem Fall verwendet WireGuard die ioctl-Funktion zur Steuerung der E/A (zuvor verwendet). Netlink), was den Code sauberer und einfacher macht. Sie können dies überprüfen, indem Sie sich Folgendes ansehen Konfigurationscode.
Entwicklerpläne
Derzeit ist WireGuard ein Out-of-Tree-Kernelmodul. Aber der Autor des Projekts ist Jason Donenfeld sagt, dass die Zeit für eine vollständige Implementierung im Linux-Kernel gekommen ist. Weil es einfacher und zuverlässiger ist als andere Lösungen. Jason in dieser Hinsicht unterstützt die Sogar Linus Torvalds selbst bezeichnete den WireGuard-Code als „Kunstwerk“.
Aber niemand spricht über die genauen Termine für die Einführung von WireGuard in den Kernel. UND kaum Dies wird mit der Veröffentlichung des Linux-Kernels 4.18 im August geschehen. Es besteht jedoch die Möglichkeit, dass dies in sehr naher Zukunft geschieht: in Version 4.19 oder 5.0.
Wenn WireGuard zum Kernel hinzugefügt wird, müssen Entwickler will es Finalisieren Sie die Anwendung für Android-Geräte und beginnen Sie mit dem Schreiben einer Anwendung für iOS. Es gibt auch Pläne, Implementierungen in Go und Rust abzuschließen und diese auf macOS, Windows und BSD zu portieren. Es ist auch geplant, WireGuard für „exotischere Systeme“ zu implementieren: DPDK, FPGA, sowie viele andere interessante Dinge. Alle von ihnen sind in aufgeführt Aufgabenliste Autoren des Projekts.
PS: Noch ein paar Artikel aus unserem Unternehmensblog: