ProHoster > WireGuard Linux yadrosiga "keladi" - nega?
WireGuard Linux yadrosiga "keladi" - nega?
Iyul oyi oxirida WireGuard VPN tunnelini ishlab chiquvchilar taklif qilishdi yamoq to'plami, bu ularning VPN tunnel dasturini Linux yadrosining bir qismiga aylantiradi. Biroq, "g'oya" ni amalga oshirishning aniq sanasi noma'lumligicha qolmoqda. Kesish ostida biz ushbu vosita haqida batafsilroq gaplashamiz.
WireGuard - bu Edge Security bosh direktori Jeyson A. Donenfeld tomonidan yaratilgan yangi avlod VPN tunnelidir. Loyiha sifatida ishlab chiqilgan soddalashtirilgan va OpenVPN va IPsec-ga tezkor alternativ. Mahsulotning birinchi versiyasida atigi 4 ming qator kod mavjud edi. Taqqoslash uchun, OpenVPN 120 mingga yaqin qatorga ega, IPSec esa 420 ming.
haqida ko'ra Ishlab chiquvchilar uchun WireGuard-ni sozlash oson va protokol xavfsizligiga erishiladi isbotlangan kriptografik algoritmlar orqali. Tarmoqni o'zgartirganda: Wi-Fi, LTE yoki Ethernet har safar VPN serveriga qayta ulanishi kerak. WireGuard serverlari, hatto foydalanuvchi yangi IP-manzil olgan bo'lsa ham, ulanishni to'xtatmaydi.
WireGuard dastlab Linux yadrosi uchun ishlab chiqilganiga qaramay, ishlab chiquvchilar g'amxo'rlik qilingan va Android qurilmalari uchun vositaning portativ versiyasi haqida. Ilova hali toʻliq ishlab chiqilmagan, lekin hozir uni sinab koʻrishingiz mumkin. Buning uchun sizga kerak sinovchilardan biriga aylaning.
В rasmiy hujjatlar (18-bet) qayd etilishicha, WireGuard’ning o‘tkazuvchanligi OpenVPN’dan to‘rt baravar yuqori: mos ravishda 1011 Mbit/s 258 Mbit/s. WireGuard Linux IPsec uchun standart yechimdan ham oldinda - 881 Mbit/s. O'rnatish qulayligi bo'yicha ham undan oshib ketadi.
Kalitlar almashtirilgandan so'ng (VPN ulanishi xuddi SSH kabi ishga tushiriladi) va ulanish o'rnatilgandan so'ng, WireGuard boshqa barcha vazifalarni o'zi hal qiladi: marshrutlash, holatni boshqarish va hokazolar haqida tashvishlanishning hojati yo'q. Qo'shimcha konfiguratsiya harakatlari faqat nosimmetrik shifrlashdan foydalanmoqchi bo'lsangiz kerak.
Xakep.ru muharrirlarining ta'kidlashicha, manba matnlaridan o'z-o'zini yig'ish ham oson. Interfeysni ochish va umumiy va shaxsiy kalitlarni yaratish kifoya:
$ sudo ip link add dev wg0 type wireguard
$ wg genkey | tee privatekey | wg pubkey > publickey
WireGuard foydalanmaydi kripto provayderi bilan ishlash uchun interfeys KriptoAPI. Buning o'rniga oqim shifridan foydalaniladi ChaCha20, kriptografik taqlid kiritma Poly1305 va xususiy kriptografik xesh funksiyalari.
Bunday holda, WireGuard I/U ni boshqarish uchun ioctl funksiyasidan foydalanadi (ilgari ishlatilgan netlink), bu kodni yanada toza va sodda qiladi. Buni ko'rib chiqish orqali tasdiqlashingiz mumkin konfiguratsiya kodi.
Ishlab chiquvchi rejalari
Hozircha WireGuard daraxtdan tashqari yadro modulidir. Ammo loyiha muallifi - Jeyson Donenfeld U gapiradi, Linux yadrosida to'liq amalga oshirish vaqti keldi. Chunki u boshqa yechimlarga qaraganda sodda va ishonchli. Bu borada Jeyson qo'llab-quvvatlash hatto Linus Torvaldsning o'zi WireGuard kodini "san'at asari" deb atagan.
Ammo WireGuard-ni yadroga kiritishning aniq sanalari haqida hech kim gapirmayapti. VA zo'rg'a bu avgust Linux yadrosi 4.18 chiqishi bilan sodir bo'ladi. Biroq, bu juda yaqin kelajakda sodir bo'lishi ehtimoli bor: 4.19 yoki 5.0 versiyalarida.
WireGuard yadroga qo'shilganda, ishlab chiquvchilar istayman Android qurilmalari uchun dasturni yakunlang va iOS uchun dastur yozishni boshlang. Shuningdek, Go va Rust-da amalga oshirishni yakunlash va ularni macOS, Windows va BSD-ga o'tkazish rejalashtirilgan. Shuningdek, WireGuard-ni ko'proq "ekzotik tizimlar" uchun joriy etish rejalashtirilgan: DPDK, FPGA, shuningdek, boshqa ko'plab qiziqarli narsalar. Ularning barchasi ro'yxatga kiritilgan ro'yxatini qilish loyiha mualliflari.
PS Korporativ blogimizdan yana bir nechta maqolalar: