La sfârșitul lunii iulie, dezvoltatorii tunelului VPN WireGuard au propus , care vor face software-ul lor pentru organizarea tunelurilor VPN parte din nucleul Linux. Cu toate acestea, data exactă a implementării „ideii” rămâne deocamdată necunoscută. Sub rest, vom discuta mai detaliat despre acest instrument.
/ фото
Pe scurt despre proiect
WireGuard este un tunel VPN de nouă generație, creat de Jason Donenfeld, șeful companiei Edge Security. Proiectul a fost dezvoltat ca și rapidă la OpenVPN și IPsec. Prima versiune a produsului conținea doar 4 mii de linii de cod. Spre comparație, OpenVPN are aproximativ 120 de mii de linii, iar IPSec — 420 de mii.
După Dezvoltatorii WireGuard l-au configurat ușor, iar securitatea protocolului este obținută . : Wi-Fi, LTE sau Ethernet, trebuie să te reconectezi la serverul VPN de fiecare dată. Serverele WireGuard nu întrerup conexiunea, chiar dacă utilizatorul primește o nouă adresă IP.
Deși WireGuard este proiectat inițial pentru nucleul Linux, dezvoltatorii și de o versiune portabilă a instrumentului pentru dispozitivele Android. Aplicația este încă în dezvoltare, dar poate fi încercată deja. Pentru asta, trebuie să .
În general, WireGuard se bucură de o popularitate destul de mare și a fost adoptat de mai mulți furnizori de VPN, precum Mullvad și AzireVPN. Pe internet au fost publicate a această soluție. De exemplu, , create de utilizatori, iar există ghiduri, .
Detalii tehnice
În (p. 18) se menționează că lățimea de bandă a WireGuard este de patru ori mai mare decât cea a OpenVPN: 1011 Mbps față de 258 Mbps, respectiv. WireGuard depășește și soluția standard pentru Linux, IPsec — aceasta are 881 Mbps. De asemenea, îl depășește în ceea ce privește simplitatea configurării.
După schimbul de chei (conexiunea VPN se inițiază aproape ca în SSH) și stabilirea conexiunii, WireGuard rezolvă singur toate celelalte sarcini: nu trebuie să te îngrijorezi cu privire la rutare, monitorizarea stării etc. Vor fi necesare eforturi suplimentare pentru configurare doar în cazul în care dorești să utilizezi criptarea simetrică.

/ фото
Pentru instalare, aveți nevoie de o distribuție cu kernel Linux „mai vechi” de 4.1. O puteți găsi în repozitoarele distribuțiilor principale de Linux.
$ sudo add-apt-repository ppa:hda-me/wireguard
$ sudo apt update
$ sudo apt install wireguard-dkms wireguard-tools
După cum menționează editorii xakep.ru, compilarea autonomă din codul sursă nu este complicată. Este suficient să ridicați interfața și să generați cheile publice și private:
$ sudo ip link add dev wg0 type wireguard
$ wg genkey | tee privatekey | wg pubkey > publickey
WireGuard interfața pentru lucrul cu furnizorul de criptografie . În schimb, se utilizează un algoritm de criptare de flux , criptografic Poly1305 și funcții hash criptografice proprii.
Cheia secretă este generată folosind pe baza unei curbe eliptice . La hashare se utilizează și . Datorită formatului marcajelor temporale protocolul elimină pachetele cu o valoare timestamp mai mică, prevenind astfel și .
În acest context, WireGuard folosește funcția ioctl pentru controlul intrărilor/ieșirilor (în trecut s-a folosit ), ceea ce face codul mai curat și mai simplu. Puteți verifica acest lucru observând .
Planurile dezvoltatorilor
Până acum, WireGuard este un modul kernel extern. Dar autorul proiectului, Jason Donenfeld , a declarat că este timpul pentru o implementare completă în kernelul Linux. Deoarece este mai simplu și mai fiabil decât alte soluții. Jason, în acest sens, chiar a fost lăudat de Linus Torvalds — el a numit codul WireGuard „o operă de artă”.
Dar nimeni nu vorbește încă despre datele exacte ale implementării WireGuard în kernel. Și se va întâmpla cu lansarea kernelului Linux din august 4.18. Totuși, există o șansă că se va întâmpla în viitorul foarte apropiat: în versiunea 4.19 sau 5.0.
Când WireGuard va fi adăugat în kernel, dezvoltatorii să finalizeze aplicația pentru dispozitivele Android și să înceapă să scrie o aplicație pentru iOS. În plus, se preconizează finalizarea implementărilor în Go și Rust și portarea acestora pe macOS, Windows și BSD. De asemenea, se planifică implementarea WireGuard pentru sisteme mai „exotice”: , , precum și multe alte lucruri interesante. Toate acestea sunt enumerate în a autorilor proiectului.
P.S. Încă câteva articole din blogul nostru corporativ:
Principalul nostru domeniu de activitate este furnizarea de servicii cloud:
| | | | | |
Sursa: habr.com
