Wsparcie dla VPN WireGuard dodane do rdzenia NetBSD

Programiści projektu NetBSD donieśli o dołączeniu do głównego jądra NetBSD sterownika wg z realizacją protokołu WireGuard. NetBSD stała się trzecim systemem operacyjnym po Linuksie i OpenBSD z wbudowaną obsługą WireGuard. Zaproponowano również towarzyszące polecenia do konfigurowania VPN — wg-keygen i wgconfig. W domyślnej konfiguracji jądra (GENERIC) sterownik nie jest jeszcze aktywowany i wymaga wyraźnego wskazania w ustawieniach „pseudo-device wg”.

Dodatkowo można zaznaczyć publikację poprawki pakietu wireguard-tools 1.0.20200820, obejmującego działające w przestrzeni użytkownika narzędzia, takie jak wg i wg-quick. W nowym wydaniu przeprowadzono przygotowania IPC do nadchodzącej obsługi WireGuard w systemie operacyjnym FreeBSD. Zrealizowano podział kodu specyficznego dla różnych platform na różne pliki. Do pliku jednostki systemd dodano obsługę polecenia „reload”, co umożliwia uruchamianie konstrukcji w stylu „systemctl reload wg-quick at wgnet0”.

Przypominamy, że VPN WireGuard oparty jest na nowoczesnych metodach szyfrowania, zapewnia bardzo wysoką wydajność, jest prosty w użyciu, pozbawiony zbędnych komplikacji i dobrze sprawdził się w wielu zastosowaniach, przetwarzających duże ilości ruchu. Projekt rozwija się od 2015 roku, przeszedł audyt oraz formalną weryfikację zastosowanych metod szyfrowania. Wsparcie dla WireGuard zostało już zintegrowane z NetworkManager i systemd, a poprawki do jądra są częścią podstawowej struktury dystrybucji Debian Unstable, Mageia, Alpine, Arch, Gentoo, OpenWrt, NixOS, Subgraph i ALT.

W WireGuard zastosowano koncepcję trasowania opartą na kluczach szyfrowania, co oznacza przypisanie prywatnego klucza do każdego interfejsu sieciowego i wykorzystanie go do powiązania kluczy publicznych. Wymiana kluczy publicznych w celu nawiązania połączenia odbywa się na wzór SSH. Do ustalania kluczy i nawiązywania połączeń bez uruchamiania osobnego demona w przestrzeni użytkownika wykorzystuje się mechanizm Noise_IK z Noise Protocol Framework, przypominający utrzymywanie authorized_keys w SSH. Przesył danych odbywa się przez enkapsulację w pakietach UDP. Obsługiwane jest zmienianie adresu IP serwera VPN (roaming) bez przerywania połączenia z automatycznym rekonfigurowaniem klienta.

Do szyfrowania jest używane strumieniowy szyfr ChaCha20 i algorytm autoryzacji wiadomości (MAC) Poly1305, opracowane przez Daniela Bernsteina (Daniel J. Bernstein), Tanję Lange
(Tanja Lange) i Petera Schwabe'a (Peter Schwabe). ChaCha20 i Poly1305 są postrzegane jako szybsze i bezpieczniejsze odpowiedniki AES-256-CTR i HMAC, a ich implementacja programowa pozwala uzyskać stały czas wykonania bez potrzeby korzystania ze specjalnego wsparcia sprzętowego. Do generowania wspólnego tajnego klucza używany jest protokół Diffiego-Hellmana na krzywych eliptycznych w implementacji Curve25519, także zaproponowanej przez Daniela Bernsteina. Do haszowania stosowany jest algorytm BLAKE2s (RFC7693).

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster