WireGuard "arribarà" al nucli de Linux, per què?

A finals de juliol, els desenvolupadors del túnel VPN WireGuard van proposar conjunt de pedaços, que farà que el seu programari de túnel VPN sigui part del nucli de Linux. No obstant això, la data exacta d'implementació de la "idea" segueix sent desconeguda. A sota del tall parlarem d'aquesta eina amb més detall.

WireGuard "arribarà" al nucli de Linux, per què?
/ foto Tambako El Jaguar CC

Breument sobre el projecte

WireGuard és un túnel VPN de nova generació creat per Jason A. Donenfeld, director general de Edge Security. El projecte es va desenvolupar com simplificat i una alternativa ràpida a OpenVPN i IPsec. La primera versió del producte contenia només 4 mil línies de codi. Per comparar, OpenVPN té unes 120 mil línies i IPSec - 420 mil.

En segons desenvolupadors, WireGuard és fàcil de configurar i s'aconsegueix la seguretat del protocol mitjançant algorismes criptogràfics provats. En canviar de xarxa: Wi-Fi, LTE o Ethernet s'han de tornar a connectar al servidor VPN cada vegada. Els servidors WireGuard no finalitzen la connexió, encara que l'usuari hagi rebut una nova adreça IP.

Malgrat que WireGuard va ser dissenyat originalment per al nucli Linux, els desenvolupadors tenir cura de i sobre una versió portàtil de l'eina per a dispositius Android. L'aplicació encara no està completament desenvolupada, però podeu provar-la ara. Per això necessites convertir-se en un dels provadors.

En general, WireGuard és bastant popular i fins i tot ho ha estat implementat diversos proveïdors de VPN, com ara Mullvad i AzireVPN. Publicat en línia un gran nombre guies de configuració aquesta decisió. Per exemple, hi ha guies, que són creats pels usuaris, i hi ha guies, elaborat pels autors del projecte.

Detalls tècnics

В documentació oficial (pàg. 18) es fa notar que el rendiment de WireGuard és quatre vegades superior al d'OpenVPN: 1011 Mbit/s enfront de 258 Mbit/s, respectivament. WireGuard també està per davant de la solució estàndard per a Linux IPsec: té 881 Mbit/s. També el supera en facilitat de configuració.

Després d'intercanviar les claus (la connexió VPN s'inicialitza com SSH) i s'estableix la connexió, WireGuard gestiona totes les altres tasques per si mateix: no cal preocupar-se per l'encaminament, el control de l'estat, etc. Només es faran esforços de configuració addicionals. necessari si voleu utilitzar el xifratge simètric.

WireGuard "arribarà" al nucli de Linux, per què?
/ foto Anders Hojbjerg CC

Per instal·lar-lo, necessitareu una distribució amb un nucli Linux anterior a la versió 4.1. Es pot trobar als repositoris de les principals distribucions de Linux.

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

Com assenyalen els editors de xakep.ru, l'autoassemblatge dels textos font també és fàcil. N'hi ha prou amb obrir la interfície i generar claus públiques i privades:

$ sudo ip link add dev wg0 type wireguard
$ wg genkey | tee privatekey | wg pubkey > publickey

WireGuard no fa servir interfície per treballar amb un proveïdor de cripto CriptoAPI. En lloc d'això, s'utilitza un xifrat de flux ChaCha20, criptogràfic inserció d'imitació Poly1305 i funcions hash criptogràfiques pròpies.

La clau secreta es genera utilitzant Protocol Diffie-Hellman basat en la corba el·líptica Curve25519. Quan hash, utilitzen funcions hash BLAKE2 и SipHash. A causa del format de marca de temps TAI64N el protocol descarta paquets amb un valor de marca de temps més petit, per tant prevenir DoS- и repetició d'atacs.

En aquest cas, WireGuard utilitza la funció ioctl per controlar l'E/S (utilitzada anteriorment Netlink), que fa que el codi sigui més net i senzill. Podeu comprovar-ho mirant codi de configuració.

Plans de desenvolupadors

De moment, WireGuard és un mòdul del nucli fora de l'arbre. Però l'autor del projecte és Jason Donenfeld diu, que ha arribat el moment de la implementació completa al nucli Linux. Perquè és més senzill i més fiable que altres solucions. Jason en aquest sentit suports fins i tot el mateix Linus Torvalds va anomenar el codi WireGuard una "obra d'art".

Però ningú no parla de les dates exactes per a la introducció de WireGuard al nucli. I amb prou feines això passarà amb el llançament del nucli de Linux August 4.18. Tanmateix, hi ha la possibilitat que això passi en un futur molt proper: a la versió 4.19 o 5.0.

Quan s'afegeix WireGuard al nucli, els desenvolupadors voler finalitzeu l'aplicació per a dispositius Android i comenceu a escriure una aplicació per a iOS. També hi ha plans per completar les implementacions a Go i Rust i portar-les a macOS, Windows i BSD. També està previst implementar WireGuard per a sistemes més "exòtics": DPDK, FPGA, així com moltes altres coses interessants. Totes elles figuren a llista de tasques pendents autors del projecte.

PS Uns quants articles més del nostre bloc corporatiu:

La direcció principal de la nostra activitat és la prestació de serveis al núvol:

Infraestructura virtual (IaaS) | Allotjament PCI DSS | Núvol FZ-152 | Allotjament SAP | Emmagatzematge virtual | Encriptació de dades al núvol | Emmagatzematge al núvol

Font: www.habr.com

Afegeix comentari