VPN WireGuard geus katampa kana cabang net-salajengna sarta dijadwalkeun pikeun kaasup dina Linux Ubuntu kernel 5.6.

David Miller (David S. Gedang), tanggung jawab pikeun subsistem jaringan tina kernel Linux, ditarima ka net-cabang salajengna tambalan kalawan palaksanaan panganteur VPN ti proyék WireGuard. Awal taun hareup, parobahan akumulasi dina cabang net-hareup bakal jadi dadasar pikeun ngaleupaskeun kernel Linux Ubuntu 5.6.

Usaha pikeun nyorong kode WireGuard kana kernel utama parantos dilakukeun dina sababaraha taun ka pengker, tapi tetep gagal kusabab kabeungkeut kana palaksanaan proprietary fungsi kriptografi anu dianggo pikeun ningkatkeun kinerja. Dina awalna, fungsi ieu diajukeun pikeun kernel salaku API Séng tingkat low tambahan, nu pamustunganana bisa ngaganti API Crypto baku.

Saatos diskusi dina konferensi Resep Kernel, panyipta WireGuard dina bulan Séptémber nyieun kaputusan kompromi mindahkeun patch anjeun pikeun ngagunakeun Crypto API sadia dina inti, nu WireGuard pamekar boga keluhan dina widang kinerja sarta kaamanan umum. Diputuskeun pikeun neraskeun ngembangkeun API Seng, tapi salaku proyék anu misah.

Dina bulan Nopémber, pamekar kernel indit dina respon kana kompromi sarta sapuk pikeun mindahkeun bagian tina kode ti Séng kana kernel utama. Intina, sababaraha komponén Séng bakal dipindahkeun kana inti, tapi teu salaku API misah, tapi salaku bagian tina subsistem API Crypto. Contona, Crypto API geus kaasup palaksanaan gancang tina algoritma ChaCha20 sareng Poly1305 disiapkeun dina WireGuard.

Dina sambungan jeung pangiriman upcoming of WireGuard dina inti utama, pangadeg proyék ngumumkeun ngeunaan restructuring gudang. Pikeun nyederhanakeun pamekaran, gudang monolithic "WireGuard.git", anu dirancang pikeun aya dina isolasi, bakal diganti ku tilu repositori anu misah, langkung cocog pikeun ngatur karya sareng kode dina kernel utama:

  • wireguard-linux.git - tangkal kernel lengkep sareng parobihan tina proyék Wireguard, patches anu bakal diulas pikeun dilebetkeun kana kernel sareng ditransfer rutin ka cabang net / net-salajengna.
  • alat-alat-alat.git - gudang pikeun utilitas sareng skrip dijalankeun dina rohangan pangguna, sapertos wg sareng wg-gancang. Repository tiasa dianggo pikeun nyiptakeun bungkusan pikeun distribusi.
  • wireguard-linux-compat.git - Repository kalawan varian modul, disadiakeun misah ti kernel tur kaasup lapisan compat.h pikeun mastikeun kasaluyuan jeung kernels heubeul. Pangwangunan utama bakal dilakukeun dina gudang wireguard-linux.git, tapi salami aya kasempetan sareng kabutuhan diantara pangguna, versi anu misah tina patches ogé bakal dirojong dina bentuk kerja.

Hayu urang ngingetan yén VPN WireGuard dilaksanakeun dina dasar métode enkripsi modern, nyadiakeun kinerja pisan tinggi, gampang ngagunakeun, bébas tina komplikasi jeung geus kabuktian sorangan dina Jumlah deployments badag nu ngolah volume badag lalulintas. proyék nu geus ngembang saprak 2015, geus diaudit na verifikasi formal métode énkripsi dipaké. Pangrojong WireGuard parantos terpadu kana NetworkManager sareng systemd, sareng patch kernel kalebet dina distribusi dasar Debian henteu stabil, Mageia, Alpine, Arch, Gentoo, OpenWrt, NixOS, Subgraf и Alt.

WireGuard nganggo konsép routing konci énkripsi, anu ngalibatkeun ngalampirkeun konci pribadi ka unggal antarmuka jaringan sareng nganggo éta pikeun ngabeungkeut konci umum. Konci publik ditukeurkeun pikeun nyieun sambungan dina cara nu sarupa jeung SSH. Pikeun konci negotiate tur sambungkeun tanpa ngajalankeun daemon misah dina spasi pamaké, mékanisme Noise_IK ti Noise Protocol Frameworksarupa jeung ngajaga authorized_keys di SSH. Pangiriman data dilaksanakeun ngaliwatan enkapsulasi dina pakét UDP. Ieu ngarojong ngarobah alamat IP tina server VPN (roaming) tanpa megatkeun sambungan jeung otomatis reconfiguring klien nu.

Pikeun énkripsi digunakeun stream cipher ChaCha20 sareng algoritma auténtikasi pesen (MAC) Poly1305, dirancang ku Daniel Bernstein (Daniel J. Bernstein), Tanya Lange
(Tanja Lange) jeung Peter Schwabe. ChaCha20 sareng Poly1305 diposisikan salaku analog anu langkung gancang sareng aman tina AES-256-CTR sareng HMAC, palaksanaan parangkat lunak anu ngamungkinkeun pikeun ngahontal waktos palaksanaan tetep tanpa nganggo dukungan hardware khusus. Pikeun ngahasilkeun konci rahasia anu dibagikeun, kurva elliptic Diffie-Hellman protokol dianggo dina palaksanaan Curve25519, ogé diajukeun ku Daniel Bernstein. Algoritma anu dianggo pikeun hashing nyaéta BLAKE2s (RFC7693).

di nguji Performance WireGuard nunjukkeun throughput 3.9 kali leuwih luhur sarta 3.8 kali leuwih responsif dibandingkeun OpenVPN (256-bit AES kalawan HMAC-SHA2-256). Dibandingkeun sareng IPsec (256-bit ChaCha20 + Poly1305 sareng AES-256-GCM-128), WireGuard nunjukkeun paningkatan kinerja sakedik (13-18%) sareng latency langkung handap (21-23%). Tés dilaksanakeun nganggo palaksanaan gancang tina algoritma enkripsi anu dikembangkeun ku proyék - nransferkeun kana API Crypto standar kernel tiasa nyababkeun kinerja anu langkung parah.

VPN WireGuard geus katampa kana cabang net-salajengna sarta dijadwalkeun pikeun kaasup dina Linux Ubuntu kernel 5.6.

sumber: opennet.ru

Tambahkeun komentar