WireGuard e tla "tla" ho Linux kernel - hobaneng?

Qetellong ea Phupu, baetsi ba kotopo ea WireGuard VPN ba ile ba etsa tlhahiso patch set, e tla etsa hore software ea bona ea tunneling ea VPN e be karolo ea kernel ea Linux. Leha ho le joalo, letsatsi le tobileng la ts'ebetsong ea "khopolo" le ntse le sa tsejoe. Ka tlase ho sehiloeng re tla bua ka sesebelisoa sena ka botlalo.

WireGuard e tla "tla" ho Linux kernel - hobaneng?
/ foto Tambako The Jaguar CC

Ka bokhutšoanyane ka morero

WireGuard ke kotopo ea VPN ea moloko o latelang e entsoeng ke Jason A. Donenfeld, CEO oa Edge Security. Morero o ile oa ntlafatsoa e le nolofalitsoe le mokhoa o mong o potlakileng ho OpenVPN le IPsec. Mofuta oa pele oa sehlahisoa o ne o e-na le mela e likete tse 4 feela tsa khoutu. Ha ho bapisoa, OpenVPN e na le mela e ka bang likete tse 120, le IPSec - 420 tse likete.

Ka ho latela bahlahisi, WireGuard e bonolo ho e hlophisa mme ts'ireletso ea protocol e ea fihlelleha ka li-algorithms tse netefalitsoeng tsa cryptographic. Ha o fetola marang-rang: Wi-Fi, LTE kapa Ethernet li hloka ho hokela hape ho seva sa VPN nako le nako. Li-server tsa WireGuard ha li emise khokahano, leha mosebelisi a fumane aterese e ncha ea IP.

Leha taba ea hore WireGuard e ne e etselitsoe Linux kernel, bahlahisi hlokomeloa le mabapi le mofuta o nkehang oa sesebelisoa bakeng sa lisebelisoa tsa Android. Sesebelisoa ha se so ntlafatsoe ka botlalo, empa u ka e leka hona joale. Bakeng sa sena u se hloka eba e mong wa bahlahlobi.

Ka kakaretso, WireGuard e tumme haholo ebile e bile joalo kenngwa tshebetsong bafani ba 'maloa ba VPN, joalo ka Mullvad le AzireVPN. E hatisitsoe inthaneteng palo e kholo litataiso tsa ho seta qeto ena. Ka mohlala, ho na le batataisi, tse entsoeng ke basebelisi, 'me ho na le litataiso, e lokisitsoeng ke bangoli ba morero.

Lintlha tsa tekheniki

В litokomane tsa molao (leq. 18) hoa hlokomeloa hore tlhahiso ea WireGuard e phahame ka makhetlo a mane ho feta ea OpenVPN: 1011 Mbit / s khahlanong le 258 Mbit / s, ka ho latellana. WireGuard e boetse e ka pele ho tharollo e tloaelehileng ea Linux IPsec - e na le 881 Mbit/s. E boetse ea e feta ka boiketlo ba ho seta.

Ka mor'a hore linotlolo li fapanyetsane (khokahanyo ea VPN e qalisoa haholo joaloka SSH) 'me khokahanyo e thehoa, WireGuard e sebetsana le mesebetsi e meng kaofela ka boeona: ha ho hlokahale hore u tšoenyehe ka ho tsamaisa, ho laola boemo, joalo-joalo. Boiteko bo eketsehileng ba ho hlophisa bo tla ba feela. e hlokahalang haeba u batla ho sebelisa symmetric encryption.

WireGuard e tla "tla" ho Linux kernel - hobaneng?
/ foto Anders Hojbjerg CC

Ho kenya, o tla hloka kabo ka kernel ea Linux ea khale ho feta 4.1. E ka fumanoa libakeng tsa polokelo ea liphaello tse kholo tsa Linux.

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

Joalo ka bahlophisi ba xakep.ru note, ho itlhophisa ho tsoa litemaneng tsa mohloli le hona ho bonolo. Ho lekane ho bula sebopeho le ho hlahisa linotlolo tsa sechaba le tsa poraefete:

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

WireGuard ha e sebelise sebopeho sa ho sebetsa le mofani oa li-crypto CryptoAPI. Ho e-na le hoo, ho sebelisoa stream cipher ChaCha20, mokhoa oa ho ngola ketsiso kenya Poly1305 le mesebetsi ea proprietary cryptographic hash.

Senotlolo sa lekunutu se hlahisoa ho sebelisoa Protocol ea Diffie-Hellman e thehiloeng ho elliptic curve Curve25519. Ha hashing, ba sebelisa mesebetsi ea hash LITLHAKU 2 и SipHash. Ka lebaka la sebopeho sa setempe sa nako TAI64N protocol e lahla lipakete tse nang le boleng bo bonyenyane ba setempe sa nako, ka hona thibela DoS- и litlhaselo tsa ho pheta-pheta.

Tabeng ena, WireGuard e sebelisa mosebetsi oa ioctl ho laola I/O (e neng e sebelisoa pele netlink), e etsang hore khoutu e hloeke ebile e be bonolo. U ka netefatsa sena ka ho sheba khoutu ea tlhophiso.

Merero ea bahlahisi

Hajoale, WireGuard ke mojule oa kernel o kantle ho sefate. Empa mongoli oa morero ke Jason Donenfeld e re, hore nako e fihlile ea ho kenya ts'ebetsong ka botlalo Linux kernel. Hobane e bonolo ebile e tšepahala ho feta litharollo tse ling. Jason tabeng ena litšehetso esita le Linus Torvalds ka boeena o bitsitse khoutu ea WireGuard "mosebetsi oa bonono."

Empa ha ho motho ea buang ka matsatsi a tobileng a ho hlahisoa ha WireGuard ka har'a kernel. LE ho hang sena se tla etsahala ka ho lokolloa ha August Linux kernel 4.18. Leha ho le joalo, ho na le monyetla oa hore sena se tla etsahala haufinyane haholo: ka mofuta oa 4.19 kapa 5.0.

Ha WireGuard e eketsoa ho kernel, bahlahisi batla phethela kopo ea lisebelisoa tsa Android 'me u qale ho ngola kopo ea iOS. Ho boetse ho na le merero ea ho phethela ts'ebetsong ho Go le Rust le ho li isa ho macOS, Windows le BSD. Ho boetse ho reriloe ho kenya ts'ebetsong WireGuard bakeng sa "litsamaiso tse sa tloaelehang" tse ling: DPDK, FPGA, hammoho le lintho tse ling tse ngata tse thahasellisang. Kaofela ha tsona li thathamisitsoe ho lethathamo la tse lokelang ho etsoa bangoli ba morero.

PS Lingoliloeng tse ling tse 'maloa ho tsoa ho blog ea rona ea khoebo:

Tataiso e ka sehloohong ea ts'ebetso ea rona ke ho fana ka litšebeletso tsa leru:

Virtual Infrastructure (IaaS) | Moamoheli oa PCI DSS | Leru FZ-152 | SAP e amohelang batho | Sebaka sa polokelo ea nnete | Encrypting data ho cloud | Polokelo ea maru

Source: www.habr.com

Eketsa ka tlhaloso