VPN WireGuard được OpenBSD áp dụng

Jason A. Donenfeld, tác giả của VPN WireGuard, công bố о chấp thuận được bao gồm trong trình điều khiển hạt nhân OpenBSD chính "wg" cho giao thức WireGuard, thực hiện giao diện mạng cụ thể và thay đổi bộ công cụ làm việc trong không gian người dùng. OpenBSD trở thành hệ điều hành thứ hai sau Linux với sự hỗ trợ đầy đủ và tích hợp của WireGuard. WireGuard dự kiến ​​sẽ được đưa vào bản phát hành OpenBSD 6.8.

Các bản vá bao gồm trình điều khiển cho hạt nhân OpenBSD, các thay đổi đối với tiện ích ifconfig và tcpdump để hỗ trợ chức năng, tài liệu của WireGuard và các thay đổi nhỏ để tích hợp WireGuard với phần còn lại của hệ thống. Trình điều khiển sử dụng thuật toán triển khai riêng của mình Blake2s, hchacha20 и đường cong25519, cũng như việc triển khai SipHash đã có trong hạt nhân OpenBSD.

Việc triển khai tương thích với tất cả các ứng dụng khách WireGuard chính thức dành cho Linux, Windows, macOS, *BSD, iOS và Android. Thử nghiệm hiệu suất trên máy tính xách tay của nhà phát triển (Lenovo x230) cho thấy tốc độ 750mbit/s. Để so sánh, isakmpd với cài đặt ike psk cơ bản cung cấp thông lượng 380mbit/s.

Khi phát triển trình điều khiển cho hạt nhân OpenBSD, một số giải pháp kiến ​​trúc tương tự như trình điều khiển cho Linux đã được chọn, nhưng trình điều khiển chủ yếu được phát triển cho OpenBSD, ghi nhớ các đặc điểm cụ thể của hệ thống này và tính đến kinh nghiệm có được khi tạo trình điều khiển cho Linux. Với sự đồng ý của tác giả gốc của WireGuard, toàn bộ mã của trình điều khiển mới được phân phối theo giấy phép ISC miễn phí.

Trình điều khiển tích hợp chặt chẽ với ngăn xếp mạng OpenBSD và sử dụng các hệ thống con hiện có, khiến mã rất nhỏ gọn (khoảng 3000 dòng mã). Trong số những khác biệt, việc phân tách các thành phần trình điều khiển cũng khác với Linux: Các giao diện dành riêng cho OpenBSD được đặt trong các tệp “if_wg.*”, mã bảo vệ DoS nằm trong “wg_cookie.*”, và quá trình đàm phán và mã hóa kết nối logic nằm trong “wg_noise.*” "

Nguồn: opennet.ru

Thêm một lời nhận xét