
Каждый россиянин если не пользуется VPN-сервисами, то хотя бы о них слышал. При этом немногие понимают, за счёт чего приложениям и расширениям удаётся обеспечивать обход цензуры, и на какие элементы сервисов устраивает атаки РКН, чтобы мешать им соблюдать одно из базовых прав каждого человека: право на свободный доступ к информации.
Ключевой «шестерёнкой» в механизме любого сервиса обхода блокировок являются протоколы — и в этой статье мы детально расскажем вам о них.
Почему нужно разбираться в протоколах VPN?
На момент выхода этой статьи наибольшую распространённость и популярность в мире имеют протоколы Lightway, L2TP/IPsec, OpenVPN, IKEv2, PPTP, WireGuard и SSTP. Их объединяет способность обеспечивать пользователей доступом к информации, блокируемой различными регуляторами, при этом сохраняя персональные данные клиента в безопасности.
При этом они не считаются самыми современными — в 2023 году, согласно статье MiraclePtr на Хабре, эту нишу занимали Shadowsocks-2022, VLESS, Trojan-GFW и Trojan-Go, Naiveproxy, KCP и mKCP, Hysteria и некоторых их аналоги.
Чтобы понимать, как они работают, нужно первым делом запомнить: протокол — это не один алгоритм или функция, а набор различных инструкций и процессов, который обеспечивают передачу и шифрование данных. Составные части у разных протоколов серьёзно различаются, за счёт чего одни работают быстрее, но хуже защищают данные, а другие наоборот работают медленнее, зато делают доступ к вашей информации крайне труднодоступным.
Lightway — авторский протокол ExpressVPN
Протокол Lightway был разработан сервисом ExpressVPN для обхода блокировок быстрым и безопасным путём. Ядро кодовой базы в открытом доступе можно найти на GitHub — его анализ и независимая проверка от команды Cure53, специализирующейся на поиске уязвимостей в продуктах программирования, показали действительно высокий уровень защищённости данных в протоколе.
Быстрая и безопасная работа Lightway обеспечивается использованием четырёх ключевых элементов:
- Фреймворков Ceedling и Earthly;
- Портативной криптографической библиотеки wolfSSL;
- Протокола User Datagram Protocol (UDP) для передачи сообщений по IP-сети;
- Протокола Datagram Transport Layer Security (DTLS) для создания шифрованного канала передачи сообщений.
У Lightway также есть возможность использования более безопасного, но менее быстрого режима на случай подключения к VPN-сервису в ненадёжных или ограниченных IP-сетях.
Главное преимущество Lightway — высокая скорость установки соединения при малой энергозатратности, которые возможны благодаря компактности ядра кодовой базы — всего 2К строк на языке Си. Последнее также положительно сказывается на скорости проверок кода на баги и их устранении.
Главный недостаток Lightway — ограниченная доступность. В полном варианте протокол используется только платным сервисом ExpressVPN, подписка на который стоит по разным тарифам от $8.32 до $12.95 в месяц.
WireGuard — VPN-протокол с современной криптографией
Являясь серьёзным и сложным протоколом обхода блокировок и шифрования персональной информации пользователей, WireGuard при этом доступен для использования абсолютно всем и бесплатно.
Высокая скорость работы WireGuard обеспечивается за счёт его относительной компактности в менее 4К строк кода Си, а безопасность — комплексом из десятка современных криптографических протоколов, среди которых ключевыми являются:
- Noise — фреймворк для шифрованного обмена сообщениями;
- Curve25519 — протокол для генерации секретного ключа;
- ChaCha20 — протокол потокового шифра;
- Poly1305 — алгоритм аутентификации сообщений.
Внешне для пользователя WireGuard представляет собой простой интерфейс для обмена публичными ключами, обработка которых происходит где-то внутри протокола.
В отличие от классических приложений и расширений VPN, сам по себе WireGuard требует полностью самостоятельной настройки на устройстве пользователя. Для этого придётся скачать приложение WireGuard на своё устройство с официального сайта (доступны клиенты для Windows, macOS, Ubuntu, Android и iOS) и присоединиться к существующему туннелю или создать свой с нуля.
Однако, некоторые современные VPN-сервисы работают с протоколом WireGuard, за счёт чего можно избавить себя от необходимости проводить самостоятельную настройку. В список таких VPN входят ExpressVPN, CyberGhost, PIA.
Главное преимущество WireGuard — передача информации по принципу «рукопожатий». Пользуясь этим протоколом, вы получаете возможность проходить по цифровому туннелю от своего устройства через устройства других пользователей (по сути, по P2P-сети), получая доступ к Интернету через конечную точку — сервер или конкретного человека — в любой части мира.
Главный недостаток WireGuard — необходимость самостоятельной настройки туннелей. Количество VPN-сервисов, которые поддерживают WireGuard и работают через него, не слишком велико, так что для полноценной и удобной работы нужно озаботиться поиском или самостоятельным созданием туннелей для подключения к Интернету через страны, не блокирующие информацию в таком объеме, как РФ.
PPTP — туннельный протокол-пионер, созданный Microsoft
Point-to-Point Tunneling Protocol — протокол туннелирования от точки к точке — появился в 90-х по инициативе компании Microsoft, так что на июне 2022 его по праву можно назвать одним из старейших в мире. Он поддерживается во всех версиях Windows и большинстве других ОС и в основном используется для обхода геоблокировок за счёт двух типов соединения:
- Transmission Control Protocol (TCP) — протокол управления передачей данных для обеспечения соединения между двумя устройствами;
- Generic Routing Encapsulation (GRE) — протокол туннелирования сетевых пакетов.
По сути, PPTP шифрует и отправляет все данные от одного устройства к другому через достаточно простые алгоритмы и протоколы. С одной стороны, это делает его одним из самых быстрых среди существующих протоколов, с другой — одним из самых небезопасных.
Главное преимущество PPTP — быстрота работы соединения, причём она достаточно высока для того, чтобы подходить для потоковой передачи данных. Довольно примитивное шифрование данных позволяет использовать этот протокол для скачивания и просмотра различного контента, который заблокирован по геолокации.
Главный недостаток PPTP — легкость блокировки практически кем угодно. Из-за того, что PPTP работает через один единственный порт 1723 и пользуется легко идентифицируемыми нестандартными пакетами GRE, а также слабыми методами шифрования данных, провайдеры и регуляторы без проблем блокируют его использование и расшифровывают данные, отправляемые через PPTP.
OpenVPN — универсальный протокол с открытым исходным кодом
Один из самых современных протоколов — OpenVPN — полностью бесплатен и поддерживает передачу данных на выбор через два самых популярных протокола: UPD (подключение быстрее) и TCP (подключение стабильнее).
Это делает OpenVPN довольно уникальным, поскольку остальные популярные VPN-протоколы не имеют такой гибкости, опираясь в своей работе лишь на один из упомянутых выше путей передачи данных. При этом здесь очень сильное шифрование через протоколы криптографической библиотеки OpenSSL и метод пакетной аутентификации HMAC.
Протокол можно скачать и использовать как самостоятельный VPN-сервис или интегрировать в сторонние приложения и расширения. В первом случае придётся немного повозиться — установить OpenVPN с официального сайта, найти и скачать файлы конфигурации (например, на сайте АнтиЗапрет) и импортировать их в приложение OpenVPN. Во втором за вас всё уже сделал VPN-сервис — переключиться на встроенный OpenVPN можно как минимум у ExpressVPN, NordVPN и CyberGhost.
Главное преимущество OpenVPN — высокий уровень шифрования данных. Протокол использует огромное количество методов шифрования из библиотеки OpenSSL, за счёт чего данные пользователей в нём надёжно сокрыты и не поддаются расшифровке со стороны.
Главный недостаток OpenVPN — низкая скорость работы. В этом виновата глубина шифрования — на то, чтобы скрыть информацию, требуется довольно много ресурсов устройства и сервера. При этом при использовании высокоскоростного Интернета разница в скорости работы не слишком заметна.
IPsec — VPN-протокол Интернет-безопасности
Internet Protocol Security используется для сквозной аутентификации и шифрования данных при передаче по IP. Как и OpenVPN, IPsec позволяет пользователям настраивать свою работу в двух режимах.
Первый — транспортный, где шифрованием обрабатываются только передаваемые данные, позволяет устанавливать соединения между шлюзами без образования туннелей.
Второй — туннельный, где шифруется и инкапсулируется вся исходящая информация, обеспечивает более глубокую защиту данных и позволяет безопасно передавать их по открытым каналам связи.
В своей работе IPsec опирается на три основных протокола:
- Internet Security Association and Key Management Protocol (ISAKMP) — протокол для обмена ключей при первичной настройке соединения;
- Authentication Header (АН) — протокол обеспечения целостности данных при их передаче;
- Encapsulating Security Payload (ESP) — протокол шифрования данных.
IPsec поддерживается практически всеми популярными ОС и платформами, включая роутеры. При этом он редко используется в работе VPN-сервисов сам по себе — обычно с ним в паре идёт L2TP, поскольку функционал IPsec рассчитан только на обеспечение безопасного доступа пользователя к серверу, но не на обеспечение стабильного соединения между точками, а L2TP не может шифровать данные.
Главное преимущество IPsec — обеспечение анонимности пользователей через проверку подлинности и шифрование каждого отдельного пакета передаваемых данных.
Главный недостаток IPsec — ограниченный функционал. Для самостоятельного использования этого протокола на устройствах требуется специальное программное обеспечение, заменяющие или дополняющее имеющиеся системы, поскольку IPsec сам по себе не имеет ни формата приложения, ни совместимого с различными устройствами ПО. Более того — IPsec достаточно легко блокируется брандмауэром операционных систем.
L2TP/IPsec — «лучшая версия» PPTP
Layer 2 Tunneling Protocol (протокол туннелирования второго уровня) — появился в 1999 году как «апдейт» PPTP через протокол L2F. L2TP поддерживает передачу данных через два типа туннелей:
- Обязательный — не подконтролен пользователю и автоматически устанавливает соединение между ним и корпоративной сетью;
- Необязательный — пользователь может настроить по своему усмотрению для соединения с корпоративной сетью на своих услових.
Передача данных по протоколу L2TP проходит через порт UDP 500, который блокируется некоторыми брандмауэрами, при этом сам по себе протокол не способен полноценно шифровать данные, поэтому он и используется в паре с IPsec.
L2TP/IPsec легко настраивается и работает через двойную инкапсуляцию — установка соединения через L2TP плюс шифрование данных по IPsec — что делает передачу данных через него безопасной и хорошо защищённой. Для шифрования данных здесь применяются два симметричных алгоритма: устаревший 3DES и продвинутый AES.
Пару их этих протоколов используют многие VPN-сервисы — например, ExpresVPN и PrivateVPN.
Главное преимущество L2TP/IPsec — высокая безопасность передачи данных. Двойная инкапсуляция с многослойным шифрованием позволяет не только анонимизировать пользователя, но и защитить его данные от третьих лиц на всех уровнях.
Главный недостаток L2TP/IPsec — очень медленная работа. Из-за двойной инкапсуляции информация, передаваемая через эту связку, требует больше времени и ресурсов на «упаковку» и обработку.
IKEv2 — протокол зашифрованного туннелирования от Microsoft
Internet Key Exchange v2 был создан Microsoft и Cisco на основе составляющих протокола IPsec. Его поддерживают практически все современные операционные системы — в основном IKEv2 вшит в ПО устройств и управляется в них напрямую из настроек (меню).
Шифрование данных осуществляется здесь через SSL-сертификаты, как на сайтах и HTTPS. Их использование делает фактически невозможной расшифровку данных даже в случае их кражи: злоумышленникам неоткуда будет взять конкретные уникальные ключи шифрования, которые генерируются случайным образом для каждого пакета данных. При этом SSL-сертификаты позволяют IKEv2 использовать меньше ресурсов из-за применения для анализа пользователей легких с точки зрения производительности криптографических cookies.
За счёт комплексного протокольного строения IKEv2 позволяет быстро переподключаться к защищённому соединению при потере сигнала или переключению между WiFi и мобильным интернетом. Протокол также лучше других адаптирован к использованию на мобильных устройствах, но его достаточно сложно настроить для самостоятельного использования, поэтому лучше искать в составе VPN-сервиса, например, Surfshark.
Главное преимущество IKEv2 — скорость работы при высокой безопасности. Здесь нет ничего, что делало бы обработку данных затянутой или сложной и даже глубокое шифрование данных осуществляется на современных лёгких протоколах.
Главный недостаток IKEv2 — закрытость исходного кода. Поскольку протокол принадлежит Microsoft, его исходный код засекречен и широкой публике неизвестно, как он работает в полной мере. В этой связи нет никакой уверенности в том, что Microsoft не является конечным получателем развёрнутой информации о пользователях IKEv2, скрывая её от других, но не от себя.
VLESS и другие новинки — пока мало доступны в VPN-сервисах
Самые передовые варианты протоколов на апрель 2023 без проблем можно использовать обособленно от VPN-сервисов, при этом найти их в составе готовых сборок таких сервисов пока трудно, ведь они совсем свежие. В связи с этим в данной статье они собраны под одним заголовком — от самого современного и доступного до «запасного» из числа новичков. Все эти протоколы можно использовать через Outline VPN — просто вносите туда данные нужного протокола и он автоматически применяется.
VLESS — лучший протокол VPN на начало 2023
Его можно найти встроенным во фреймворках XRay VPN и V2Ray VPN вместе с другими протоколами этого сервиса — V2Fly, VMess, XTLS и VLite (только в V2Ray). VLESS в этом списке — самая последняя разработка, которая требует работы в паре с транспортным протоколо шифрования типа TLS, поскольку самостоятельно не шифрует данные. Фишка этого протокола — поэтапная проверка свой/чужой и способность подменять размеры пакетов передаваемых данных, чтобы сделать идентификацию паттернов более сложной, а значит защитить пользователя от обнаружения. При этом разработчики продолжают активно его развивать, дополняя код так, чтобы сделать анализ трафика извне максимально сложным.
Trojan-GFW и Trojan-Go — аналог пары VLESS+TLS
Два протокола Trojan различаются только языками написания — GFW сделан на C++, а Go на одноимённом языке.
Trojan позволяет пользователю шифровать свой трафик и передавать данные под видом имитации работы какого-нибудь безобидного и непримечательного сайта HTTPS. При попытке проверить трафик извне человек видит только стандартное подключение к веб-серверу, вот только на самом деле этот сервер внутри использует сверку соединения в специальном формате, чтобы заработать для пользователя как прокси.
В целом, по функционалу протокол Trojan аналогичен сочетанию VLESS и TSL. Найти его можно в нескольких общедоступных VPN-сервисах, например, Howdy VPN.
KCP — скоростной аналог TCP
Создаёт тоннель для работы поверх UDP с низким пингом, главным недостатком которого является потеря до 20% пропускной способности при большой нагрузке. В остальном этот протокол позволяет эффективно обходить блокировки там, где качество соединения оставляет желать лучшего.
Имеет три вариации: оригинальный протокол KCP, протокол туннелирования Kcptun и транспортный протоколо mKCP для использования во фреймворках V2Ray и XRay в качестве пары к VLESS или VMess.
Kcptun и mKCP дают пользователю возможность маскировать свои пакеты данных под другие форматы, например, торрент-трекера или мессенджера. Это делает их анализ достаточно сложным.
Hysteria — прокси с полным сокрытием пакетов данных
Во многом похожий по механизму и цели работы на KCP, Hysteria обладает тремя важными отличиями.
Во-первых, этот протоколо работает не только поверх UPD, но и поверх HTTP/3.
Во-вторых, он обладает функционалом для автозопроса нужных сертификатов у серверов и изменения пакетов данных под полученные условия так, что они перестают быть похожи на пакеты данных. Фактически, их становится невозможно распознать как UDP-пакеты, поскольку они перестают отвечать их критериям.
В-третьих, у Hysteria есть особый режим FakeTCP, в котором клиент и сервер обмениваются пакетами данных, являющимися TCP по заголовку, но проходящими иными путями. За счёт этого для стороннего наблюдателя создаётся иллюзия TCP-подключения, когда его на самом деле нет.
Как и Trojan, этот протокол можно найти во встроенном формате в небольшом количестве VPN-сервисов, но Howdy VPN позволяет пользоваться им без проблем.
Shadowsocks-2022 — протокол для использования в качестве запаски
Когда-то Shadowsocks был одним из первых протоколов для обхода цензуры — на его основе разработчики создали немало других протоколов, но со временем он устарел достаточно сильно для того, чтобы стать легко «вскрываемым».
Долгое время его толком не модернизировали, но в 2022 году появилась переработанная версия протокола, которая способна вполне успешно шифровать трафик для обхода частных файерволов компаний, провайдера или иных структур. Делает она это за счёт отправки «непонятного» потока данных — вместе с реальными пакетами Shadowsocks шлёт кучу посторонней инфы, чтобы запутать анализ трафика. При этом его безопасность довольно сомнительна, поскольку улучшением протокола с учётом новых угроз систематически никто не занимается.
Найти этот протокол можно во многих фреймворках и VPN-сервисах, в том числе V2Ray и XRay, но использовать стоит только в крайнем случае как запасной вариант.