The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Доступен VPN WireGuard 1.0.0

30.03.2020 19:12

Представлен знаковый выпуск VPN WireGuard 1.0.0, который отметил собой поставку компонентов WireGuard в основном составе ядра Linux 5.6 и стабилизацию разработки. Включённый в состав ядра Linux код прошёл дополнительный аудит безопасности, выполненный независимой фирмой, специализирующейся на подобных проверках. Аудит не выявил каких-либо проблем.

Так как WireGuard теперь развивается в основном составе ядра Linux, для дистрибутивов и пользователей, продолжающих использование старых версий ядра, подготовлен репозиторий wireguard-linux-compat.git. Репозиторий включает бэкпортированный код WireGuard и слой compat.h для обеспечения совместимости со старыми ядрами. Отмечается, что пока есть возможность разработчиков и потребность у пользователей обособленный вариант патчей будет поддерживаться в рабочем виде. В текущем виде обособленный вариант WireGuard может использоваться с ядрами из Ubuntu 20.04 и Debian 10 "Buster", а также доступен в виде патчей для ядер Linux 5.4 и 5.5. Дистрибутивы, применяющие самые свежие ядра, такие как Arch, Gentoo и Fedora 32, получат возможность использования WireGuard вместе с обновлением ядра 5.6.

Основной процесс разработки теперь ведётся в репозитории wireguard-linux.git, включающем полное дерево ядра Linux с изменениями от проекта Wireguard. Патчи из данного репозитория будут рецензироваться для включения в основное ядро и регулярно переноситься в ветки net/net-next. Разработка запускаемых в пространстве пользователя утилит и скриптов, таких как wg и wg-quick, ведётся в репозитории wireguard-tools.git, который можно использовать для создания пакетов в дистрибутивах.

Напомним, что VPN WireGuard реализован на основе современных методов шифрования, обеспечивает очень высокую производительность, прост в использовании, лишён усложнений и хорошо зарекомендовал себя в ряде крупных внедрений, обрабатывающих большие объёмы трафика. Проект развивается с 2015 года, прошёл аудит и формальную верификацию применяемых методов шифрования. Поддержка WireGuard уже интегрирована в NetworkManager и systemd, а патчи для ядра входят в базовый состав дистрибутивов Debian Unstable, Mageia, Alpine, Arch, Gentoo, OpenWrt, NixOS, Subgraph и ALT.

В WireGuard применяется концепция маршрутизации по ключам шифрования, которая подразумевает привязку к каждому сетевому интерфейсу закрытого ключа и применение для связывания открытых ключей. Обмен открытыми ключами для установки соединения производится по аналогии с SSH. Для согласования ключей и соединения без запуска отдельного демона в пространстве пользователя применяется механизм Noise_IK из Noise Protocol Framework, похожий на поддержание authorized_keys в SSH. Передача данных осуществляется через инкапсуляцию в пакеты UDP. Поддерживается смена IP-адреса VPN-сервера (роуминг) без разрыва соединения с автоматической перенастройкой клиента.

Для шифрования используется потоковый шифр ChaCha20 и алгоритм аутентификации сообщений (MAC) Poly1305, разработанные Дэниелом Бернштейном (Daniel J. Bernstein), Таней Ланге (Tanja Lange) и Питером Швабе (Peter Schwabe). ChaCha20 и Poly1305 позиционируются как более быстрые и безопасные аналоги AES-256-CTR и HMAC, программная реализация которых позволяет добиться фиксированного времени выполнения без задействования специальной аппаратной поддержки. Для генерации совместного секретного ключа применяется протокол Диффи-Хеллмана на эллиптических кривых в реализации Curve25519, также предложенной Дэниелом Бернштейном. Для хеширования используются алгоритм BLAKE2s (RFC7693).

