WireGuard "etorri" egingo da Linux kernelera - zergatik?

Uztailaren amaieran, WireGuard VPN tunelaren garatzaileek proposatu zuten adabaki multzoa, VPN tunelaren softwarea Linux nukleoaren parte bihurtuko duena. Hala ere, "ideia" gauzatzeko data zehatza ezezaguna da. Ebakiaren azpian tresna honi buruz gehiago hitz egingo dugu.

WireGuard "etorri" egingo da Linux kernelera - zergatik?
/ argazkia Tambako The Jaguar CC

Proiektuari buruz laburki

WireGuard hurrengo belaunaldiko VPN tunela da Jason A. Donenfeldek, Edge Security-ko zuzendari nagusiak sortua. Proiektua honela garatu zen sinplifikatu eta OpenVPN eta IPsec-en alternatiba azkarra. Produktuaren lehen bertsioak 4 mila kode lerro baino ez zituen. Konparazio baterako, OpenVPN-k 120 mila lerro inguru ditu eta IPSec - 420 mila.

On arabera Garatzaileei, WireGuard konfiguratzeko erraza da eta protokoloaren segurtasuna lortzen da frogatutako algoritmo kriptografikoen bidez. Sarea aldatzean: Wi-Fi, LTE edo Ethernet VPN zerbitzarira berriro konektatu behar dira aldi bakoitzean. WireGuard zerbitzariek ez dute konexioa amaitzen, erabiltzaileak IP helbide berri bat jaso badu ere.

WireGuard jatorriz Linux nukleorako diseinatua izan arren, garatzaileek zainduta eta Android gailuetarako tresnaren bertsio eramangarri bati buruz. Aplikazioa oraindik ez dago guztiz garatua, baina orain proba dezakezu. Horretarako behar duzu probatzaileetako bat bihurtu.

Oro har, WireGuard nahiko ezaguna da eta izan ere ezarrita hainbat VPN hornitzaile, hala nola Mullvad eta AzireVPN. Sarean argitaratua kopuru handi bat konfigurazio gidak erabaki hau. Adibidez, gidak daude, erabiltzaileek sortutakoak, eta gidak daude, proiektuaren egileek prestatua.

Teknikoa

Π’ dokumentazio ofiziala (18. or.) azpimarratzen da WireGuard-en errendimendua OpenVPNrena baino lau aldiz handiagoa dela: 1011 Mbit/s versus 258 Mbit/s, hurrenez hurren. WireGuard Linux IPsec-en soluzio estandarraren aurretik dago - 881 Mbit/s ditu. Konfiguratzeko erraztasunean ere gainditzen du.

Gakoak trukatu ondoren (VPN konexioa SSH antzera hasieratzen da) eta konexioa ezarri ondoren, WireGuard-ek gainontzeko zeregin guztiak bere kabuz kudeatzen ditu: ez dago bideratze, egoera kontrolaz eta abarrez kezkatu beharrik. Konfigurazio-ahalegin gehigarriak bakarrik izango dira. beharrezkoa da enkriptazio simetrikoa erabili nahi baduzu.

WireGuard "etorri" egingo da Linux kernelera - zergatik?
/ argazkia Anders Hojbjerg CC

Instalatzeko, Linux kernel 4.1 baino zaharragoa duen banaketa bat beharko duzu. Linux banaketa nagusien biltegietan aurki daiteke.

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

Xakep.ru-ren editoreek ohartarazi dutenez, jatorrizko testuetatik auto-muntatzea ere erraza da. Nahikoa da interfazea ireki eta gako publiko eta pribatuak sortzea:

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

WireGuard ez du erabiltzen kripto-hornitzaile batekin lan egiteko interfazea KriptoAPIa. Horren ordez, korronte zifratua erabiltzen da ChaCha20, kriptografikoa imitaziozko txertaketa Poly1305 eta jabedun hash kriptografiko funtzioak.

Gako sekretua erabiliz sortzen da Diffie-Hellman protokoloa kurba eliptikoan oinarrituta Kurba25519. Hashingean, erabiltzen dute hash funtzioak BLAKE2 ΠΈ SipHash. Denbora-zigiluaren formatua dela eta TAI64N protokoloak denbora-zigiluaren balio txikiagoa duten paketeak baztertzen ditu, beraz DoS prebenitzea- ΠΈ erasoak errepikatu.

Kasu honetan, WireGuard-ek ioctl funtzioa erabiltzen du I/O kontrolatzeko (lehen erabiltzen zen netlink), kodea garbiagoa eta sinpleagoa egiten duena. Hau egiaztatu dezakezu begiratuz konfigurazio kodea.

Garatzaileen planak

Oraingoz, WireGuard zuhaitzetik kanpoko kernel modulua da. Baina proiektuaren egilea Jason Donenfeld da He mintzo, Linux nukleoan erabat inplementatzeko garaia iritsi dela. Beste soluzio batzuk baino sinpleagoa eta fidagarriagoa delako. Jason zentzu honetan euskarriak nahiz eta Linus Torvaldsek berak WireGuard kodea "artelana" deitu zuen.

Baina inork ez du hitz egiten WireGuard nukleoan sartzeko data zehatzez. ETA apenas hau abuztuko Linux kernel 4.18 askatzearekin gertatuko da. Hala ere, etorkizun hurbilean gertatzeko aukera dago: 4.19 edo 5.0 bertsioan.

WireGuard nukleoan gehitzen denean, garatzaileek nahi amaitu Android gailuetarako aplikazioa eta hasi iOSerako aplikazio bat idazten. Go eta Rust-en inplementazioak osatzeko eta macOS, Windows eta BSD-ra eramateko asmoa ere badago. Halaber, WireGuard ezartzea aurreikusi da "sistema exotiko" gehiagorako: DPDK, FPGA, baita beste hainbat gauza interesgarri ere. Denak zerrendatuta daude egiteko-zerrenda proiektuaren egileak.

PS Gure blog korporatiboko artikulu batzuk gehiago:

Gure jardueraren norabide nagusia hodeiko zerbitzuak eskaintzea da:

Azpiegitura birtuala (IaaS) | PCI DSS hostinga | Hodeia FZ-152 | SAP hostinga | Biltegiratze birtuala | Hodeian datuak enkriptatzea | Hodeiko biltegiratzea

Iturria: www.habr.com

Gehitu iruzkin berria