WireGuard "ichauya" kuLinux kernel - nei?

Pakupera kwaChikunguru, vagadziri veWireGuard VPN mugero vakakurudzira chigamba set, iyo ichaita yavo VPN tunneling software chikamu cheLinux kernel. Zvisinei, zuva chairo rekushandiswa kwe "pfungwa" rinoramba risingazivikanwi. Pazasi pekucheka tichataura nezve chishandiso ichi zvakadzama.

WireGuard "ichauya" kuLinux kernel - nei?
/ mufananidzo Tambako The Jaguar CC

Muchidimbu nezvechirongwa

WireGuard chizvarwa chinotevera VPN mugero wakagadzirwa naJason A. Donenfeld, CEO weEdge Security. Chirongwa chakagadzirwa se nyore uye imwe inokurumidza imwe nzira kune OpenVPN uye IPsec. Yekutanga vhezheni yechigadzirwa yaingova ne4 zviuru mitsetse yekodhi. Kuenzanisa, OpenVPN ine zviuru zana nemakumi maviri mitsara, uye IPSec - zviuru mazana mana nemakumi maviri.

By maererano vagadziri, WireGuard iri nyore kugadzirisa uye chengetedzo yeprotocol inowanikwa kuburikidza neyakasimbiswa cryptographic algorithms. Pakuchinja network: Wi-Fi, LTE kana Ethernet inoda kubatana zvakare kune VPN sevha nguva dzese. Masevha eWireGuard haamise kubatana, kunyangwe mushandisi agamuchira kero itsva yeIP.

Kunyangwe chokwadi chekuti WireGuard yakatanga kugadzirirwa iyo Linux kernel, ivo vanogadzira kuchengetwa uye nezve inotakurika vhezheni yechishandiso chemidziyo yeAroid. Iyo application haisati yagadzirwa zvizere, asi unogona kuiedza izvozvi. Nokuda kweizvi unoda kuva mumwe wevaedzi.

Kazhinji, WireGuard yakakurumbira uye yakatove itwa akati wandei VPN vanopa, senge Mullvad uye AzireVPN. Rakadhindwa online nhamba huru setup guides chisarudzo ichi. Semuyenzaniso, kune vanotungamirira, izvo zvinogadzirwa nevashandisi, uye kune vatungamiriri, yakagadzirirwa nevanyori veprojekti.

Unyanzvi ruzivo

Π’ zvinyorwa zvepamutemo (p. 18) inocherechedzwa kuti kubuda kweWireGuard kwakapetwa kana kupfuura kweOpenVPN: 1011 Mbit / s inopesana ne258 Mbit / s, zvichiteerana. WireGuard iri zvakare pamberi peyakajairwa mhinduro yeLinux IPsec - ine 881 Mbit/s. Iyo zvakare inodarika iyo mukureruka kwekuseta.

Mushure mekunge makiyi achitsinhaniswa (iyo VPN yekubatanidza inotangwa zvakanyanya seSSH) uye kubatana kwasimbiswa, WireGuard inobata mamwe mabasa ese ari ega: hapana chikonzero chekunetseka nezve nzira, kutonga kwenyika, nezvimwe. inodiwa kana iwe uchida kushandisa symmetric encryption.

WireGuard "ichauya" kuLinux kernel - nei?
/ mufananidzo Anders Hojbjerg CC

Kuisa, iwe uchada kugovera neLinux kernel yakakura kupfuura 4.1. Inogona kuwanikwa mune repositories makuru eLinux kugovera.

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

Sezvo vapepeti ve xakep.ru note, self-assembly kubva kuzvinyorwa zvinyorwa zvakare zvakare nyore. Zvakakwana kuvhura iyo interface uye kugadzira makiyi eruzhinji uye akavanzika:

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

WireGuard haishandisi interface yekushanda ne crypto provider CryptoAPI. Pane kudaro, stream cipher inoshandiswa ChaCha20, cryptographic kutevedzera kuisa Poly1305 uye proprietary cryptographic hash mabasa.

Kiyi yakavanzika inogadzirwa uchishandisa Diffie-Hellman protocol zvichibva pane elliptic curve Curve25519. Kana hashing, vanoshandisa hash mabasa BLAKE2 ΠΈ SipHash. Nekuda kwechitambi chenguva TAI64N iyo protocol inorasa mapaketi ane diki timestamp kukosha, nekudaro kudzivirira DoS- ΠΈ replay attack.

Muchiitiko ichi, WireGuard inoshandisa iyo ioctl basa kudzora I/O (yaimboshandiswa netlink), iyo inoita kuti kodhi ive yakachena uye nyore. Unogona kuzvisimbisa nekutarisa configuration code.

Zvirongwa zvevagadziri

Parizvino, WireGuard iri kunze-kwemuti kernel module. Asi munyori wechirongwa ndiJason Donenfeld anoti, kuti nguva yasvika yekuita zvizere muLinux kernel. Nokuti iri nyore uye yakavimbika kupfuura mamwe mhinduro. Jason panyaya iyi zvitsigiso kunyange Linus Torvalds pachake akadana WireGuard kodhi "basa reunyanzvi."

Asi hapana ari kutaura nezve mazuva chaiwo ekuunzwa kweWireGuard mukernel. UYE kwete izvi zvichaitika nekuburitswa kweAugust Linux kernel 4.18. Nekudaro, pane mukana wekuti izvi zvichaitika munguva pfupi iri kutevera: mushanduro 4.19 kana 5.0.

Kana WireGuard yawedzerwa kune kernel, vagadziri kuda pedzisa chikumbiro chemidziyo yeAroid uye tanga kunyora kunyorera iOS. Kune zvakare zvirongwa zvekupedzisa kuita muGo uye Rust uye kuendesa kune macOS, Windows uye BSD. Izvo zvakare zvakarongwa kuita WireGuard kune mamwe "exotic system": DPDK, FPGA, pamwe chete nezvimwe zvinhu zvakawanda zvinofadza. Dzese dzakanyorwa mukati kuita-rondedzero vanyori vepurojekiti.

PS Zvimwe zvinyorwa zvishoma kubva kune yedu yekambani blog:

Iyo nzira huru yebasa redu kupihwa kwegore masevhisi:

Virtual Infrastructure (IaaS) | PCI DSS inobata | Cloud FZ-152 | SAP hosting | Virtual storage | Encrypting data mugore | Cloud kuchengetedza

Source: www.habr.com

Voeg