A WireGuard „eljön” a Linux kernelhez – miért?

Július végén javasolták a WireGuard VPN alagút fejlesztői tapaszkészlet, amely a VPN-alagútkezelő szoftverüket a Linux kernel részévé teszi. Az „ötlet” megvalósításának pontos időpontja azonban továbbra sem ismert. A vágás alatt részletesebben beszélünk erről az eszközről.

A WireGuard „eljön” a Linux kernelhez – miért?
/ fotó Tambako a Jaguár CC

Röviden a projektről

A WireGuard egy következő generációs VPN-alagút, amelyet Jason A. Donenfeld, az Edge Security vezérigazgatója hozott létre. A projektet mint egyszerűsített és az OpenVPN és az IPsec gyors alternatívája. A termék első verziója mindössze 4 ezer sornyi kódot tartalmazott. Összehasonlításképpen, az OpenVPN körülbelül 120 ezer sorral rendelkezik, az IPSec pedig 420 ezer.

On szerint A fejlesztők számára a WireGuard könnyen konfigurálható, és protokollbiztonság érhető el bevált kriptográfiai algoritmusokon keresztül. Hálózatváltáskor: A Wi-Fi-nek, az LTE-nek vagy az Ethernet-nek minden alkalommal újra csatlakoznia kell a VPN-kiszolgálóhoz. A WireGuard szerverek akkor sem szakítják meg a kapcsolatot, ha a felhasználó új IP-címet kapott.

Annak ellenére, hogy a WireGuardot eredetileg a Linux kernelhez tervezték, a fejlesztők gondoskodott valamint az eszköz Android-eszközökhöz készült hordozható verziójáról. Az alkalmazás még nincs teljesen kifejlesztve, de most kipróbálhatja. Ehhez kell legyen az egyik tesztelő.

Általában véve a WireGuard meglehetősen népszerű, sőt az is volt megvalósítani számos VPN-szolgáltató, például a Mullvad és az AzireVPN. Megjelent az interneten nagy szám beállítási útmutatók ezt a döntést. Például, vannak útmutatók, amelyeket a felhasználók hoznak létre, és vannak útmutatók, a projekt szerzői készítették el.

Műszaki

В hivatalos dokumentáció (18. o.) meg kell jegyezni, hogy a WireGuard átviteli sebessége négyszer nagyobb, mint az OpenVPN-é: 1011 Mbit/s versus 258 Mbit/s. A WireGuard a Linux IPsec szabványos megoldását is megelőzi – 881 Mbit/s. A könnyű beállításban is felülmúlja.

A kulcscsere (a VPN-kapcsolat az SSH-hoz hasonlóan inicializálva) és a kapcsolat létrejötte után a WireGuard minden egyéb feladatot önállóan kezel: nem kell aggódni az útválasztás, az állapotvezérlés stb. miatt. További konfigurációs erőfeszítésekre lesz szükség. szükséges, ha szimmetrikus titkosítást szeretne használni.

A WireGuard „eljön” a Linux kernelhez – miért?
/ fotó Anders Hojbjerg CC

A telepítéshez 4.1-nél régebbi Linux kernellel rendelkező disztribúcióra lesz szükség. Megtalálható a főbb Linux disztribúciók tárolóiban.

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

Amint az xakep.ru szerkesztői megjegyzik, a forrásszövegekből történő önösszeállítás is egyszerű. Elég megnyitni a felületet, és létrehozni nyilvános és privát kulcsokat:

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

WireGuard nem használja interfész a titkosítási szolgáltatóval való együttműködéshez CryptoAPI. Ehelyett adatfolyam titkosítót használnak ChaCha20, kriptográfiai utánzat betét Poly1305 és szabadalmaztatott kriptográfiai hash funkciók.

A titkos kulcs a használatával generálódik Diffie-Hellman protokoll elliptikus görbe alapján Curve25519. Hasheléskor használnak hash függvények BLAKE2 и SipHash. Az időbélyeg formátuma miatt TAI64N a protokoll eldobja a kisebb időbélyeg értékű csomagokat, ezáltal a DoS megakadályozása и támadások visszajátszása.

Ebben az esetben a WireGuard az ioctl függvényt használja az I/O vezérlésére (korábban netlink), ami tisztábbá és egyszerűbbé teszi a kódot. Ezt megnézve ellenőrizheti konfigurációs kód.

Fejlesztői tervek

Egyelőre a WireGuard egy fán kívüli kernelmodul. De a projekt szerzője Jason Donenfeld beszél, hogy eljött az ideje a teljes megvalósításnak a Linux kernelben. Mert egyszerűbb és megbízhatóbb, mint a többi megoldás. Jason ebben a tekintetben támogatja még maga Linus Torvalds is „műalkotásnak” nevezte a WireGuard kódot.

De senki sem beszél a WireGuard kernelbe való bevezetésének pontos dátumairól. ÉS alig ez az augusztusi Linux kernel 4.18 kiadásával fog megtörténni. Lehetséges azonban, hogy ez a közeljövőben megtörténik: a 4.19-es vagy az 5.0-s verzióban.

Amikor a WireGuardot hozzáadják a kernelhez, a fejlesztők akar véglegesítse az alkalmazást Android-eszközökhöz, és kezdjen el írni egy alkalmazást iOS-re. A tervek között szerepel a Go and Rust implementációinak befejezése, valamint azok macOS-re, Windows-ra és BSD-re történő portolása. A tervek között szerepel a WireGuard bevezetése is „egzotikusabb rendszerekre”: DPDK, FPGA, valamint sok más érdekesség. Mindegyik felsorolva van feladatlista a projekt szerzői.

PS Még néhány cikk céges blogunkról:

Tevékenységünk fő iránya a felhőszolgáltatások nyújtása:

Virtuális infrastruktúra (IaaS) | PCI DSS hosting | Felhő FZ-152 | SAP hosting | Virtuális tárhely | Adatok titkosítása a felhőben | Felhőbeli tárolás

Forrás: will.com

Hozzászólás