A hand touching a lock that has a ribbon wrapped around it and WireGuard written on the ribbon.

WireGuard® — это быстрый и современный VPN-протокол, использующий передовые криптографические алгоритмы. По сравнению с IPsec и OpenVPN он более простой и универсальный, поэтому применяется шире и разнообразнее. Насколько этот новый перспективный протокол изменяет возможности VPN в целом? И как его применение влияет на вас, как на обычного пользователя? Давайте разбираться.

Содержание

    Ваша онлайн-безопасность
    Защищайтесь от вирусов, утечек данных и онлайн-угроз с помощью одной подписки
    Получить Surfshark One
    Feature Element
    Защитите свое устройство от вредоносного ПО, шпионских программ и вирусов
    Feature Element
    Получайте оповещения о взломах электронной почты, кредитных карт и удостоверений личности в режиме реального времени.
    Feature Element
    Изменяйте свой IP-адрес для безопасности в Интернете с помощью VPN
    Получить Surfshark One

    Что такое WireGuard?

    A hand holding a lock that has a ribbon with WireGuard written on it and a question mark placed next to it.

    WireGuard — это высокоскоростной и безопасный VPN-протокол, который также может использоваться сам по себе в качестве VPN. На сегодня он считается самым быстрым VPN-протоколом, превосходящим IPsec/IKEv2 и OpenVPN по скорости и производительности.

    Изначально Wireguard разрабатывался как минималистичный протокол туннелирования — он содержит всего около 4000 строк кода, что существенно меньше 100 000 строк в OpenVPN. Лаконичность кода WireGuard упрощает его использование, повышает скорость и производительность, и уменьшает поверхность атаки.

    На сегодня WireGuard — более эффективная альтернатива VPN-протоколам IKEv2/IPSec и OpenVPN. Разработчики постарались объединить в нем все достоинства других VPN-протоколов.

    Что использует WireGuard?

    Рабочие части и фундаментальные элементы программного обеспечения обычно называются примитивами, что по своей сути означает «операции».

    В WireGuard используются следующие протоколы и примитивы:

    • ChaCha20 для симметричного шифрования, аутентифицированного с помощью Poly1305, с использованием конструкции AEAD RFC7539;
    • Curve25519 для ECDH;
    • BLAKE2s для хеширования и хеширования с ключами, описанного в RFC7693;  
    • SipHash24 для хэшируемых ключей;
    • HKDF для извлечения ключа согласно с описанием в RFC5869.

    Мини-словарь:

    • ChaCha20 — потоковый шифр и усовершенствованная версия алгоритма Salsa20, использующая 256-битный ключ;
    • Poly1305-AES — код аутентификации сообщений с секретным ключом;
    • AEAD — аутентифицированное шифрование с присоединенными данными;
    • Curve25519 — эллиптическая кривая, используемая в криптографии с эллиптическими кривыми (ECC);
    • ECDH — протокол Диффи-Хеллмана на эллиптических кривых;
    • хеширование — проверка того, что отправитель данных действительно является тем, кем себя объявляет;
    • BLAKE2 — криптографическая хэш-функция;
    • SipHash24 — блочный шифр, представляющий собой алгоритм ARX (Addition, Rotation, XOR — «сложение, циклический сдвиг, XOR»);
    • HKDF — функция извлечения ключей на основе HMAC;
    • HMAC — код аутентификации сообщений на основе хэша.

    Плюсы и минусы WireGuard

    Плюсы
    Минусы
    Легкость: 4000 строк кода (по сравнению со 100 000 в OpenVPN) упрощают тестирование и использование, включая сокрытие слабых мест.
    Не маскирует: применение этого протокола предполагает глубокую проверку пакетов и расчет на то, что VPN-провайдер имеет свои серверы с обфускацией (маскировкой).
    Имеет меньшую поверхность атаки: чем меньше в коде строк, тем меньше мест, уязвимых к нарушениям безопасности.
    Не предлагает динамических IP: на данный момент WireGuard использует только статические адреса, поэтому пользователям, которым важна динамическая конфигурация, придется поискать другие варианты (например, DNS-серверы).
    Быстрый: WireGuard использует предопределенные конфигурации и потребляет меньше ресурсов при получении данных. Это позволяет ему работать быстрее, чем другие протоколы.
    Поддерживается не всеми VPN: для использования этого протокола с сохранением конфиденциальности в сети нужно искать VPN-провайдера, который его поддерживает.

    Подробнее см. в разделе об известных ограничениях в нашей статье о WireGuard.

    Как работает протокол WireGuard?

    WireGuard шифрует передаваемые данные с помощью комбинации передовых криптографических операций. Протокол использует современный криптографический алгоритм под названием «маршрутизация криптоключей», который связывает открытые ключи со списком IP-адресов, применяемых непосредственно для туннелирования.

    Открытые ключи используются узлами сети для аутентификации друг друга. Ключ может передаваться за пределами основного канала связи любыми способами (аналогично тому, как пользователь может отправить другу открытый ключ безопасной оболочки (SSH) для доступа к серверу оболочки).

    При пользовании WireGuard конфигурации безопасности между вашим клиентом и сервером предустановлены заранее. Это ускоряет процесс передачи данных, т.к. вам не нужно подключаться или переподключаться к серверу. Вот почему подключение с WireGuard не требует установления соединения.

    Все, что нужно, — это ваш ключ и ключ сервера. Обмен ключами в протоколе WireGuard основан на NoiseIK — единичном двустороннем обмене ключами. Протоколы делают это автоматически. Вы просто выбираете нужный сервер, а все остальное выполняет приложение.

    Попробуйте протокол WireGuard
    Простой, быстрый и надежный
    Surfshark

    WireGuard и ручная настройка

    Из-за своей относительной новизны на рынке VPN протокол WireGuard есть не у всех VPN-провайдеров. Мы с ним работаем и рады, что можем предложить его вам. Более того, у нас его можно выбрать в приложении И настроить вручную.

    Ручная настройка WireGuard — идеальный вариант для тех, кто:

    • находится в стране с ограничениями использования VPN;
    • хочет пользоваться VPN через маршрутизатор;
    • желает защитить шифрованием устройства, несовместимые с нашим приложением;
    • хочет защитить множество устройств без потерь скорости соединения.

    WireGuard лучше, чем OpenVPN и IKEv2?

    Three locks standing on podiums with WireGuard written on each of them.

    WireGuard изначально создавался, как более эффективная альтернатива OpenVPN и IKEv2. Но это не обязательно означает, что он будет работать лучше, чем другие VPN-протоколы.

    Многие пользователи в принципе любят сравнивать между собой VPN-протоколы, поэтому часто сравнивают WireGuard с OpenVPN и IKEv2. Мы тоже это сделали.

    Сразу же хотим обратить внимание на сравнение протоколов в части потребления заряда батареи: наши эксперты утверждают, что тут разница между ними настолько минимальна, что сравнение не имеет смысла.

    WireGuard vs. OpenVPN

    WireGuard
    OpenVPN
    Скорость
    Быстрее
    Медленнее
    Надежность
    Высокая, но снижается в нестабильных сетях
    Хорошая, более высокая в нестабильных сетях
    Открытый исходный код
    Да
    Да
    Доступность
    У меньшего числа VPN-провайдеров
    У большинства VPN-провайдеров

    Разработчики OpenVPN утверждают, что этот протокол содержит около 70 000 строк кода. Открытость исходного кода OpenVPN позволяет легко это проверить с помощью репозитория GitHub (место, где вы можете хранить свой код). Мы проверили и выяснили, что их код состоит из 112 тысяч строк кода.

    Количество строк кода имеет значение по двум причинам: 1) чем больше в коде строк, тем больше вероятность ошибок; 2) чем меньше строк кода нужно для достижения определенного результата, тем лучше.

    Методология: Мы скачали код OpenVPN в формате Zip из репозитория GitHub. Исходный файл включает в себя строки документации, тестов и других файлов. В сумме исходный код содержит 112 тысяч строк.

    WireGuard vs. IKEv2

    WireGuard
    IKEv2
    Скорость
    Быстрее
    Медленнее, но не намного
    Надежность
    Более высокая в нестабильных сетях
    Менее надежный
    Открытый исходный код
    да.
    Нет
    Доступность
    У меньшего числа VPN-провайдеров
    У большего числа VPN-провайдеров

    При всем удобстве приведенных выше таблиц важно понимать, что это сравнение нельзя назвать точным и полным. Производительность VPN-протоколов зависит от множества факторов:

    • скорость вашего интернет-соединения;
    • загруженность VPN-серверов;
    • совместимость вашего устройства с VPN;
    • ваша удаленность от VPN-сервера.

    Теоретически протокол WireGuard справляется с некоторыми задачами лучше, чем OpenVPN и IKEv2.. Означает ли это, что он будет работать лучше на вашем устройстве? Однозначного ответа на этот вопрос мы дать не можем. Попробуйте каждый протокол и выберите тот, с которым вам будет удобнее и эффективнее.

    Насколько безопасны VPN с WireGuard?

    На сегодня WireGuard считается одним из самых безопасных и надежных VPN-протоколов. Его упрощенная архитектура с меньшим количеством строк кода означает меньшее число ошибок и уязвимостей безопасности. Кроме того, WireGuard может похвастаться более быстрым и безопасным криптографическим алгоритмом под названием «маршрутизация криптоключей».

    Сами разработчики на этапе начального ажиотажа вокруг преимуществ WireGuard озвучили его возможные недостатки. В частности:

    • WireGuard хранит подключенные IP-адреса (IP — интернет-протокол); 
    • WireGuard не маскирует соединение пользователя;
    • WireGuard не присваивает динамические IP-адреса.

    Для большинства VPN-провайдеров эти проблемы не актуальны, поскольку они конфигурируют протокол самостоятельно.

    Сервис Surfshark не хранит IP-адреса, к которым вы подключаетесь. При этом мы присваиваем динамические IP-адреса всем нашим пользователям и маскируем их соединение на верхнем уровне.

    Любые проблемы, которые может иметь WireGuard как VPN-протокол и как VPN-провайдер, мы решаем со своей стороны.

    На каких платформах можно использовать WireGuard?

    Сам по себе WireGuard доступен на многих платформах — Windows, macOS, Ubuntu, Android и iOS.

    Вот полный список программного обеспечения с поддержкой или интеграцией WireGuard: Debian, Fedora, Mageia, Arch, OpenSUSE/SLE, Slackware, Alpine, Gentoo, Exherbo, NixOS, Nix на Darwin, OpenWRT, Oracle Linux 8, Red Hat Enterprise Linux 8, CentOS 8, Oracle Linux 7, Red Hat Enterprise Linux 7, CentOS 7, FreeBSD, OpenBSD, Termux, Void, Adélie Linux, Source Mage, Buildroot, EdgeOS, AstLinux, Milis, macOS Homebrew и MacPorts.

    Подробнее об установке см. на странице установки WireGuard.

    Connections leading from WireGuard to Android, macOS, iOS, Windows, and Linux.

    Поддержка WireGuard как протокола VPN зависит от того, на каких устройствах ее настроил ваш провайдер.

    На данный момент поддержка WireGuard есть в приложении Surfshark VPN для следующих операционных систем: Windows, Android, macOS, iOS и Linux.

    Попробуйте Wireguard на своей скорости

    В целом WireGuard — отличный продукт: быстрый, легкий, безопасный и легко масштабируемый, и в качестве VPN-протокола он демонстрирует свои лучшие качества.

    Если хотите испытать его в действии — попробуйте Surfshark. Наш сервис прекрасно работает с WireGuard!

    WireGuard — зарегистрированный товарный знак Джейсона А. Доненфельда (Jason A. Donenfeld).

    Оцените функции защиты
    с протоколом WireGuard
    Surfshark

    Вопросы и ответы

    WireGuard — это VPN?

    Изначально Wireguard разрабатывался как VPN общего назначения, поэтому его можно использовать в качестве протокола (часть VPN) и в качестве VPN (идеально для пользователей, желающих самостоятельно создать приватную сеть с применением современных алгоритмов криптографии).

    WireGuard — бесплатный продукт?

    Да, WireGuard — бесплатный продукт с открытым исходным кодом. Он создавался для свободной реализации и использования разработчиками VPN и технически грамотными энтузиастами в сфере конфиденциальности.

    Маскирует ли WireGuard ваш IP-адрес?

    Если вы настроите свою домашнюю сеть VPN на использование WireGuard (VPN-сервера с WireGuard), то она не будет маскировать ваш IP-адрес и местоположение. Кроме того, WireGuard регистрирует пользовательские данные и каждый раз назначает один и тот же IP-адрес.

    Чтобы скрыть свой публичный домашний IP-адрес, вам нужно направить исходящий трафик VPN с WireGuard через другой VPN. Примечание: владельцам подписки на VPN-сервис премиум-класса об этом беспокоиться не нужно.

    Можно ли взломать WireGuard? 

    Теоретически VPN-сервисы взломать можно, но практически это чрезвычайно сложно. Протокол WireGuard в сочетании с шифрованием AES или ChaCha практически невозможно расшифровать с помощью самого распространенного способа взлома — атаки методом перебора вариантов ключа.

    В сегодняшних реалиях хакеру не хватит жизни, чтобы взломать WireGuard. 

    WireGuard — хороший VPN-протокол?

    На сегодня WireGuard считается одним из самых безопасных и надежных VPN-протоколов. Минималистичность, современные алгоритмы криптографии и превосходные настройки безопасности по умолчанию — преимущества WireGuard, которые выделяют его на фоне остальных протоколов.

    Какой порт использует WireGuard?

    WireGuard по умолчанию использует порт 51820. Для пользования дополнительными туннелями нужно использовать другой порт. Графический интерфейс (GUI) автоматически предлагает пользователю следующий оптимальный доступный порт.

    Surfshark работает с WireGuard?

    Да! Surfshark имеет поддержку WireGuard во всех своих приложениях и платформах.

    Почему WireGuard заслуживает особого внимания?

    WireGuard проще настраивать, отлаживать и использовать благодаря меньшему количеству строк кода (около 4000 строк). Другие протоколы (в частности, IPSec и OpenVPN) имеют намного большую кодовую базу, что может увеличивать риски нарушения безопасности и количество возможных уязвимостей под большей поверхностью атаки.

    WireGuard создан для обеспечения такого же (и более высокого) уровня безопасности с меньшими сложностями. Его предназначение — упростить сложную и не очень эффективную архитектуру протокола VPN. Целью его разработчиков изначально было создание оптимизированного и безопасного VPN-протокола, превосходящего все другие по эффективности.