При старом тестировании производительности WireGuard продемонстрировал в 3.9 раза более высокую пропускную способность и в 3.8 раз более высокую отзывчивость, по сравнению с OpenVPN (256-bit AES c HMAC-SHA2-256). По сравнению с IPsec (256-bit ChaCha20+Poly1305 и AES-256-GCM-128) в WireGuard наблюдается небольшое опережение по производительности (13-18%) и снижение задержек (21-23%). Размещённые на сайте проекта результаты тестирования охватывают старую обособленную реализацию WireGuard и отмечены как недостаточно качественные. Со времени проведения тестов код WireGuard и IPsec был дополнительно оптимизирован и теперь работает быстрее. Более полное тестирование, охватывающее интегрированную в ядро реализацию, пока не проведено. Тем не менее, отмечается, что WireGuard в некоторых ситуациях по-прежнему обгоняет IPsec в силу многопоточности, в то время как OpenVPN остаётся очень медленным.




  1. Главная ссылка к новости (https://lists.zx2c4.com/piperm...)
  2. OpenNews: Релиз ядра Linux 5.6
  3. OpenNews: Разработчики VPN WireGuard представили новую криптографическую библиотеку Zinc
  4. OpenNews: Cloudflare опубликовал реализацию VPN WireGuard на языке Rust
  5. OpenNews: WireGuard и andOTP удалены из Google Play из-за ссылок на приём пожертвований
  6. OpenNews: VPN WireGuard принят в ветку net-next и намечен для включения в ядро Linux 5.6
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/52636-wireguard
Ключевые слова: wireguard, vpn
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (52) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, гтщс_г34 (?), 19:27, 30/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +10 +/
    Ура товарищи, свершилось!
     
     
  • 2.4, лютый жабби__ (?), 19:58, 30/03/2020 [^] [^^] [^^^] [ответить]  
  • –22 +/
    >свершилось!

    свершится, когда выйдет ЦентОС с ядром 5.6++. Т.е. лет через несколько....

    Кстати, а зачем WG, если ipsec во всём лучше?

     
     
  • 3.8, WGG (?), 20:20, 30/03/2020 [^] [^^] [^^^] [ответить]  
  • +19 +/
    > а зачем WG, если ipsec во всём лучше?

    Тут у нас случай "статью читал жопой"

     
     
  • 4.33, накипело (?), 09:33, 31/03/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Вы просто не в теме, вся шумиха вокруг ущербного WireGuard в силу его простоты сойдет на нет, в результате упрощения текущих алгоритмов шифрования через годик (а может и меньше) найдут пачку критических дырок. Сейчас просто специалисты по ИБ (реальные специалисты, а не скрипткидисы которым все поИБ) ждут момента когда на куче дырок можно будет выехать, а конторы которые занимаются "аудитом кода" проводят как правило статический анализ набором софта который не способен показать криптостойкость алгоритмов, так как это несколько иное. Ну ни чего, через годик товарищи радеющие сейчас за "скорость" и "надежность" данного выкидыша для тупого сапорта будут кричать совсем другие вещи...
    Пока что надежнее IPsec ничего нету, это факт, гибче с точки зрения выбора поддерживаемых алгоритмов шифрования тоже, многопоточность... МНОГОПОТОЧНОСТЬ блять твоя возможна только до выхода в мир, в твоей ламповой лаборатории, а как только пойдешь в мир оператор просто соберет все в один jumbo frame на магистрали и положит большой болт на твою многопоточность... и тут выяснится что оказывается это говно которое сунули в ядро не быстрее старого и доброго IPsec (openvpn я предлагаю вообще не рассматривать как что-то для ынтырпрайза)...
    Накипело видеть и слушать всю эту муйню...
     
     
  • 5.49, покекол (?), 10:43, 01/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Чет покекол как дегенерат с этого крика больной души
     
  • 5.53, Ефросий (?), 07:17, 02/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Посмотрю на этот комент через годик ещё раз
     
  • 4.48, Аноним (48), 09:22, 01/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ты что наркоман? IPsec во всем хуже!
     
     
  • 5.54, Аноним (54), 17:40, 16/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Люди делятся на тех кто хвалит ipsec и тех кто уже пытался его использовать.
     
  • 3.31, Нанобот (ok), 08:52, 31/03/2020 [^] [^^] [^^^] [ответить]  
  • –5 +/
    > зачем WG, если ipsec во всём лучше?

    Секта свидетелей вайргарда с тобой не согласится
    Имхо, людям просто нравится процесс замены шила на мыло

     
  • 3.37, Аноним (37), 10:03, 31/03/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    А, ну раз вам нужон ЦентОС, тогда ждите... А мы воспользуемся более живыми дистрами.
     
     
  • 4.43, ЯННП (?), 16:15, 31/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Я хоть и не юзер центоса, но даже я знаю, что они бэкпортируют фичи в старые ядра. Так что дожидаться 5.6 не имеет смысла, всё будет раньше.
     
  • 3.38, Аноним (37), 10:11, 31/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >Кстати, а зачем WG, если ipsec во всём лучше?

    А кто из публичных провайдеров VPN предоставляет доступ по IPSec?

     
     
  • 4.39, soarin (ok), 10:27, 31/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да многие наверно... Proton тот же
     
  • 2.44, Аноним (44), 16:57, 31/03/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Офисный планктон ликует, а всем кто использовал VPN для анонимности наступил капец.
     

  • 1.6, Аноним (6), 20:11, 30/03/2020 Скрыто модератором [﹢﹢﹢] [ · · · ]
  • +2 +/
     
  • 1.7, Аноним (7), 20:17, 30/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Мне нужен ваш совет . Стоит у меня  WireGuard с ядром 5.5.13 и работает все хорошо.  WireGuard с ядром 5.6 будет предустановлен в графической среде NetworkManadgar? Просто не хочу его удалять.
     
     
  • 2.11, Аноним (11), 20:41, 30/03/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    >WireGuard с ядром 5.6 будет предустановлен в графической среде NetworkManadgar?

    Каким боком WireGuard, который в ядре, относится к твоему НетворкМанагеру? Это уже от твоего дистроклепаетля зависит и от версии НетворкМанагера.

     
     
  • 3.14, Аноним (7), 20:56, 30/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В KDE Plasma WireGuard уже интегрирован в NetworkManager там только устанавливай настройки и всё
    а вот в GNOME еще пока нет приходится загружать networkmanager-wireguard-git.
     

  • 1.9, Аноним (9), 20:22, 30/03/2020 Скрыто модератором [﹢﹢﹢] [ · · · ]
  • –22 +/
     
     
  • 2.10, Fantasmas (?), 20:29, 30/03/2020 Скрыто модератором
  • +8 +/
     
  • 2.12, Аноним (11), 20:42, 30/03/2020 Скрыто модератором
  • +4 +/
     

     ....ответы скрыты модератором (2)

  • 1.13, Аноним (13), 20:47, 30/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >Поддержка WireGuard уже интегрирована в systemd

    эм.... зачем оно нужно в ините?

     
     
  • 2.16, анон45 (?), 21:36, 30/03/2020 [^] [^^] [^^^] [ответить]  
  • +6 +/
    зачем всё остальное нужно в системД, включая сервер?
     
  • 2.19, Аноним (19), 22:50, 30/03/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Не обязательно устанавливать systemd-networkd, в который добавили поддержку WireGuard.
    Но тем, кто уже пользуется systemd-networkd, удобно с его помощью настраивать интерфейсы с Kind=wireguard.
     
     
  • 3.23, Аноним (23), 00:23, 31/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Не обязательно устанавливать systemd-networkd

    Обычно systemd-networkd идёт в одном пакете с systemd, по крайней мере так в debian. Но по умолчанию он отключён и вместо него используется ifupdown, плюс ещё на десктопах NetworkManager.

     
  • 2.40, Аноним (40), 12:27, 31/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А зачем генератор QR-кодов и http-сервер в init'е?
     

  • 1.15, kot to (?), 21:34, 30/03/2020 Скрыто модератором [﹢﹢﹢] [ · · · ]
  • –4 +/
     
     
  • 2.17, anonymous (??), 22:03, 30/03/2020 Скрыто модератором
  • +4 +/
     
     
  • 3.21, ABATAPA (ok), 23:45, 30/03/2020 Скрыто модератором
  • +6 +/
     
  • 2.20, Аноним (20), 23:43, 30/03/2020 Скрыто модератором
  • +5 +/
     
     
  • 3.28, лютый жабби (?), 07:16, 31/03/2020 Скрыто модератором
  • –5 +/
     
  • 2.22, Аноним (22), 23:59, 30/03/2020 Скрыто модератором
  • –1 +/
     
  • 2.24, Аноним (24), 04:35, 31/03/2020 Скрыто модератором
  • +1 +/
     
  • 2.25, Аноним (25), 05:35, 31/03/2020 Скрыто модератором
  • +5 +/
     
  • 2.34, mumu (ok), 09:48, 31/03/2020 Скрыто модератором
  • +/
     

     ....ответы скрыты модератором (8)

  • 1.18, Аноним (18), 22:34, 30/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Module                  Size  Used by
    wireguard              94208  0
    curve25519_x86_64      40960  1 wireguard
    libchacha20poly1305    16384  1 wireguard
    chacha_x86_64          28672  1 libchacha20poly1305
    poly1305_x86_64        28672  1 libchacha20poly1305
    libblake2s             16384  1 wireguard
    blake2s_x86_64         20480  1 libblake2s
    ip6_udp_tunnel         16384  1 wireguard
    udp_tunnel             16384  1 wireguard
    libcurve25519_generic    49152  2 curve25519_x86_64,wireguard
    libchacha              16384  1 chacha_x86_64
    libblake2s_generic     20480  1 blake2s_x86_64
     
  • 1.26, Аноним (-), 05:36, 31/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    По моим тестам текущая версия WireGuard обгоняет OpenVPN в 16 раз.
     
     
  • 2.32, iPony129412 (?), 09:21, 31/03/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Это как?
    Померил трафик при соединении —16 кбайт vs 256 кбайт?
     
  • 2.50, Аноним (50), 15:01, 01/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Приблизительно во столько же раз (~20) максимальная производительность OpenVPN больше необходимой мне.
     
  • 2.55, dRiZd (?), 11:38, 19/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А у меня почему-то разницы почти нет (+/-5%), но зато файлы (~ по 100Гб) по nfs/smb у Wireguard чаще всего битые, а через OpenVPN всегда целые - вот и думай после этого...
     

  • 1.27, Аноним (27), 06:08, 31/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    но если знать размерность плоскости и алгоритм - то все эти, ваши, кривые можно ж расшифровать...
     
     
  • 2.36, anonymous (??), 09:59, 31/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    "Расшифровать кривые"... Кривые эти ничего не шифруют, а используются для обмена ключами (для генерации общего ключа).
     

  • 1.29, Случайный прохожий (?), 08:11, 31/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Народ, а можно ли из Windows подключится к удаленной машине с Linux используя WireGuard? Или это решение чисто для связи двух Linux?
     
     
  • 2.30, Жека Воробьев (?), 08:51, 31/03/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    https://www.wireguard.com/install/
     
  • 2.41, Аноним (41), 13:13, 31/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Можно, но от юзерспейс-реализации для винды чудес производительности ожидать не стоит.
     
     
  • 3.45, soarin (ok), 18:13, 31/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Да ладно. На бытовых задачах что-то сомневаюсь что чего-то заметишь.
    Да и как-то примитивно думать, что если в ядре, то значит априори зашибись - есть и обратные примеры.
     
     
  • 4.47, Аноним (41), 08:32, 01/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Насчёт возможности высокопроизводительных юзерспейс решений я не сомневаюсь, достаточно того же bsd netflow. Сомнения мои касаются прежде всего винды :)
     

  • 1.35, Аноним (35), 09:55, 31/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    Короче какие-то "идиоты" включили WG в состав ядра, а "эксперты" хабра говорят, что это говно. Значит хорошие сапоги, надо брать. Время накажет.
     
  • 1.42, Аноним (42), 15:27, 31/03/2020 Скрыто модератором [﹢﹢﹢] [ · · · ]
  • –1 +/
     
  • 1.46, протоколы (?), 21:02, 31/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >позиционируются как (((более быстрые и безопасные аналоги))) AES-256-CTR и HMAC.
     
  • 1.51, Аноним (51), 17:58, 01/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Когда будет во фрибсд?
     
     
  • 2.52, Аноним (52), 02:23, 02/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А оно там давно есть. 1.0.0 тоже скоро подтянется.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру