WireGuard "vil komme" til kernen Linux - Hvorfor?

I slutningen af ​​juli, udviklerne af VPN-tunnelen WireGuard foreslået patch sæt, hvilket vil gøre deres VPN-tunneling-software til en del af kernen LinuxDen præcise dato for implementeringen af ​​denne "idé" er dog stadig ukendt. Vi vil diskutere dette værktøj mere detaljeret nedenfor.

WireGuard "vil komme" til kernen Linux - Hvorfor?
/ Foto Tambako Jaguaren CC

Kort om projektet

WireGuard — en næste generations VPN-tunnel skabt af Jason A. Donenfeld, administrerende direktør for Edge Security. Projektet blev udviklet som forenklet og et smidigt alternativ OpenVPN og IPsec. Den første version af produktet indeholdt kun 4 linjer kode. Til sammenligning, i OpenVPN omkring 120 tusind linjer, og i IPSec - 420 tusind.

On ifølge udviklere, WireGuard Det er nemt at konfigurere, og protokolsikkerheden er opnået gennem dokumenterede kryptografiske algoritmer. Ved skift af netværkWi-Fi, LTE eller Ethernet kræver genoprettelse af forbindelse til VPN-serveren hver gang. Servere WireGuard De afbryder ikke forbindelsen, selvom brugeren har fået en ny IP-adresse.

Selvom WireGuard oprindeligt slebet til Linux-kerne, udviklere ordnet og om den bærbare version af værktøjet til Android-enheder. Applikationen er endnu ikke fuldt udviklet, men du kan prøve den lige nu. For at gøre dette skal du bruge blive en af ​​testerne.

Generelt WireGuard nyder en hel del popularitet og var endda implementeret flere VPN-udbydere, såsom Mullvad og AzireVPN. Udgivet online et stort antal opsætningsvejledninger denne beslutning. For eksempel, der er guider, som er oprettet af brugere, og der er vejledninger, udarbejdet af projektets forfattere.

Teknisk

В officiel dokumentation (s. 18) bemærkes det, at gennemløbskapaciteten for WireGuard fire gange højere end den OpenVPNHenholdsvis 1011 Mbps versus 258 Mbps. WireGuard forud for standardløsningen til Linux IPsec har 881 Mbps og er også nemmere at konfigurere.

Efter udveksling af nøgler (VPN-forbindelsen initialiseres næsten som i SSH) og etablering af en forbindelse WireGuard Den håndterer alle andre opgaver uafhængigt: der er ingen grund til at bekymre sig om routing, tilstandsovervågning osv. Yderligere konfigurationsindsats er kun påkrævet, hvis du vil bruge symmetrisk kryptering.

WireGuard "vil komme" til kernen Linux - Hvorfor?
/ Foto Anders Højbjerg CC

For at installere skal du bruge en distribution med en kerne. Linux "ældre" end 4.1. Den kan findes i arkiverne for større distributioner Linux.

$ sudo add-apt-repository ppa:hda-me/wireguard
$ sudo apt update
$ sudo apt install wireguard-dkms wireguard-tools

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.

Den hemmelige nøgle genereres vha Diffie-Hellman protokol baseret på elliptisk kurve Curve25519. Når de hash, bruger de hash-funktioner BLAKE2 и SipHash. På grund af tidsstempelformatet TAI64N protokollen kasserer pakker med en mindre tidsstempelværdi, derved forhindrer DoS- и afspille angreb.

I dette tilfælde WireGuard Aktiverer ioctl-funktionen til at styre input/output (tidligere brugt Netlink), hvilket gør koden renere og enklere. Du kan bekræfte dette ved at se på konfigurationskode.

Udviklerplaner

For nu WireGuard — er et kernemodul uden for træet. Men projektets forfatter, Jason Donenfeld, Han taler, at det er tid til en fuld implementering i kernen LinuxFordi det er enklere og mere pålideligt end andre løsninger. Jason i denne henseende bakker op selv Linus Torvalds - han navngav koden WireGuard "et kunstværk."

Men om de præcise implementeringsdatoer WireGuard Ingen taler om kernen endnu. Og næsten Dette vil ske med udgivelsen af ​​august-nummeret. Linux kerne 4.18. Der er dog en mulighed for, at dette vil ske i den allernærmeste fremtid: i version 4.19 eller 5.0.

Hvornår WireGuard vil blive tilføjet til kernen, udviklere vil have forbedre applikationen til Android-enheder og begynde at skrive en iOS-app. Derudover planlægger vi at færdiggøre Go- og Rust-implementeringerne og portere dem til macOS, Windows og BSD. Implementering er også planlagt. WireGuard for flere "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:

Hovedretningen for vores aktivitet er levering af cloud-tjenester:

Virtuel infrastruktur (IaaS) | PCI DSS hosting | Cloud FZ-152 | SAP hosting | Virtuel opbevaring | Kryptering af data i skyen | Sky lagring

Kilde: www.habr.com

Køb pålidelig hosting til websteder med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster