VPN WireGuard wis ditampa ing cabang net-next lan dijadwal kanggo dilebokake ing kernel Linux 5.6

David Miller (David S. Miller), tanggung jawab kanggo subsistem jaringan kernel Linux, Ditampa menyang cabang net-sabanjuré tambalan karo implementasine saka antarmuka VPN saka project WireGuard. Awal taun ngarep, owah-owahan akumulasi ing cabang net-next bakal dadi basis kanggo release saka Linux kernel 5.6.

Upaya kanggo nyurung kode WireGuard menyang kernel utama wis ditindakake sajrone sawetara taun kepungkur, nanging tetep ora kasil amarga ana gandhengane karo implementasi eksklusif fungsi kriptografi sing digunakake kanggo nambah kinerja. Kaping pisanan, fungsi kasebut ngajokaken kanggo kernel minangka tambahan Seng API tingkat kurang, kang pungkasanipun bisa ngganti standar Crypto API.

Sawise diskusi ing konferensi Resep Kernel, para pangripta WireGuard ing wulan September nggawe keputusan kompromi nransfer patches kanggo nggunakake API Crypto kasedhiya ing inti, kanggo pangembang WireGuard keluhan ing lapangan kinerja lan keamanan umum. Diputusake kanggo terus ngembangake API Seng, nanging minangka proyek sing kapisah.

Ing November, pangembang kernel tindak kanggo nanggepi kompromi lan sarujuk kanggo nransfer bagean kode saka Seng kanggo kernel utama. Ateges, sawetara komponen Seng bakal dipindhah menyang inti, nanging ora minangka API kapisah, nanging minangka bagéan saka subsistem API Crypto. Contone, Crypto API wis klebu implementasine cepet saka algoritma ChaCha20 lan Poly1305 disiapake ing WireGuard.

Ing sambungan karo pangiriman mbesuk saka WireGuard ing inti utama, pangadeg project diumumake babagan restrukturisasi repositori. Kanggo nyederhanakake pembangunan, repositori monolitik "WireGuard.git", sing dirancang kanggo ana ing isolasi, bakal diganti karo telung repositori sing kapisah, luwih cocog kanggo ngatur karya kanthi kode ing kernel utama:

  • wireguard-linux.git - wit kernel lengkap karo owah-owahan saka project Wireguard, patch saka kang bakal dideleng kanggo Gawan ing kernel lan ajeg ditransfer menyang net / net-sabanjure cabang.
  • alat wireguard.git - gudang kanggo keperluan lan skrip sing mbukak ing ruang pangguna, kayata wg lan wg-cepet. Repositori bisa digunakake kanggo nggawe paket kanggo distribusi.
  • wireguard-linux-compat.git - gudang karo varian saka modul, diwenehake kanthi kapisah saka kernel lan kalebu lapisan compat.h kanggo njamin kompatibilitas karo kernel lawas. Pangembangan utama bakal ditindakake ing repositori wireguard-linux.git, nanging anggere ana kesempatan lan kabutuhan ing antarane pangguna, versi patch sing kapisah uga bakal didhukung ing wangun kerja.

Ayo kita ngelingake yen VPN WireGuard dileksanakake kanthi basis metode enkripsi modern, nyedhiyakake kinerja sing dhuwur banget, gampang digunakake, bebas komplikasi lan wis mbuktekake dhewe ing sawetara penyebaran gedhe sing ngolah lalu lintas volume gedhe. Proyèk wis berkembang wiwit 2015, wis diaudit lan verifikasi formal cara enkripsi digunakake. Dhukungan WireGuard wis digabungake menyang NetworkManager lan systemd, lan patch kernel kalebu ing distribusi dhasar Debian Ora stabil, Mageia, Alpine, Arch, Gentoo, OpenWrt, NixOS, Subgraf и ALT.

WireGuard nggunakake konsep routing kunci enkripsi, sing kalebu nglebokake kunci pribadi menyang saben antarmuka jaringan lan digunakake kanggo ngiket kunci umum. Kunci umum diijolke kanggo nggawe sambungan kanthi cara sing padha karo SSH. Kanggo rembugan tombol lan nyambung tanpa mlaku daemon kapisah ing papan pangguna, mekanisme Noise_IK saka Kerangka Protokol Noisepadha karo njaga authorized_keys ing SSH. Transmisi data ditindakake liwat enkapsulasi ing paket UDP. Ndhukung ngganti alamat IP server VPN (roaming) tanpa medhot sambungan lan kanthi otomatis ngonfigurasi klien.

Kanggo enkripsi digunakake dening stream cipher ChaCha20 lan algoritma otentikasi pesen (MAC) Poly1305, dirancang dening Daniel Bernstein (Daniel J. Bernstein), Tanya Lange
(Tanja Lange) and Peter Schwabe. ChaCha20 lan Poly1305 dipanggonke minangka analog sing luwih cepet lan luwih aman saka AES-256-CTR lan HMAC, implementasine piranti lunak sing ngidini entuk wektu eksekusi tetep tanpa nggunakake dhukungan hardware khusus. Kanggo ngasilake kunci rahasia sing dienggo bareng, protokol Diffie-Hellman kurva eliptik digunakake ing implementasine Curve25519, uga diusulake dening Daniel Bernstein. Algoritma sing digunakake kanggo hashing yaiku BLAKE2s (RFC7693).

ing testing Performance WireGuard nuduhake 3.9 kaping luwih dhuwur lan 3.8 kaping luwih responsif dibandhingake OpenVPN (256-bit AES karo HMAC-SHA2-256). Dibandhingake karo IPsec (256-bit ChaCha20 + Poly1305 lan AES-256-GCM-128), WireGuard nuduhake perbaikan kinerja tipis (13-18%) lan latensi sing luwih murah (21-23%). Tes kasebut ditindakake kanthi nggunakake implementasi algoritma enkripsi kanthi cepet sing dikembangake dening proyek kasebut - nransfer menyang API Crypto standar kernel bisa nyebabake kinerja sing luwih elek.

VPN WireGuard wis ditampa ing cabang net-next lan dijadwal kanggo dilebokake ing kernel Linux 5.6

Source: opennet.ru

Add a comment