ProHoster > WireGuard vil "komme" til Linux-kernen - hvorfor?
WireGuard vil "komme" til Linux-kernen - hvorfor?
I slutningen af juli foreslog udviklerne af WireGuard VPN-tunnelen patch sæt, som vil gøre deres VPN-tunneling-software til en del af Linux-kernen. Den nøjagtige dato for implementering af "ideen" er dog stadig ukendt. Under snittet vil vi tale om dette værktøj mere detaljeret.
WireGuard er en næste generations VPN-tunnel skabt af Jason A. Donenfeld, administrerende direktør for Edge Security. Projektet er udviklet som forenklet og et hurtigt alternativ til OpenVPN og IPsec. Den første version af produktet indeholdt kun 4 tusind linjer kode. Til sammenligning har OpenVPN omkring 120 tusind linjer og IPSec - 420 tusind.
On ifølge udviklere, er WireGuard nem at konfigurere, og protokolsikkerhed opnås gennem dokumenterede kryptografiske algoritmer. Ved skift af netværk: Wi-Fi, LTE eller Ethernet skal genoprette forbindelse til VPN-serveren hver gang. WireGuard-servere afslutter ikke forbindelsen, selvom brugeren har modtaget en ny IP-adresse.
På trods af at WireGuard oprindeligt var designet til Linux-kernen, var udviklerne ordnet og om en bærbar version af værktøjet til Android-enheder. Applikationen er endnu ikke færdigudviklet, men du kan prøve den nu. Til dette har du brug for blive en af testerne.
В officiel dokumentation (s. 18) bemærkes det, at gennemløbet af WireGuard er fire gange højere end OpenVPN: henholdsvis 1011 Mbit/s mod 258 Mbit/s. WireGuard er også foran standardløsningen til Linux IPsec – den har 881 Mbit/s. Det overgår det også med hensyn til nem opsætning.
Efter at nøglerne er udvekslet (VPN-forbindelsen er initialiseret på samme måde som SSH), og forbindelsen er etableret, håndterer WireGuard alle andre opgaver på egen hånd: Der er ingen grund til at bekymre sig om routing, tilstandskontrol osv. Yderligere konfigurationsindsats vil kun blive udført. påkrævet, hvis du vil bruge symmetrisk kryptering.
Som redaktørerne af xakep.ru bemærker, er selvsamling fra kildetekster også let. Det er nok at åbne grænsefladen og generere offentlige og private nøgler:
$ sudo ip link add dev wg0 type wireguard
$ wg genkey | tee privatekey | wg pubkey > publickey
WireGuard ikke bruger grænseflade til at arbejde med en kryptoudbyder CryptoAPI. I stedet bruges en strømchiffer ChaCha20, kryptografisk imiteret indsats Poly1305 og proprietære kryptografiske hash-funktioner.
I dette tilfælde bruger WireGuard ioctl-funktionen til at styre I/O (tidligere brugt Netlink), hvilket gør koden renere og enklere. Du kan bekræfte dette ved at se på konfigurationskode.
Udviklerplaner
For nu er WireGuard et kernemodul uden for træet. Men forfatteren til projektet er Jason Donenfeld Han taler, at tiden er inde til fuld implementering i Linux-kernen. Fordi det er enklere og mere pålideligt end andre løsninger. Jason i denne forbindelse bakker op selv kaldte Linus Torvalds selv WireGuard-koden for et "kunstværk".
Men ingen taler om de nøjagtige datoer for introduktionen af WireGuard i kernen. OG næsten dette vil ske med udgivelsen af August Linux-kernen 4.18. Der er dog en mulighed for, at dette vil ske i meget nær fremtid: i version 4.19 eller 5.0.
Når WireGuard føjes til kernen, udvikler vil have færdiggør applikationen til Android-enheder og begynd at skrive en applikation til iOS. Der er også planer om at gennemføre implementeringer i Go og Rust og overføre dem til macOS, Windows og BSD. Det er også planlagt at implementere WireGuard til mere "eksotiske systemer": DPDK, FPGA, samt mange andre interessante ting. Alle er opført i to-do-liste forfattere til projektet.
PS Et par flere artikler fra vores virksomhedsblog: