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

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

1. Что такое VPN?

Virtual Private Network (Частная Виртуальная Сеть) — это расширение для публичной сети, позволяющее имитировать еще одну сеть поверх уже существующей, к которой может подключаться ограниченное количество устройств.

Обычно «виртуальное» подключение формируется между локальным компьютером и сервером. После этого подключенные системы получают преимущества приватной сети. Уровень доверия к ней многократно возрастает благодаря используемым механизмам защиты трафика. И это несмотря на низкий уровень доверия к сети, на базе которой строится VPN. После подключения к VPN можно управлять защищенными файлами, доступными только для членов сети, скрывать исходящий трафик и шифровать его. 

1.1. Основные сценарии использования VPN.

  • Изначально VPN разрабатывалась для офисов и крупных корпораций, чтобы сотрудники могли подключаться к корпоративной сети и работать удаленно, используя мобильные устройства и домашние компьютеры. Их защищают с помощью технологий туннелинга.
  • Потом эти возможности начали использоваться для обхода разного рода блокировок. Например, региональные ограничения от сервисов в духе Pandora, Hulu, Amazon и Tidal. Или блокировки со стороны государства, запрещающие посещать те или иные ресурсы в связи с действующим законодательством.
  • Также с помощью VPN строятся защищенные каналы связи между удаленными офисами. Например, если штаб-квартира компании находится в Лондоне, а один из филиалов в Уэльсе, то для их безопасного (защищенного от вмешательства третьих лиц) обмена данными потребуется VPN.

1.2. Что такое VPN-протокол?

VPN-протокол — программный фундамент, на базе которого строится любой VPN-сервис. В нем описывается формат организации подключения, обмена данными внутри частной виртуальной сети и другие аспекты работы ПО. 

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

1.3. На какие критерии оценки VPN-протоколов стоит обратить внимание.

У каждого протокола свой набор характеристик, исходя из которых нужно выбирать для себя подходящий. Среди них:

  • Поддерживаемые платформы — протоколы могут быть достаточно специфичны и функционировать исключительно на одной-двух операционных системах. Другие же поддерживают сразу все доступные ОС.
  • Поддерживаемые сети — не все протоколы работают в идентичных сетях. Некоторые VPN-сервисы предлагают свои услуги только в конкретных странах ввиду технологических ограничений, введенных, в том числе, государственными органами.
  • Скорость работы — тоже зависит от архитектуры протокола. Есть те, что быстрее передают данные на мобильных устройствах. Есть те, что показывают пиковую производительность только в масштабах больших корпоративных сетей. 
  • Безопасность — в протоколах по-разному реализовано шифрование и другие механизмы обеспечения безопасности данных. Поэтому, в зависимости от поставленных задач, надо выбирать технологию, наименее подверженную распространенным для нее атакам.

Теперь от общего описания форматов и характеристик перейдем к конкретным технологическим решениям и к их особенностям.

2. Кратко о существующих протоколах.

Для начала кратко пробежимся по протоколам, которые будем рассматривать в статье. 

  • OpenVPN — сбалансированный вариант. Он быстрее остальных и гораздо меньше подвержен атакам со стороны злоумышленников. Топовые VPN-сервисы базируют свои продукты на основе этого протокола.
  • L2TP/IPsec во многом похож на OpenVPN. В меру быстрый, в меру безопасный. Но это «в меру» как раз все портит. Это не значит, что его стоит бояться или он как-то серьезно подвергает опасности вашу конфиденциальность в сети. Для некритичных задач его хватит с головой. Но надо иметь в виду, что этот протокол уступает по безопасности OpenVPN. В текущей ситуации нужен как альтернатива на случай, когда более подходящий протокол недоступен.
  • IKEv2/IPsec — альтернатива вышеперечисленным протоколам, адаптированная под работу на мобильных устройствах. Ее преимущество заключается в возможности быстро переподключиться к сети после потери сигнала. Такое может происходить на нулевых этажах торговых центров, в туннелях, метро и других местах с недостаточной «проницаемостью». IKEv2 скоростной, но работает не на всех платформах и сложен в настройке.
  • SSTP разработан компанией Microsoft и работает только с ее программным обеспечением. Настроить его в сторонних операционных системах чересчур сложно, да и не все хотят иметь дело с технологическими корпорациями в таком вопросе, как VPN. Если же причастность Microsoft не смущает, и на компьютере установлена Windows, то это будет сносным выбором.
  • PPTP — еще один продукт. Устаревший протокол, который больше не используется глобально. Пригодится только за отсутствием альтернатив.
  • WireGuard — перспективная новинка, во много схожая с OpenVPN, но обгоняющая его по всем параметрам (от скорости передачи файлов до изощренности методов шифрования).
  • SoftEther — еще один современный стандарт VPN. Быстрый, отказоустойчивый, обеспечивающий хорошее шифрование.

