Bydd WireGuard yn “dod” i'r cnewyllyn Linux - pam?

Ar ddiwedd mis Gorffennaf, cynigiodd datblygwyr twnnel WireGuard VPN set patch, a fydd yn gwneud eu meddalwedd twnelu VPN yn rhan o'r cnewyllyn Linux. Fodd bynnag, mae union ddyddiad gweithredu'r “syniad” yn parhau i fod yn anhysbys. O dan y toriad byddwn yn siarad am yr offeryn hwn yn fwy manwl.

Bydd WireGuard yn “dod” i'r cnewyllyn Linux - pam?
/ llun Tambako Y Jaguar CC

Yn fyr am y prosiect

Mae WireGuard yn dwnnel VPN cenhedlaeth nesaf a grëwyd gan Jason A. Donenfeld, Prif Swyddog Gweithredol Edge Security. Datblygwyd y prosiect fel symlach a dewis arall cyflym yn lle OpenVPN ac IPsec. Roedd fersiwn gyntaf y cynnyrch yn cynnwys dim ond 4 mil o linellau o god. Er mwyn cymharu, mae gan OpenVPN tua 120 mil o linellau, ac IPSec - 420 mil.

Ar yn ôl datblygwyr, mae WireGuard yn hawdd ei ffurfweddu a chyflawnir diogelwch protocol trwy algorithmau cryptograffig profedig. Wrth newid rhwydwaith: Mae angen i Wi-Fi, LTE neu Ethernet ailgysylltu â'r gweinydd VPN bob tro. Nid yw gweinyddwyr WireGuard yn terfynu'r cysylltiad, hyd yn oed os yw'r defnyddiwr wedi derbyn cyfeiriad IP newydd.

Er gwaethaf y ffaith bod WireGuard wedi'i gynllunio'n wreiddiol ar gyfer y cnewyllyn Linux, y datblygwyr cymryd gofal ac am fersiwn symudol o'r offeryn ar gyfer dyfeisiau Android. Nid yw'r cais wedi'i ddatblygu'n llawn eto, ond gallwch chi roi cynnig arno nawr. Ar gyfer hyn mae angen dod yn un o'r profwyr.

Yn gyffredinol, mae WireGuard yn eithaf poblogaidd ac mae hyd yn oed wedi bod gweithredu sawl darparwr VPN, fel Mullvad ac AzireVPN. Cyhoeddwyd ar-lein nifer fawr canllawiau gosod y penderfyniad hwn. Er enghraifft, mae canllawiau, sy'n cael eu creu gan ddefnyddwyr, ac mae yna ganllawiau, a baratowyd gan awduron y prosiect.

Manylion technegol

В dogfennaeth swyddogol (t. 18) nodir bod trwygyrch WireGuard bedair gwaith yn uwch nag OpenVPN: 1011 Mbit/s yn erbyn 258 Mbit/s, yn y drefn honno. Mae WireGuard hefyd ar y blaen i'r datrysiad safonol ar gyfer Linux IPsec - mae ganddo 881 Mbit yr eiliad. Mae hefyd yn rhagori arno yn rhwyddineb gosod.

Ar ôl i'r allweddi gael eu cyfnewid (mae'r cysylltiad VPN wedi'i gychwyn yn debyg iawn i SSH) a bod y cysylltiad wedi'i sefydlu, mae WireGuard yn delio â'r holl dasgau eraill ar ei ben ei hun: nid oes angen poeni am lwybro, rheolaeth y wladwriaeth, ac ati. Dim ond ymdrechion cyfluniad ychwanegol fydd angen os ydych am ddefnyddio amgryptio cymesur.

Bydd WireGuard yn “dod” i'r cnewyllyn Linux - pam?
/ llun Anders Hojbjerg CC

I osod, bydd angen dosbarthiad gyda chnewyllyn Linux yn hŷn na 4.1. Mae i'w gael yn y storfeydd o ddosbarthiadau Linux mawr.

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

Fel y mae golygyddion xakep.ru yn ei nodi, mae hunan-gynulliad o destunau ffynhonnell hefyd yn hawdd. Mae'n ddigon i agor y rhyngwyneb a chynhyrchu allweddi cyhoeddus a phreifat:

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

WireGuard ddim yn defnyddio rhyngwyneb ar gyfer gweithio gyda darparwr crypto Cryptoapi. Yn lle hynny, defnyddir seiffr nant ChaCha20, cryptograffig mewnosodiad dynwared Poly1305 a swyddogaethau hash cryptograffig perchnogol.

Mae'r allwedd gyfrinachol yn cael ei gynhyrchu gan ddefnyddio Protocol Diffie-Hellman yn seiliedig ar gromlin eliptig Curve25519. Pan hashing, maent yn defnyddio swyddogaethau hash BLAKE2 и SipHash. Oherwydd fformat y stamp amser TAI64N mae'r protocol yn taflu pecynnau sydd â gwerth stamp amser llai, a thrwy hynny atal DoS- и ymosodiadau ailchwarae.

Yn yr achos hwn, mae WireGuard yn defnyddio'r swyddogaeth ioctl i reoli I / O (a ddefnyddiwyd yn flaenorol cyswllt rhwyd), sy'n gwneud y cod yn lanach ac yn symlach. Gallwch wirio hyn trwy edrych ar cod cyfluniad.

Cynlluniau datblygwyr

Am y tro, mae WireGuard yn fodiwl cnewyllyn allan-o-goed. Ond awdur y prosiect yw Jason Donenfeld meddai, bod yr amser wedi dod ar gyfer gweithredu'n llawn yn y cnewyllyn Linux. Oherwydd ei fod yn symlach ac yn fwy dibynadwy nag atebion eraill. Jason yn hyn o beth yn cefnogi galwodd hyd yn oed Linus Torvalds ei hun y cod WireGuard yn “waith celf.”

Ond nid oes neb yn sôn am yr union ddyddiadau ar gyfer cyflwyno WireGuard i'r cnewyllyn. AC prin bydd hyn yn digwydd gyda rhyddhau cnewyllyn Linux Awst 4.18. Fodd bynnag, mae posibilrwydd y bydd hyn yn digwydd yn y dyfodol agos iawn: yn fersiwn 4.19 neu 5.0.

Pan fydd WireGuard yn cael ei ychwanegu at y cnewyllyn, datblygwyr eisiau cwblhau'r cais ar gyfer dyfeisiau Android a dechrau ysgrifennu cais ar gyfer iOS. Mae yna hefyd gynlluniau i gwblhau gweithrediadau yn Go and Rust a'u trosglwyddo i macOS, Windows a BSD. Bwriedir hefyd gweithredu WireGuard ar gyfer mwy o “systemau egsotig”: DPDK, FPGA, yn ogystal â llawer o bethau diddorol eraill. Mae pob un ohonynt wedi'u rhestru yn rhestr o bethau mae angen gwneud awduron y prosiect.

ON Ychydig mwy o erthyglau o'n blog corfforaethol:

Prif gyfeiriad ein gweithgaredd yw darparu gwasanaethau cwmwl:

Isadeiledd Rhithwir (IaaS) | PCI DSS hosting | Cwmwl FZ-152 | SAP hosting | Storio rhithwir | Amgryptio data yn y cwmwl | Storio cwmwl

Ffynhonnell: hab.com

Ychwanegu sylw