jelentős VPN kiadás , amely a WireGuard komponenseinek a kernel fő ágba történő szállítását jelzi és a fejlesztés stabilizálását. A Linux kernelbe beépített kód további biztonsági auditon, amelyet egy, az ilyen ellenőrzésekre szakosodott független cég végzett. Az audit nem tárt fel semmilyen problémát.
Mivel a WireGuard most a Linux kernel fő ága alatt fejlődik, a disztribúciók és a felhasználók, akik az régi kernel verziókat használják, egy tárolót készítettek elő . A tároló magában foglalja a WireGuard backportolt kódját és a compat.h réteget az régi kernel verziókkal való kompatibilitás biztosítására. Megjegyzendő, hogy ameddig a fejlesztőknek lehetősége van és a felhasználóknak szükségük van rá, az elkülönített javítások változata működőképes marad. Jelenlegi formájában az elkülönített WireGuard verzió használható az és és patch formájában elérhető a Linux kernelhez és . Az olyan disztribúciók, amelyek a legfrissebb kernelt használják, mint például az Arch, Gentoo és
Fedora 32, lehetőséget kapnak a WireGuard használatára a 5.6-os kernel frissítésével.
A fejlesztés fő folyamata most a tárolóban zajlik , amely tartalmazza a WireGuard projekttel kapcsolatos módosításokkal együtt a teljes Linux kernel fájlszerkezetét. A tárolóból származó javításokat felül fogják vizsgálni a fő kernelbe való beillesztésre és rendszeresen átviszik az net/net-next ágakba. A felhasználótérben futtatható segédprogramok és szkriptek, mint például a wg és wg-quick fejlesztése a , amely használható csomagok létrehozására a disztribúciókban.
It should be noted that the WireGuard VPN is based on modern encryption methods, providing very high performance, ease of use, and has proven itself well in several large implementations handling significant traffic volumes. The project has been developing since 2015, passed an audit and of the applied encryption methods. Support for WireGuard is already integrated into NetworkManager and systemd, and the kernel patches are included in the core distributions , Mageia, Alpine, Arch, Gentoo, OpenWrt, NixOS, és .
WireGuard employs a key routing concept that ties a private key to each network interface and uses it to connect with public keys. The exchange of public keys for connection establishment occurs similarly to SSH. For key agreement and connection without launching a separate user-space daemon, the Noise_IK mechanism from , similar to maintaining authorized_keys in SSH, is applied. Data transmission is done through encapsulation in UDP packets. The VPN server IP address can change (roaming) without interrupting the connection, with automatic client reconfiguration.
For encryption a stream cipher and a message authentication algorithm (MAC) , developed by Daniel Bernstein (), Tanja Lange
(Tanja Lange) és Peter Schwabe. A ChaCha20 és a Poly1305 gyorsabb és biztonságosabb alternatívái az AES-256-CTR-nek és a HMAC-nek, amelyek szoftveres megvalósítása lehetővé teszi az állandó végrehajtási idő elérését, anélkül hogy külön hardvert igényelne. A közös titkos kulcs generálásához elliptikus görbéken alapuló Diffie-Hellman protokollt alkalmaznak. , amelyet Daniel Bernstein is javasolt. A hash-eléshez a következő algoritmust használják: .
Régi A WireGuard teljesítménye 3,9-szer nagyobb átviteli sebességet és 3,8-szor jobb válaszidőt mutatott az OpenVPN-nel (256-bit AES HMAC-SHA2-256) összehasonlítva. Az IPsec-hez (256-bit ChaCha20+Poly1305 és AES-256-GCM-128) viszonyítva a WireGuard teljesítményben enyhe előnyt mutat (13-18%) és csökkentett késleltetést (21-23%). A projekt weboldalán közzétett teszteredmények az WireGuard régi, elkülönített megvalósítására vonatkoznak, és nem megfelelő minőségűnek minősülnek. A tesztelés óta a WireGuard és az IPsec kódja tovább lett optimalizálva, és most gyorsabban működik. A teljes körű tesztelés, amely a kernelbe integrált megvalósítást fedi le, eddig még nem történt meg. Ennek ellenére megjegyzik, hogy a WireGuard bizonyos helyzetekben továbbra is megelőzi az IPsec-et a több szálon való futás miatt, míg az OpenVPN továbbra is nagyon lassú.
Forrás: opennet.ru
