VPN-Anhänger warten bereits länger sehnsüchtig darauf, Wireguard im Standardkernel zu sehen. Nun hat Linus Torvalds den Code in sein Repository geholt.
“WireGuard ist ein sicherer, schneller und einfach zu benutzender Ersatz für IPSec, der moderne Kryptografie und clevere Netzwerk-Tricks verwendet.” heißt es in der Hilfe zum neuen Kernelmodul. Nach dem Merge gibt es nun unter “linux/drivers/net/” ein neues Verzeichnis namens “wireguard”, das den Code enthält. Unter “/tools/testing/selftests/” sind zudem einige Selbsttests zu finden. Die testen unter anderem über das Skript “netns.sh” die Verbindung zwischen Namespaces über “iperf3”.
Hauptentwickler Jason Donenfeld hatte eine Aufnahme bereits wesentlich früher anvisiert. Doch die Kernelentwickler äußerten immer wieder Nachbesserungsbedarf. Zuletzt ging es zum Beispiel darum, dass die Software das Krypto-API des Kernel verwenden soll. Donenfeld hatte ursprünglich geplant, für Wireguard eine eigene Bibliothek namens Zinc zu verwenden. Nun greift Wireguard, wie andere Module des Kernels auch, auf das offizielle Krypto-API zurück.
Damit scheint der Code auch bereit für eine Aufnahme zu sein. Zwar gab es vereinzelt auch Fälle, in denen Linus aufgenommenen Code wieder aus dem Vorab-Kernel geworfen hat, weil er auf Fehler stieß. Aber die Open-VPN-Alternative ist bereits seit geraumer Zeit in Arbeit und auch vielfach in freier Wildbahn im Einsatz. Nach einem Umbau des Krypto-API durch Entwickler Jason Donenfeld dürfte einer Aufnahme des Codes in den Kernel 5.6 also wenig entgegenstehen.
Die Macher der Tunnellösung versprechen, dass ihre Software so einfach funktioniert wie SSH, aber auch Roaming zwischen IP-Adressen erlaubt. Zugleich sei die verwendete Kryptografie sicher und biete die im Vergleich zu OpenVPN geringe Menge an Code weniger Angriffsfläche. Schneller sei Wireguard auch, weil es direkt im Kernel angesiedelt ist. Dazu erzeugt es für die Kommunikation eigene Interfaces im Network-Namespace, die sich auch in Container verschieben lassen. Die Tunnel zwischen zwei Wireguard-Interfaces sind verschlüsselt, die Verschlüsselung funktioniert über private und öffentliche Schlüssel. Mehr Informationen liefert die Webseite.