Далее разберем каждый протокол подробнее. Ознакомимся с принципами работы, степенью защищенности, производительностью и другими аспектами VPN-технологий.

3. OpenVPN.

Золотой стандарт среди действующих VPN-протоколов. Хорош сразу по всем фронтам:

  • Он универсален. Его можно использовать в разных целях, независимо от того, нужен ли вам виртуальный «офис», защищенный от сторонних глаз, или безопасный туннель для подключения к заблокированным ресурсам.
  • OpenVPN создан независимой командой разработчиков из OpenVPN Technologies. Главное преимущество протокола — открытый исходный код. Ему он обязан дикой популярностью. Opensource-сущность помогла этой технологии пройти десятки независимых аудитов от фирм, занимающихся безопасностью. Этому помогли кастомные методы шифрования, поддержка SSL и алгоритмов AES-256-GCM.
  • Также он обеспечивает скорость передачи данных выше, чем у конкурентов. Многие сервисы, базирующие свои VPN-серверы на базе OpenVPN, обеспечивают передачу зашифрованного контента на скорости до 2000 Мбит в секунду.
  • В работе OpenVPN задействуются технологии TCP и UDP, благодаря чему стандарт можно задействовать в качестве альтернативы для других протоколов, когда описываемый стандарт заблокирован на стороне провайдера. А еще он работает стабильно и реже остальных теряет соединение с интернетом (в этом тоже помогает поддержка TCP).

Для настройки и запуска OpenVPN нужен клиент, то есть программное обеспечение, адаптированное под работу с протоколом. Использовать встроенные системные инструменты не получится. Благо клиентских приложений, поддерживающих эту технологию, хватает. И они доступны на Windows, macOS, Linux, iOS и Android. В зависимости от количества подключений OpenVPN может быть бесплатным, но бизнес-клиентам придется заплатить.

Протокол находится в активной разработке, постоянно обрастает обновленными стандартами защиты и повышениями производительности. 

4. PPTP.

Point-to-Point Tunneling Protocol — старая технология, которая давно перешла в разряд винтажных и сейчас практически не используется. Была создана компанией Microsoft в 1999 году. 

Протокол устанавливает стандартное двухканальное соединения типа PPP между устройствами, а потом передает данные через инкапсуляцию по методу Generic Routing Encapsulation. Параллельно с этим действует соединение по TCP-порту. Первое используется непосредственно для передачи информации, второе нужно для управления подключением.

PPTP сложен в настройке и в управлении. К примеру, из-за необходимости поддерживать сразу две сетевые сессии с трудом получается перенаправлять сигнал на сетевой экран. Из-за спецификаций GRE и других компонентов протокола страдает безопасность. 

Несмотря на наличие поддержки MS-CHAPv2 и EAP-TLS для авторизации пользователей, PPTP остается небезопасным VPN-протоколом, не рекомендуемым к использованию для решения серьезных задач. Подобрать ключ и получить доступ к частной сети можно примерно за 23 часа с помощью профильного онлайн-сервиса. 

В свое время эта технология обрела успех благодаря поддержке со стороны Microsoft и внедрению PPTP в Windows по умолчанию. Для настройки не требовались сторонние клиенты и программные инструменты, но в связи с появлением более надежных альтернатив в духе OpenVPN, популярность PPTP начала снижаться. Сейчас даже Microsoft рекомендует использовать продукты конкурентов и прекратить эксплуатировать PPTP ввиду его незащищенности и нестабильности. 

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

5. SSTP.

Secure Socket Tunneling Protocol — модифицированная версия PPTP. Эдакая надстройка старого протокола, которая должна была стать не только духовным продолжением ранее существовавшей технологии, но и исправлением всех ошибок, допущенных в «предыдущей версии». 

