Ipsec vs openvpn speed
Содержание:
- OpenVPN
- Предварительные условия
- Настройка PPTP
- Как установить OpenVPN для безопасного серфинга
- Описание
- Кратко о существующих протоколах
- Шаг 4. Пинг моего другого устройства по адресу 172.16.x.x успешен, а как выполнить пинг другого устройства по его внутреннему адресу 192.168.x.x?
- Автоматическое установление разорванного VPN соединения
- Итак, зачем вообще использовать OpenVPN и когда стоит это делать?
- Можно ли использовать Tor для разблокировки VPN?
- Ищете надёжный VPN-Сервис?
- Advantages of PPTP Protocol
- OpenVPN
- Настройка pptp сервера в mikrotik
- WireGuard
- 2. Encryption
- VPN Protocol Comparison
- Что такое VPN-протокол?
- WireGuard
- PPTP
OpenVPN
Золотой стандарт среди действующих VPN-протоколов. Хорош сразу по всем фронтам:
- Он универсален. Его можно использовать в разных целях, независимо от того, нужен ли вам виртуальный «офис», защищенный от сторонних глаз, или безопасный туннель для подключения к заблокированным ресурсам.
- OpenVPN создан независимой командой разработчиков из OpenVPN Technologies. Главное преимущество протокола — открытый исходный код. Ему он обязан дикой популярностью. Opensource-сущность помогла этой технологии пройти десятки независимых аудитов от фирм, занимающихся безопасностью. Этому помогли кастомные методы шифрования, поддержка SSL и алгоритмов AES-256-GCM.
- Также он обеспечивает скорость передачи данных выше, чем у конкурентов. Многие сервисы, базирующие свои VPN-серверы на базе OpenVPN, обеспечивают передачу зашифрованного контента на скорости до 2000 Мбит в секунду.
- В работе OpenVPN задействуются технологии TCP и UDP, благодаря чему стандарт можно задействовать в качестве альтернативы для других протоколов, когда описываемый стандарт заблокирован на стороне провайдера. А еще он работает стабильно и реже остальных теряет соединение с интернетом (в этом тоже помогает поддержка TCP).
Для настройки и запуска OpenVPN нужен клиент, то есть программное обеспечение, адаптированное под работу с протоколом. Использовать встроенные системные инструменты не получится. Благо клиентских приложений, поддерживающих эту технологию, хватает. И они доступны на Windows, macOS, Linux, iOS и Android. В зависимости от количества подключений OpenVPN может быть бесплатным, но бизнес-клиентам придется заплатить.
Протокол находится в активной разработке, постоянно обрастает обновленными стандартами защиты и повышениями производительности.
Мы уже писали ранее о том, как установить OpenVPN на свой сервер с Ubuntu. И даже рассказали о том, как настроить собственный туннель.
Предварительные условия
Требования
Данный документ требует базовых знаний протокола IPSec. Дополнительные сведения о протоколе IPSec можно найти в документе Обзор протокола шифрования для защиты IP-пакетов (IPSec).
Используемые компоненты
Содержание настоящего документа касается следующих версий программного и аппаратного обеспечения:
-
ПО Cisco IOS, выпуск 12.2(24a)
-
Маршрутизаторы Cisco серии 2500
Сведения, представленные в этом документе, получены для устройств в особой лабораторной среде. Все устройства, описанные в данном документе, были запущены с конфигурацией по умолчанию. При работе с реальной сетью необходимо полностью осознавать возможные результаты использования всех команд.
Настройка PPTP
PPTP — это ещё одна разновидность VPN-соединения, внешне она настраивается почти так же, как и L2TP.
- Начать конфигурацию данного типа соединения можно с указания типа IP-адреса. При динамическом адресе настраивать далее ничего не нужно.
Если же адрес статический, кроме внесения самого адреса иногда требуется указать маску подсети — это нужно тогда, когда маршрутизатор не в состоянии посчитать её сам. Затем указывается шлюз — «PPTP Gateway IP Address».
Затем нужно указать «PPTP Server IP Address», на котором будет происходить авторизация.
После этого можно указать логин и пароль, выданные провайдером.
При настройке переподключения можно указать «On demand», чтобы соединение с интернетом устанавливалось по требованию и отключалось, если им не пользуются.
Настройка серверов доменных имён чаще всего не обязательна, но иногда требуется провайдером.
Значение MTU лучше не трогать, если в этом нет необходимости.
Поле «MAC Address», скорее всего, заполнять не придётся, в особенных случаях можно использовать кнопку внизу, чтобы указать адрес компьютера, с которого выполняется настройка роутера.
Как установить OpenVPN для безопасного серфинга
С другой стороны, скачать и установить OpenVPN предприятие также довольно просто по сравнению с другими VPN. Независимо от того, предназначена ли она для мобильных устройств или для использования с компьютера, вам просто необходимо выполнить следующие шаги:
- Выберите один из пакетов и продолжайте шаги, предложенные во время процедуры.
- Затем вы должны зарегистрироваться на сайте OpenVPN.
- Нажмите на значок, соответствующий операционной системе, используемой вашим компьютером или мобильным устройством.
- Открывает загруженный в устройство файл .exe.
- Откройте программу OpenVPN, которая появляется на вашем экране, и нажмите на соответствующую гиперссылку.
- Вход с регистрационной информацией.
Описание
Протокол PPTP поддерживает шифрование и инкапсуляцию многопротокольного трафика с использованием IP-заголовка для отправки по IP-сети или общедоступной IP-сети, например по Интернету. Протокол PPTP может использоваться для подключений удаленного доступа и VPN-подключений типа «сеть-сеть». При использовании Интернета в качестве общедоступной сети для VPN-подключений PPTP-сервер представляет собой VPN-сервер с поддержкой PPTP, один интерфейс которого находится в Интернете, а второй — в интрасети.
Протокол PPTP инкапсулирует PPP-кадры в IP-датаграммы для передачи по сети. Протокол PPTP использует TCP-соединение для управления туннелем и измененную версию протокола GRE с целью инкапсуляции PPP-кадров для туннелированных данных. Полезные данные инкапсулированных PPP-кадров могут быть шифрованными, сжатыми или и теми, и другими одновременно.
Кадр PPP (IP-, IPX- или Appletalk-датаграмма) заключается в оболочку с заголовком GRE (Generic Routing Encapsulation) и заголовком IP. В заголовке IP-адреса источника и приемника соответствуют VPN-клиенту и VPN-серверу.
Заголовок GRE состоит из 2 частей по 2 байта:
1-2 байты — флаги:
- ChecksumPresent – бит 0, если равен 1, то в заголовке GRE присутствует необязательное поле контрольной суммы – Checksumfield;
- Key Present – бит 2, если равен 1, то в заголовке GRE присутствует необязательное поле, содержащее ключ – Key field;
- Sequence Number Present – бит 3, если равен 1, то в заголовке GRE присутствует необязательное поле порядкового номера – SequenceNumberfield;
- Version Number – биты 13–15. Данное поле обозначает версию реализации GRE. Значение 0 обычно используется для GRE. Point-To-Point протокол (PP2P) использует версию 1.
3-4 байты, в свою очередь, содержат тип протокола (ethertype) инкапсулированного пакета.
PPTP является наиболее часто используемым протоколом для построения VPN многие годы. Он опирается на различные методы аутентификации для обеспечения безопасности (как правило, MS-CHAP v.2). Является стандартным протокол почти во всех операционных системах и устройствах, поддерживающих VPN. Его главное преимущество заключается в том, что он использует меньше вычислительных ресурсов, следовательно обладает высокой скоростью работы.
Обычно используется со 128-битным шифрованием, в следующие несколько лет после включения этого протокола в состав Windows 95 OSR2 в 1999 году были найдены ряд уязвимостей. Наиболее серьезной из которых явилась уязвимость протокола аутентификации MS-CHAP v.2. Используя эту уязвимость, PPTP был взломан в течение 2 дней. Microsoft сама рекомендовала к использованию в качестве VPN проколов L2TP или SSTP.
Кратко о существующих протоколах
Для начала кратко пробежимся по протоколам, которые будем рассматривать в статье.
- OpenVPN — сбалансированный вариант. Он быстрее остальных и гораздо меньше подвержен атакам со стороны злоумышленников. Топовые VPN-сервисы базируют свои продукты на основе этого протокола.
- L2TP/IPsec во многом похож на OpenVPN. В меру быстрый, в меру безопасный. Но это «в меру» как раз все портит. Это не значит, что его стоит бояться или он как-то серьезно подвергает опасности вашу конфиденциальность в сети. Для некритичных задач его хватит с головой. Но надо иметь в виду, что этот протокол уступает по безопасности OpenVPN. В текущей ситуации нужен как альтернатива на случай, когда более подходящий протокол недоступен.
- IKEv2/IPsec — альтернатива вышеперечисленным протоколам, адаптированная под работу на мобильных устройствах. Ее преимущество заключается в возможности быстро переподключиться к сети после потери сигнала. Такое может происходить на нулевых этажах торговых центров, в туннелях, метро и других местах с недостаточной «проницаемостью». IKEv2 скоростной, но работает не на всех платформах и сложен в настройке.
- SSTP разработан компанией Microsoft и работает только с ее программным обеспечением. Настроить его в сторонних операционных системах чересчур сложно, да и не все хотят иметь дело с технологическими корпорациями в таком вопросе, как VPN. Если же причастность Microsoft не смущает, и на компьютере установлена Windows, то это будет сносным выбором.
- PPTP — еще один продукт. Устаревший протокол, который больше не используется глобально. Пригодится только за отсутствием альтернатив.
- WireGuard — перспективная новинка, во много схожая с OpenVPN, но обгоняющая его по всем параметрам (от скорости передачи файлов до изощренности методов шифрования).
- SoftEther — еще один современный стандарт VPN. Быстрый, отказоустойчивый, обеспечивающий хорошее шифрование.
Далее разберем каждый протокол подробнее. Ознакомимся с принципами работы, степенью защищенности, производительностью и другими аспектами VPN-технологий.
Шаг 4. Пинг моего другого устройства по адресу 172.16.x.x успешен, а как выполнить пинг другого устройства по его внутреннему адресу 192.168.x.x?
Дальше начинается действие, ради которого все и затевалось — получение одним устройством c ОС Windows доступа к внутренней сети, расположенной за вторым устройством (маршрутизатором). Эти действия связаны с наличием маршрутной информации о сети «за» маршуртизатором и почти аналогичны предыдущему шагу, но с некоторыми отличиями. Теперь нам необходимо не только обучить ваш Windows «знанию» о сети 172.16.0.0/16, что было выполнено на предыдущем шаге, но и дать ему информацию о сети, расположенной «за» маршрутизатором вашего второго туннеля.
Прежде чем приступить к этому шагу вы должны убедиться в том, что сеть «за» вашим маршрутизатором НЕ пересекается с сетью, в которую подключена ваша Windows машина. То есть, если ваш Windows находится в сети 192.168.0.0/24 (например дом) и такая же сеть 192.168.0.0/24 расположена за вторым устройством (например дача) то такая конфигурация будет некорректной и из нее есть два выхода:
— перенастроить одну из сетей на другую схему адресации, например 192.168.1.0/24
— осуществить трансляцию портов на вашем втором устройстве в адрес, полученный от сети vpnki 172.16.x.x (эту конфигурацию мы не будем рассматривать в рамках настоящего документа)
Итак, если вы имеете разные сети, то теперь нам необходимо сообщить вашему Windows устройству о наличии сети, например 192.168.1.0/24, расположенной за ваш вторым туннелем. Для этого вам необходимо на вашей персональной странице настроек vpnki, для второго вашего туннеля (например дача) отметить галочкой то, что вы настраиваете маршуртизатор и за ним расположена сеть 192.168.1.0/24. Примененная на этой странице настройка добавит эту сеть в протокол DHCP и передаст в ваше Windows устройство при следующем подключении. Проверить это вы сможете выполнив команду . В ее длинном выводе вы должны обнаружить следующую строку:
Сетевой адрес Маска Адрес шлюза Интерфейс192.16.1.0 255.255.255.0 on-link 172.16.x.x — выданный вам адрес
Если по какой-то причине данная строка не появилась это означает, что протокол DHCP не отработал и маршрутная информация не получена. В этом случае имеет смысл разобраться в причине или добавить статический маршрут в ручном режиме. В качестве обходного маневра вы можете прописать маршрут к сети 192.168.1.0/24 выполнив команду (с правами администратора!)
После этого вы должны успешно выполнить пинг своего «другого устройства», подключенного к сети vpnki по его внутреннему адресу (например 192.168.1.1), выполнив команду
Однако обращаем внимание:
— на то, что второе устройство (маршрутизатор) должно содержать в своей таблце маршрутов путь к сети 172.16.0.0/16 для отправки ответов на ваш пинг.
— на втором вашем устройстве (маршрутизаторе) межсетевой экране не должен блокировать ответы на пакеты icmp
Результат этого шага — наличие маршрута к сети 192.168.1.0/24 в таблице маршрутов Windows устройства и/или успешный пинг вашего второго устройства по внутреннему адресу 192.168.1.x.
PS: В целях борьбы с зависшими сессиями мы принудительно отключаем пользовательские туннели с протоколами PPTP, L2TP, L2TP/IPsec через 24 часа после установления соединения. При правильной настройке соединения должны автоматически переустановиться.
ДОПОЛНИТЕЛЬНО ПО ТЕМЕ:
Ознакомьтесь с настройками и работой нашей услуги «Публикация URL», которая поможет вам организовать удаленный доступ по протоколам http и https к своим ресурсам
Озанакомьтесь с работой и настройками нашей услуги «Проброс TCP порта», которая поможет вам опубликовать в сети Интернет TCP порт вашего устройства для организации удаленного доступа
Ознакомьтесь с настройками и приниципами работы услуги «Доступ через HTTP и SOCKS5 прокси», которая даст вам возможность удаленного доступа такими протоколами и приложениями как HTTP, RDP, VNC, ssh и другими
Автоматическое установление разорванного VPN соединения
Важным аспектом является способность IPsec устанавливать соединение заново. Для этого существуют настройки в ispec.conf, однако детали этих настроек могут отличаться от версии ПО. Сверяйтесь с мануалом именно по вашей версии программного обеспечения.
Плюсы:
- высокая криптоустойчивость
- возможность использования L2TP внутри IPsec для аутентификации по имени пользователя и паролю (вариант VPNKI)
Минусы:
- сложен для настройки и поиска неисправностей
- большие накладные расходы на передачу трафика в канале за счет заголовков
Далее:
ДОПОЛНИТЕЛЬНО
Кроме базового функционала по объединению VPN туннелей с различными протоколами, в системе VPNKI вы можете воспользоваться удаленным доступом к компьютеру или камере, используя:
Доступ из Интернет через HTTP и SOCK5 прокси
Публикацию URL по которому вы будете попадать на свое домашнее устройство
Проброс порта TCP, который будет вести на устройство в вашей сети
Итак, зачем вообще использовать OpenVPN и когда стоит это делать?
Основная причина использования протокола OpenVPN заключается в том, что он очень безопасный, действительно стабильный и работает на многих платформах. Большинство экспертов по безопасности рекомендуют всегда использовать OpenVPN при подключении к интернету. Как минимум потому, что это “прозрачный” протокол, то есть распространяется с открытым исходным кодом).
Что касается случаев использования OpenVPN, то этот VPN-протокол подходит для любых случаев. Всегда, когда вам нужно обезопасить интернет-подключение, будь то онлайн-игры , использование торрентов или анонимное информирование. OpenVPN также подходит когда вам нужно обойти фаервол, независимо от того, пытаетесь ли вы открыть геоблокированный контент или просто просматриваете веб-сайты на работе или в университете.
Можно ли использовать Tor для разблокировки VPN?
Конечно, вы можете использовать Tor для обхода блокировки VPN в сети вашего провайдера, но это, к сожалению, временное решение (и неудобное, так как скорость будет очень низкой).
Как долго проработает такой метод?
Пока ваш провайдер не решит заблокировать и Tor. Он может видеть IP-адрес Tor, к которому вы подключаетесь, поэтому сможет быстро занести его в черный список. То же самое касается использования других VPN и прокси-серверов для доступа к первичному VPN-серверу, который уже заблокировали.Кроме того, они также могут использовать такие сервисы, как Plixer и NETRESEC для обнаружения трафика Tor.
Ищете надёжный VPN-Сервис?
Если вы не беспокоитесь о том, что ваш провайдер блокирует VPN-соединения, и ищете достойный Сервис, который поможет защитить ваши данные и помочь разблокировать тонны веб-сайтов, то вы попали куда нужно.
CactusVPN предлагает шифрование военного уровня, высокоскоростные серверы с неограниченной пропускной способностью и удобные приложения для самых популярных устройств.
Мы также предлагаем интеллектуальный DNS-Сервис, который разблокирует более 320 сайтов со всего мира и запутывает след при помощи obfsproxy.
Специальное предложение! Получите CactusVPN за 2.7$ в месяц!
И как только вы станете клиентом CactusVPN, у вас будет 30-дневная гарантия возврата денег.
Да, они это могут. Как правило, они блокируют IP-адрес VPN-сервера или порт, который используется VPN-соединением. В иных случаях они могут даже использовать DPI для обнаружения OpenVPN-трафика.
Advantages of PPTP Protocol
There are a few advantages of using PPTP as your VPN protocol of choice. These include:
Default Windows Compatibility
If you’re using a computer running on any version of Microsoft Windows, you’ll be glad to know that PPTP is supported on it by default. This means that configuring a PPTP VPN up won’t take too much of your time or effort.
Cost-Effective to Deploy
PPTP is not only cheaper but also quite easy to deploy than L2TP/IPSec and other VPN protocols. That’s because it doesn’t require Public Key Infrastructure (PKI) to run, which uses digital certificates for authentication.
Fast Connection Speeds
When you use establish a VPN connection, it usually affects your Internet speeds due to the encryption process. However, you don’t have to worry about that when using a PPTP VPN because of its low-level encryption.
OpenVPN
OpenVPN это технологии с открытым (доступным) исходным кодом, использующий библиотеки шифрования OpenSSL и протоколы SSL v3 / TLS v1. Он может быть настроен для работы на абсолютно любом порту, что является одним из его плюсом. Трафик OpenSSL VPN будет практически неотличим от стандартного трафика HTTPS, который возникает при подключении к защищенному веб-сайту.
Этот протокол достаточно гибкий, имеет большее количество настроек чем PPTP и наиболее безопасен, если он настроен на использование шифрования AES вместо более слабого шифрования Blowfish. OpenVPN стал популярным стандартом. Это достаточно хорошая анонимность, которою тяжело вычеслить.
Поддержка OpenVPN не интегрирована в популярные настольные или мобильные операционные системы. Для подключения к сети OpenVPN требуется сторонние приложения. Также вы можете использовать мобильные приложения для подключения к сетям OpenVPN.
Итог: OpenVPN является отличным, современным, безопасным протоколом, но вам потребуется установить дополнительное ПО. Именно его советуем к использованию.
Настройка pptp сервера в mikrotik
Настройка pptp сервера не отличается принципиально от l2tp. Логика и последовательность действий та же самая. Сначала создаем pool адресов в IP -> Pool для vpn сети. Я буду использовать тот же пул, что мы создали ранее.
Далее создаем профиль для pptp туннеля в разделе PPP -> Profiles.
В этом профиле указаны дефолтные настройки шифрования, при которых оно отключено. Проверим сначала скорость vpn канала без них. Создаем нового пользователя для удаленного pptp подключения.
Включаем pptp сервер в разделе PPP.
Теперь создадим в Interface List PPTP Server Binding по аналогии с предыдущим разделом.
И в завершение добавляем статический маршрут до удаленной сети через pptp подключение.
Настройка pptp сервера закончена. На фаерволе нужно будет открыть для входящих подключений внешнего интерфейса следующие вещи:
- TCP port 1723
- GRE протокол
Отправляемся настраивать pptp клиент.
pptp клиент
Отправляемся на удаленный роутер и там настраивает подключение через pptp client. Идем, как обычно, в раздел PPP и добавляем PPTP Client. На вкладке General ничего не трогаем, а на Dial Out указываем адрес pptp сервера и имя пользователя для подключения.
Добавляем статический маршрут до удаленного офиса через vpn туннель.
Все готово. Активируем pptp подключение и пробуем пинговать адреса в локальной сети. Убедиться в том, что шифрование отключено можно в статуте pptp соединения на клиенте.
Проверим теперь скорость vpn соединения по pptp.
Те же самые 194 мбит/сек, что на нешифрованном l2tp при 100% загрузке процессора. Вообще, было немного странно увидеть абсолютно такие же цифры. Проводил тесты несколько раз, но везде был стабильно один и тот же результат. Без шифрования нет разницы по скорости между l2tp и pptp соединением.
Теперь включим шифрование в pptp на сервере и посмотрим на скорость. Для этого указываем в pptp профиле явно, чтобы использовалось шифрование. Идем в PPP -> Profiles и редактируем наш профиль.
Убедимся в статусе клиента, что шифрование работает.
Тестирую скорость vpn соединения по pptp с включенным шифрованием.
Получилось в среднем 71 мбит/сек. Неплохой результат в сравнении с шифрованием ipsec в l2tp. Как я и говорил ранее, pptp сервер хорошо подходит там, где шифрование либо совсем не нужно, либо допускается возможность, что зашифрованный трафик будет расшифрован. Но при этом он все равно закрыт шифрованием и каждый проходящий не сможет ничего увидеть. Нужно как минимум снять дампт трафика и каким-то образом подбирать ключ по словарю или перебором. Не знаю точно, как это реализуется на практике. Не изучал вопрос.
Перейдем теперь к openvpn серверу в микротик. Очень любопытно посмотреть на тесты скорости этого типа vpn соединений.
WireGuard
Самый новый и неизведанный протокол VPN — WireGuard. Позиционируется разработчиками как замена IPsec и OpenVPN для большинства случаев их использования, будучи при этом более безопасным, более производительным и простым в использовании.
Все IP-пакеты, приходящие на WireGuard интерфейс, инкапсулируются в UDP и безопасно доставляются другим пирам. WireGuard использует современную криптографию:
- Curve25519 для обмена ключами,
- ChaCha20 для шифрования,
- Poly1305 для аутентификации данных,
- SipHash для ключей хеш-таблицы,
- BLAKE2 для хеширования.
Код WireGuard выглядит куда скромнее и проще, чем код OpenVPN, в результате чего его проще исследовать на уязвимости (4 тысячи строк кода против нескольких сотен тысяч). Также многие отмечают, что его гораздо легче развернуть и настроить.
Результаты тестов производительности можно увидеть на официальном сайте (как не сложно догадаться, они хороши). Стоит отметить, что лучшие результаты WireGuard покажет на Linux системах, т.к. там он реализован в виде модуля ядра.
Совсем недавно был представлен WireGuard 1.0.0, который отметил собой поставку компонентов WireGuard в основном составе ядра Linux 5.6. Включенный в состав ядра Linux код прошел дополнительный аудит безопасности, выполненный независимой фирмой, который не выявил каких-либо проблем. Для многих это отличные новости, но сможет ли WireGuard стать достойной заменой IPsec и OpenVPN покажет время и независимые исследования безопасности.
Мы постарались охарактеризовать самые популярные VPN протоколы, надеемся, обзор был для вас полезен. В качестве резюме приводим сравнительную таблицу, где еще раз обозначены важные, на наш взгляд, показатели.
PPTP | SSTP | L2TP/IPsec | IKEv2/IPsec | OpenVPN | WireGuard | |
---|---|---|---|---|---|---|
Компания-разработчик | Microsoft | Microsoft | L2TP — совместная разработка Cisco и Microsoft, IPsec — The Internet Engineering Task Force | IKEv2 — совместная разработка Cisco и Microsoft, IPsec — The Internet Engineering Task Force | OpenVPN Technologies | Jason A. Donenfeld |
Лицензия | Proprietary | Proprietary | Proprietary | Proprietary, но существуют реализации протокола с открытым исходным кодом | GNU GPL | GNU GPL |
Развертывание | Windows, macOS, iOS, некоторое время GNU/Linux. Работает “из коробки”, не требуя установки дополнительного ПО | Windows. Работает “из коробки”, не требуя установки дополнительного ПО | Windows,Mac OS X, Linux, iOS, Android. Многие ОС (включая Windows 2000/XP +, Mac OS 10.3+) имеют встроенную поддержку, нет необходимости ставить дополнительное ПО | Windows 7+, macOS 10.11+ и большинство мобильных ОС имеют встроенную поддержку | Windows, Mac OS, GNU/Linux, Apple iOS, Android и маршрутизаторы. Необходима установка специализированного ПО, поддерживающего работу с данным протоколом | Windows, Mac OS, GNU/Linux, Apple iOS, Android. Установить сам WireGuard, а затем настроить по руководству |
Шифрование | Использует Microsoft Point-to-Point Encryption (MPPE), который реализует RSA RC4 с максимум 128-битными сеансовыми ключами | SSL (шифруются все части, кроме TCP- и SSL-заголовков) | 3DES или AES | Реализует большое количество криптографических алгоритмов, включая AES, Blowfish, Camellia | Использует библиотеку OpenSSL (реализует большинство популярных криптографических стандартов) | Обмен ключами по 1-RTT, Curve25519 для ECDH, RFC7539 для ChaCha20 и Poly1305 для аутентификационного шифрования, и BLAKE2s для хеширования |
Порты | TCP-порт 1723 | TCP-порт 443 | UDP-порт 500 для первонач. обмена ключами и UDP-порт 1701 для начальной конфигурации L2TP, UDP-порт 5500 для обхода NAT | UDP-порт 500 для первоначального обмена ключами, а UDP-порт 4500 — для обхода NAT | Любой UDP- или TCP-порт | Любой UDP-порт |
Недостатки безопасности | Обладает серьезными уязвимостями. MSCHAP-v2 уязвим для атаки по словарю, а алгоритм RC4 подвергается атаке Bit-flipping | Серьезных недостатков безопасности не было выявлено | 3DES уязвим для Meet-in-the-middle и Sweet32, но AES не имеет известных уязвимостей. Однако есть мнение, что стандарт IPsec скомпрометирован АНБ США | Не удалось найти информации об имеющихся недостатках безопасности, кроме инцидента с утечкой докладов АНБ касательно IPsec | Серьезных недостатков безопасности не было выявлено | Серьезных недостатков безопасности не было выявлено |
Материал подготовлен совместно с veneramuholovka
2. Encryption
Open VPN — OpenSSL and the TLS protocol is used by the OpenVPN to provide encryption. Apart from the it uses different algorithms and ciphers. Some of them are Chacha 20, Blowfish, Camellia and AES. AES encryption used by the OpenVPN is of 160bit/256bit.IKEv2/IPSec — Algorithm used by the IKEv2 is of cryptographic which includes Blowfish, Camellia, 3DES and AES. AES encryption used by the IKEv2 is of 256bit.L2TP/IPSec — L2TP in default does not offer any kind of encryption. In L2TP the data those which are arriving from the IPSec protocol will be encrypted twice. The AES encryption used by the L2TP is of 256bit.
VPN Protocol Comparison
Here’s a quick comparison of the four VPN protocols (PPTP, L2TP/IPSEC, SSTP, and OpenVPN). It will give you a good idea of the advantages of each, and when to choose each option.
PPTP | L2TP/IPSEC | SSTP | OpenVPN | |
---|---|---|---|---|
Encryption Strength | 128-bit | 256-bit | 256-bit | 256-bit |
Supported Devices | All Major: PC, Mac, Linux, iPhone, Android, some routers. | All Major: PC, Mac, Linux, iPhone, Android, some routers | Windows PC’s only | All major platforms (requires software installation). Routers (with custom firmware) |
Security | Weak. Considered broken by NSA | Strong. Data is double encrypted and authenticated | Strong | Strongest. Data is encrypted and verified using certificates. |
Speed | Very fast (because of light encryption) | Medium (double encryption/validation is slow) | Medium | Very Fast. Faster than PPTP over long distances. |
Best Use | Low-security uses (media streaming, Netflix, etc). | Any. Most secure option if OpenVPN is not available. | Getting through firewalls. SSTP disguises traffic as regular SSL traffic. | Everything. OpenVPN is extremely strong, fast, and flexible. |
Что такое VPN-протокол?
VPN-протокол — программный фундамент, на базе которого строится любой VPN-сервис. В нем описывается формат организации подключения, обмена данными внутри частной виртуальной сети и другие аспекты работы ПО.
От выбора протокола зависит, какие задачи будут с помощью него решены, насколько эффективно они будут решаться, насколько это будет безопасно, быстро и т.п. Существует несколько технологий организации VPN, поэтому возникают некоторые разногласия при выборе соответствующих сервисов и при настройке виртуальных частных сетей.
На какие критерии оценки VPN-протоколов стоит обратить внимание
У каждого протокола свой набор характеристик, исходя из которых нужно выбирать для себя подходящий. Среди них:
- Поддерживаемые платформы — протоколы могут быть достаточно специфичны и функционировать исключительно на одной-двух операционных системах. Другие же поддерживают сразу все доступные ОС.
- Поддерживаемые сети — не все протоколы работают в идентичных сетях. Некоторые VPN-сервисы предлагают свои услуги только в конкретных странах ввиду технологических ограничений, введенных, в том числе, государственными органами.
- Скорость работы — тоже зависит от архитектуры протокола. Есть те, что быстрее передают данные на мобильных устройствах. Есть те, что показывают пиковую производительность только в масштабах больших корпоративных сетей.
- Безопасность — в протоколах по-разному реализовано шифрование и другие механизмы обеспечения безопасности данных. Поэтому, в зависимости от поставленных задач, надо выбирать технологию, наименее подверженную распространенным для нее атакам.
Теперь от общего описания форматов и характеристик перейдем к конкретным технологическим решениям и к их особенностям.
WireGuard
Новое поколение VPN-протоколов. Разработчики называют его ускоренной, надежной и простой в управлении альтернативой OpenVPN и другим используемым технологиям. Какого-то конкретного мнения по поводу WireGuard пока выражено не было.
Известно, что в его основе лежит ворох технологий шифрования, бережно оберегающих каждый байт отправляемых данных. Используются Curve25519, ChaCha20, SipHash, BLAKE2 и Poly1305. Причем каждый из перечисленных типов криптографии берет на себя конкретную задачу. Допустим, Curve25519 необходим для обмена ключами, BLAKE2 занимается хэшированием информации, а Poly1305 задействуется для аутентификации.
WireGuard легковесный – он состоит всего из четырех тысяч строк кода. Поэтому разработчики при желании могут быстро его исследовать, проанализировать и даже поменять что-то. Это открытый стандарт, как и OpenVPN. Эта легковесность распространяется и на пользовательский опыт – люди охотно отмечают, что настроить WireGuard легче, чем остальные протоколы.
По результатом бенчмарков, WireGuard обгоняет лидеров рынка. Разрыв между WG и OpenVPN впечатляет. 1011 Мбит в секунду против 258 Мбит в секунду соответственно. С IPsec разница не такая большая, но она есть, и как раз в пользу WireGuard.
PPTP
Не используйте PPTP. Протокол туннелирования «точка-точка» является распространенным протоколом, поскольку он был реализован в Windows в различных формах с Windows 95. PPTP имеет много известных проблем безопасности, и, скорее всего, NSA (и, вероятно, другие разведывательные агентства) расшифровывают эти якобы «безопасные», соединения. Это означает, что нападавшие и более репрессивные правительства будут иметь более простой способ скомпрометировать эти связи.
Да, PPTP распространен и прост в настройке. Клиенты PPTP встроены во многие платформы, включая Windows. Это единственное преимущество, и это не стоит. Время двигаться дальше.
Резюме: PPTP является старым и уязвимым, хотя он интегрирован в общие операционные системы и легко настраивается. Держись подальше.