VPN WireGuard na pinagtibay ng OpenBSD

Jason A. Donenfeld, may-akda ng VPN WireGuard, inihayag ΠΎ pagtanggap kasama sa pangunahing OpenBSD kernel driver na "wg" para sa WireGuard protocol, pagpapatupad tiyak na interface ng network at mga pagbabago toolkit na gumagana sa espasyo ng gumagamit. Ang OpenBSD ay naging pangalawang OS pagkatapos Linux na may buo at pinagsamang suporta sa WireGuard. Ang WireGuard ay inaasahang isasama sa paglabas ng OpenBSD 6.8.

Ang mga patch ay may kasamang driver para sa OpenBSD kernel, mga pagbabago sa ifconfig at tcpdump utilities upang suportahan ang WireGuard functionality, dokumentasyon, at maliliit na pagbabago upang maisama ang WireGuard sa natitirang bahagi ng system. Gumagamit ang driver ng sarili nitong pagpapatupad ng mga algorithm Blake2s, hchacha20 ΠΈ kurba25519, pati na rin ang pagpapatupad ng SipHash na mayroon na sa OpenBSD kernel.

Tugma ang pagpapatupad sa lahat ng opisyal na kliyente ng WireGuard para sa Linux, Windows, macOS, *BSD, iOS at Android. Ang pagsubok sa pagganap sa laptop ng isang developer (Lenovo x230) ay nagpakita ng throughput na 750mbit/s. Para sa paghahambing, ang isakmpd na may mga pangunahing setting ng ike psk ay nagbibigay ng throughput na 380mbit/s.

Sa pagbuo ng driver para sa OpenBSD kernel, ang ilang mga solusyon sa arkitektura ay pinili na katulad ng driver para sa Linux, ngunit ang driver ay pangunahing binuo para sa OpenBSD, na isinasaisip ang mga detalye ng system na ito at isinasaalang-alang ang karanasang natamo sa paggawa ng driver para sa Linux. Sa pahintulot ng orihinal na may-akda ng WireGuard, ang buong code ng bagong driver ay ipinamamahagi sa ilalim ng libreng lisensya ng ISC.

Ang driver ay mahigpit na sumasama sa OpenBSD networking stack at gumagamit ng mga umiiral na subsystem, na ginagawang napaka-compact ng code (mga 3000 linya ng code). Kabilang sa mga pagkakaiba, ang paghihiwalay ng mga bahagi ng driver ay iba rin sa para sa Linux: Ang mga interface na partikular sa OpenBSD ay inilalagay sa mga file na "if_wg.*", ang code ng proteksyon ng DoS ay nasa "wg_cookie.*", at ang negosasyon at pag-encrypt ng koneksyon ang logic ay nasa β€œwg_noise.*” "

Pinagmulan: opennet.ru

Magdagdag ng komento