Сколько-то заметной популярности протокол не сыскал. Доля на рынке VPN у SSTP такая же скромная, как и у предыдущей итерации протокола Microsoft. Но у него есть преимущество в виде отсутствия критических проблем с безопасностью. Таких зияющих дыр в нем нет и перехватить трафик гораздо сложнее. 

Помогает SSL-шифрование. При подключении к SSTP вся информация отправляется через TCP-порт 443. Такой подход делает его полезным при необходимости создавать безопасные подключения со странами, где большая часть VPN-сервисов заблокирована или запрещена законом. 

Многочисленные тестирования показали, что SSTP может передавать данные на высокой скорости (если канал свободен) и быстро восстанавливать соединение, если то неожиданно оборвалось. По этим показателям протокол стремится к OpenVPN, но не дотягивает ввиду некоторых ограничений технологии. 

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

Secure Socket Tunneling Protocol доступен на операционных системах Windows, Linux и BSD, но поддерживается ограниченным количеством сервисов. Их тяжело найти, а еще они зачастую обходятся дороже альтернатив. Отсюда и скромная аудитория SSTP, которая и не планирует расти в ближайшем будущем из-за продвинутости конкурентов. 

6. IPsec.

Internet Protocol Security представляет собой не одну технологию, а набор протоколов. Каждый из них помогает обеспечить безопасность информации, передаваемой по IP-сети.  По сути, они не создавались для организации VPN-соединений, это одно из нескольких применений.

Прелесть IPsec заключается в его упрощенной настройке. Благодаря своей архитектуре и работе на сетевом уровне не возникает потребности в подключении сторонних клиентов. VPN на базе Internet Protocol Security можно «поднять» во всех операционных системах встроенными средствами – через параметры ОС. Это его главное преимущество над OpenVPN.

Безопасность IPsec достигается за счет работы двух механизмов. 

  1. Authentication Header – ставит цифровую подпись каждой единице данных, передаваемой через VPN-соединение.
  2. Encapsulating Security Protocol – защищает целостность передаваемой информации и конфиденциальность пользователей протокола.

IPsec используется в тандеме с другими техническими решениями. Зачастую речь идет о комбинировании технологий IPsec и L2TP или об IPsec + IKEv2.

6.1. IPsec/L2TP

L2TP задумывалась как альтернатива PPTP. Проблема была в отсутствии механизмов шифрования данных и методов авторизации. Поэтому вместе с ней всегда подключали IPsec. Таким образом удавалось задействовать AES-алгоритмы шифровки данных. Из недостатков метода можно выделить сложности при работе с некоторыми брандмауэрами, они частенько блокируют соединения по порту 500. А еще он медленный, потому что дважды за сессию инкапсулирует передаваемую информацию. Другие протоколы так не делают. 

6.2. IPsec/IKEv2

Разработан командой разработчиков из Microsoft и Cisco, но имеет несколько вариаций с открытым исходным кодом, написанных независимыми программистами. IKEv2 хорош наличием поддержки Mobility and Multi-homing Protocol. Это делает его устойчивым к смене сетей, это поможет владельцам смартфонам оставаться на связи даже при выходе в сеть через VPN. Подключение к VPN-серверу не обрывается при смене роутера, к которому подключен гаджет или смене точки доступа во время поездок. 

IKEv2 поддерживает методы шифрования AES, Blowfish и Camellia. В этом плане он не отличается от L2TP. Так что уровень защищенности от атак извне у них идентичный. Также он потребляет меньше ресурсов, чем условный OpenVPN, и от этого демонстрирует более высокую скорость передачи данных. По умолчанию поддерживается в Windows 7 и новее, в macOS Lion и новее, в iOS и в ряде смартфонов на базе Android.

7. WireGuard.

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

Известно, что в его основе лежит ворох технологий шифрования, бережно оберегающих каждый байт отправляемых данных. Используются Curve25519, ChaCha20, SipHash, BLAKE2 и Poly1305. Причем каждый из перечисленных типов криптографии берет на себя конкретную задачу. Допустим, Curve25519 необходим для обмена ключами, BLAKE2 занимается хэшированием информации, а Poly1305 задействуется для аутентификации.

WireGuard легковесный – он состоит всего из четырех тысяч строк кода. Поэтому разработчики при желании могут быстро его исследовать, проанализировать и даже поменять что-то. Это открытый стандарт, как и OpenVPN. Эта легковесность распространяется и на пользовательский опыт – люди охотно отмечают, что настроить WireGuard легче, чем остальные протоколы. 

