ProHoster > WireGuard do të "vijë" në kernel Linux - pse?
WireGuard do të "vijë" në kernel Linux - pse?
Në fund të korrikut, zhvilluesit e tunelit WireGuard VPN propozuan set patch, i cili do ta bëjë softuerin e tyre të tunelit VPN pjesë të kernelit Linux. Megjithatë, data e saktë e zbatimit të “idesë” mbetet e panjohur. Më poshtë prerjes do të flasim për këtë mjet në më shumë detaje.
WireGuard është një tunel i gjeneratës së ardhshme VPN i krijuar nga Jason A. Donenfeld, CEO i Edge Security. Projekti u zhvillua si thjeshtuar dhe një alternativë e shpejtë për OpenVPN dhe IPsec. Versioni i parë i produktit përmbante vetëm 4 mijë rreshta kodi. Për krahasim, OpenVPN ka rreth 120 mijë rreshta, dhe IPSec - 420 mijë.
Mbi sipas zhvilluesit, WireGuard është i lehtë për t'u konfiguruar dhe siguria e protokollit është arritur përmes algoritmeve të vërtetuara kriptografike. Kur ndërroni rrjetin: Wi-Fi, LTE ose Ethernet duhet të rilidhen me serverin VPN çdo herë. Serverët WireGuard nuk e ndërpresin lidhjen, edhe nëse përdoruesi ka marrë një adresë të re IP.
Përkundër faktit se WireGuard fillimisht ishte krijuar për kernelin Linux, zhvilluesit kujdeset dhe në lidhje me një version portativ të mjetit për pajisjet Android. Aplikacioni nuk është zhvilluar ende plotësisht, por mund ta provoni tani. Për këtë ju duhet bëhuni një nga testuesit.
В dokumentacion zyrtar (fq. 18) vihet re se xhiroja e WireGuard është katër herë më e lartë se ajo e OpenVPN: 1011 Mbit/s kundrejt 258 Mbit/s, përkatësisht. WireGuard është gjithashtu përpara zgjidhjes standarde për Linux IPsec - ka 881 Mbit/s. Ai gjithashtu e tejkalon atë në lehtësinë e konfigurimit.
Pasi të shkëmbehen çelësat (lidhja VPN është inicializuar njësoj si SSH) dhe lidhja është vendosur, WireGuard trajton të gjitha detyrat e tjera vetë: nuk ka nevojë të shqetësoheni për rrugëtimin, kontrollin e gjendjes, etj. Përpjekjet shtesë për konfigurimin do të bëhen vetëm kërkohet nëse dëshironi të përdorni enkriptimin simetrik.
Siç vërejnë redaktorët e xakep.ru, vetë-montimi nga tekstet burimore është gjithashtu i lehtë. Mjafton të hapësh ndërfaqen dhe të gjenerosh çelësa publikë dhe privatë:
$ sudo ip link add dev wg0 type wireguard
$ wg genkey | tee privatekey | wg pubkey > publickey
WireGuard nuk përdor ndërfaqe për të punuar me një ofrues të kriptove CryptoAPI. Në vend të kësaj, përdoret një shifër e transmetimit ChaCha20, kriptografike insert imitues Poly1305 dhe funksione hash kriptografike të pronarit.
Në këtë rast, WireGuard përdor funksionin ioctl për të kontrolluar I/O (përdorur më parë netlink), gjë që e bën kodin më të pastër dhe më të thjeshtë. Ju mund ta verifikoni këtë duke shikuar kodi i konfigurimit.
Planet e zhvilluesit
Për momentin, WireGuard është një modul i kernelit jashtë pemës. Por autori i projektit është Jason Donenfeld говорит, se ka ardhur koha për implementim të plotë në kernelin Linux. Sepse është më e thjeshtë dhe më e besueshme se zgjidhjet e tjera. Jason në këtë drejtim mbështet edhe vetë Linus Torvalds e quajti kodin WireGuard një "vepër arti".
Por askush nuk po flet për datat e sakta për futjen e WireGuard në kernel. DHE vështirë se kjo do të ndodhë me lëshimin e kernelit Linux të gushtit 4.18. Sidoqoftë, ekziston mundësia që kjo të ndodhë në të ardhmen shumë të afërt: në versionin 4.19 ose 5.0.
Kur WireGuard shtohet në kernel, zhvilluesit dua finalizoni aplikacionin për pajisjet Android dhe filloni të shkruani një aplikacion për iOS. Ka gjithashtu plane për të përfunduar implementimet në Go dhe Rust dhe për t'i transferuar ato në macOS, Windows dhe BSD. Është planifikuar gjithashtu të zbatohet WireGuard për më shumë "sisteme ekzotike": Dpdk, FPGA, si dhe shumë gjëra të tjera interesante. Të gjithë ata janë të listuar në lista e detyrave autorët e projektit.
PS Disa artikuj të tjerë nga blogu ynë i korporatës: