VPN WireGuard e amohetsoe lekaleng le latelang mme e reretsoe ho kenyelletsoa ho Linux 5.6 kernel.

David Miller (David S. Miller), e ikarabellang bakeng sa tsamaiso ea marang-rang ea Linux kernel, amoheloa ho fihla lekaleng le latelang likotla ka ts'ebetsong ea sebopeho sa VPN ho tsoa morerong WireGuard. Mathoasong a selemo se tlang, liphetoho tse bokelletsoeng lekaleng le latelang li tla theha motheo oa ho lokolloa ha Linux kernel 5.6.

Boiteko ba ho sutumelletsa khoutu ea WireGuard ka har'a kernel e kholo e entsoe lilemong tse 'maloa tse fetileng, empa e ile ea lula e sa atlehe ka lebaka la ho tlamahanngoa le ts'ebetsong ea ts'ebetsong ea mesebetsi ea cryptographic e neng e sebelisetsoa ho ntlafatsa tshebetso. Qalong, mesebetsi ena e ne e le sisintsweng bakeng sa kernel e le API e eketsehileng ea boemo bo tlaase ba Zinc, e ka qetellang e nka sebaka sa Crypto API e tloaelehileng.

Kamora lipuisano kopanong ea Kernel Recipes, baqapi ba WireGuard ka Loetse etsa qeto ea ho sekisetsa fetisetsa li-patches tsa hau ho sebelisa Crypto API e fumanehang motheong, eo baetsi ba WireGuard ba nang le litletlebo tšimong ea ts'ebetso le ts'ireletso e akaretsang. Ho ile ha etsoa qeto ea ho tsoela pele ho nts'etsapele Zinc API, empa e le morero o fapaneng.

Ka November, baetsi ba kernel ile ka lebaka la ho sekisetsa le ho lumellana ho fetisetsa karolo ea khoutu ho tloha Zinc ho ea kernel e kholo. Ha e le hantle, likarolo tse ling tsa Zinc li tla isoa motheong, empa eseng e le API e arohaneng, empa e le karolo ea tsamaiso e nyenyane ea Crypto API. Ka mohlala, Crypto API e se e ntse e le teng kenyellelitsoe ts'ebetsong e potlakileng ea ChaCha20 le Poly1305 algorithms e lokiselitsoeng ho WireGuard.

Mabapi le phano e tlang ea WireGuard molemong oa mantlha, mothehi oa morero tsebisitsoe mabapi le ho hlophisa bocha polokelo. Ho nolofatsa nts'etsopele, polokelo ea monolithic "WireGuard.git", e neng e etselitsoe hore e be teng ka thoko, e tla nkeloa sebaka ke lipolokelo tse tharo tse arohaneng, tse loketseng hantle bakeng sa ho hlophisa mosebetsi ka khoutu ka har'a kernel e kholo:

  • lebokose-linux.git - Sefate sa kernel se felletseng se nang le liphetoho tse tsoang morerong oa Wireguard, lipeche tse tla hlahlojoa ho kenyeletsoa ka har'a kernel le ho fetisetsoa khafetsa makaleng a marang-rang / a latelang.
  • li-wireguard-lisebelisoa.git - sebaka sa polokelo ea lisebelisoa le lingoloa tse tsamaisoang sebakeng sa basebelisi, joalo ka wg le wg-potlako. Sebaka sa polokelo se ka sebelisoa ho theha liphutheloana bakeng sa kabo.
  • hannata-linux-compat.git - polokelo e nang le mofuta o fapaneng oa mojule, e fanoeng ka thoko ho kernel le ho kenyeletsoa lera la compat.h ho netefatsa ho lumellana le lithollo tsa khale. Nts'etsopele ea mantlha e tla etsoa sebakeng sa polokelo ea wireguard-linux.git, empa ha feela ho na le monyetla le tlhoko har'a basebelisi, mofuta o fapaneng oa li-patches le ona o tla tšehetsoa ka mokhoa oa ho sebetsa.

A re u hopotse hore VPN WireGuard e kenngoa ts'ebetsong motheong oa mekhoa ea morao-rao ea ho kenyelletsa, e fana ka ts'ebetso e phahameng haholo, e bonolo ho e sebelisa, ha e na mathata 'me e ipakile e le palo e kholo ea lisebelisoa tse sebetsanang le sephethephethe se seholo. Morero ona esale o ntlafala ho tloha ka 2015, o hlahlobiloe le ho netefatso ya semmuso mekhoa ea encryption e sebelisitsoeng. Ts'ehetso ea WireGuard e se e kopantsoe ho NetworkManager le systemd, 'me li-patches tsa kernel li kenyelelitsoe ho arolelanoeng ha motheo. Debian e sa tsitsang, Mageia, Alpine, Arch, Gentoo, OpenWrt, NixOS, Seratsoana и ALT.

WireGuard e sebelisa mohopolo oa li-encryption key routing, tse kenyelletsang ho hokela senotlolo sa lekunutu ho sehokelo se seng le se seng sa marang-rang le ho se sebelisa ho tlama linotlolo tsa sechaba. Linotlolo tsa sechaba lia fapanyetsanoa ho theha khokahano ka tsela e ts'oanang le SSH. Ho buisana le linotlolo le ho hokela ntle le ho sebelisa daemon e arohaneng sebakeng sa mosebelisi, mochini oa Noise_IK ho tloha Moralo oa Tsamaiso ea Lerataho tšoana le ho boloka li-audhised_keys ho SSH. Phetiso ea data e etsoa ka ho kenyelletsa lipakete tsa UDP. E ts'ehetsa ho fetola aterese ea IP ea seva sa VPN (ho solla) ntle le ho khaola khokahano le ho hlophisa moreki ka bo eona.

Bakeng sa encryption e sebelisoa stream cipher ChaCha20 le algorithm ea netefatso ea molaetsa (MAC) Poly1305, e entsoeng ke Daniel Bernstein (Daniel J. Bernstein), Tanya Lange
(Tanja Lange) le Peter Schwabe. ChaCha20 le Poly1305 li behiloe e le li-analogues tse potlakileng le tse sireletsehileng tsa AES-256-CTR le HMAC, ts'ebetso ea software e lumellang ho fihlela nako e tsitsitseng ea ts'ebetso ntle le ts'ehetso e khethehileng ea lisebelisoa. Ho hlahisa senotlolo se arolelanoang sa lekunutu, ho sebelisoa protocol ea elliptic curve Diffie-Hellman ts'ebetsong Curve25519, hape e hlahisitsoeng ke Daniel Bernstein. Algorithm e sebelisoang bakeng sa hashing ke BLAKE2s (RFC7693).

ka tekolo Ts'ebetso ea WireGuard e bonts'itse nako ea 3.9 e phahameng ka ho fetesisa le karabelo e phahameng makhetlo a 3.8 ha e bapisoa le OpenVPN (256-bit AES e nang le HMAC-SHA2-256). Ha e bapisoa le IPsec (256-bit ChaCha20 + Poly1305 le AES-256-GCM-128), WireGuard e bontša ntlafatso e fokolang ea ts'ebetso (13-18%) le latency e tlaase (21-23%). Liteko li ile tsa etsoa ho sebelisoa ts'ebetsong e potlakileng ea li-algorithms tsa encryption tse entsoeng ke morero - ho fetisetsoa ho Crypto API e tloaelehileng ea kernel ho ka lebisa ts'ebetsong e mpe.

VPN WireGuard e amohetsoe lekaleng le latelang mme e reretsoe ho kenyelletsoa ho Linux 5.6 kernel.

Source: opennet.ru

Eketsa ka tlhaloso