По результатом бенчмарков, WireGuard обгоняет лидеров рынка. Разрыв между WG и OpenVPN впечатляет. 1011 Мбит в секунду против 258 Мбит в секунду соответственно. С IPsec разница не такая большая, но она есть, и как раз в пользу WireGuard.

8. SoftEther.

Недавняя разработка из Цукубского университета. Кроссплатформенный японский VPN-проект, который бок о бок с WireGuard стремится выйти на первые позиции, обойдя OpenVPN. 

Хорош совместимостью с другими VPN-технологиями. Может работать в комбинациях с IPsec, EtherIP, L2TP. Из дополнительных функций предлагает: динамический DNS, встроенный фильтр пакетов, удобную панель управления и контроль над RPC через HTTPS. А еще он без проблем обходит чересчур бдительные брандмауэры, мешающие нормальной работе сети даже в безопасных условиях. 

На SoftEther можно легко перебраться с OpenVPN за счет глубокой интеграции двух сервисов и функции клонирования в японском протоколе. 

Так же, как OpenVPN и WireGuard, имеет открытый исходный код и распространяется бесплатно. 

9. Сравнительная таблица протоколов.

Закрепим новую информацию с помощью таблицы.

 OpenVPNPPTPSSTPIPsecWireGuardSoftEther
СоздателиOpenVPN TechnologiesMicrosoftMicrosoftCisco и другиеДжейсон ДонфилдУниверситет Цукуба
Тип лицензииGNU GPL (открытый исходный код)ПроприетарнаяПроприетарнаяЗависит от реализацииGNU GPL (открытый исходный код)Apache License 2.0
Поддерживаемые платформыНативно не поддерживает ни одну ОС. Сторонние клиенты для настройки есть для Windows, Linux, macOS, iOS и AndroidWindows, macOS, Linux и iOS без необходимости скачивать дополнительное ПОWindows без необходимости скачивать дополнительное ПОWindows, macOS, Linux и iOS без необходимости скачивать дополнительное ПОWindows, macOS, Linux и iOS без необходимости скачивать дополнительное ПОWindows, macOS, iOS, Linux и Android
Используемые портыЛюбой TCP и UPDTCP 1723TCP 443UDP 500, UDP 1701 (зависит от выполнимых задач)Любой UPDЛюбой TCP
Методы шифрованияБиблиотека OpenSSLСамый безопасный из доступных — MPPESSLСамый безопасный из доступных — AESCurve25519, ChaCha20, SipHash, BLAKE2 и Poly1305SSL
УязвимостиНе найденоАтаки по словарю MSCHAP-V2 и Bit FlippingНе найденоНе найденоНе найденоНе найдено

10. Какой протокол выбрать?

Пока что фаворитом является OpenVPN. Он уже давно на рынке и успел себя зарекомендовать. Используется топовыми VPN-cервисами, работает на Android, iOS, Windows, macOS, Linux и даже на роутерах. Разве что на утюге не получится запустить. Скорость работы OpenVPN хоть и не поражает, но ее хватит для комфортной работы. 

Второе место я бы отдал WireGuard. Это пока еще темная лошадка, но зато с кучей бонусов. Он превосходит OpenVPN и IPsec по всем параметрам, но пока не вызывает такого доверия, как первый. Но это все же дело времени. Кажется, что в ближайшем будущем расстановка сил на рынке VPN-сервисов заметно скорректируется.

Замкнет тройку лидеров IPsec – jтличный баланс между производительностью и доступностью. Правда, если не брать в расчет подозрительную историю с утечкой данных американских спецслужб. Если им верить, то в IPsec встроены бэкдоры, позволяющие отслеживать трафик, передаваемый по протоколу IPsec в тайне от отправляющего. 

Остальные технологии оказались на обочине прогресса. Не советую их использовать. Только если все остальные варианты почему-то оказались недоступны.

11. Выводы.

Теперь вы знакомы с особенностями VPN-протоколов. Опираясь на эту информацию, будет несложно выбрать подходящий (учитывая тот факт, что выбор-то, на самом деле, невелик). Остается «поднять» собственный сервер на базе OpenVPN или подобрать сервис в духе того же TunnelBear. Главное, не использоваться бесплатные варианты.