PPTP (от англ. Point-to-Point Tunneling Protocol ) - туннельный протокол типа точка-точка (узел-узел), позволяющий компьютеру устанавливать защищённое соединение с сервером за счёт создания туннеля в незащищённой сети.
PPTP помещает (инкапсулирует) кадры PPP в IP-пакеты для передачи по глобальной IP-сети, например Интернет. PPTP может также использоваться для организации туннеля между двумя локальными сетями. РРТР использует дополнительное TCP-соединение для обслуживания туннеля.
Данный протокол менее безопасен, чем IPSec. PPTP работает, устанавливая обычную PPP сессию с противоположной стороной с помощью протокола Generic Routing Encapsulation. Второе соединение на TCP-порте 1723 используется для инициации и управления GRE-соединением. PPTP сложно перенаправлять за сетевой экран, так как он требует одновременного установления двух сетевых сессий. PPTP-трафик может быть зашифрован с помощью MPPE. Для аутентификации клиентов могут использоваться различные механизмы, например - MS-CHAPv2 и EAP-TLS.
Вопрос безопасности и надежности протокола
- MSCHAP-v1 совершенно ненадёжен. Существуют утилиты для лёгкого извлечения хэшей паролей из перехваченного обмена MSCHAP-v1;
- MSCHAP-v2 уязвим к словарной атаке на перехваченные challenge-response пакеты. Существуют программы, выполняющие данный процесс;
- В 2012 году было показано, что сложность подбора ключа MSCHAP-v2 эквивалентна подбору ключа к шифрованию DES, и был представлен онлайн-сервис, который способен восстановить ключ за 23 часа;
- При использовании MSCHAP-v1, MPPE применяет одинаковый RC4 сессионный ключ для шифрования информационного потока в обоих направлениях. Поэтому стандартным методом является выполнение XOR’а потоков из разных направлений вместе, благодаря чему криптоаналитик может узнать ключ;
- MPPE использует RC4 поток для шифрования. Не существует метода для аутентификации цифробуквенного потока, и поэтому данный поток уязвим к атаке, делающей подмену битов. Злоумышленник легко может заменить некоторые биты для изменения исходящего потока без опасности своего обнаружения. Данная подмена битов может быть зафиксирована с помощью протоколов, считающих контрольные суммы.
Структура
На рисунке 1 показано строение PPTP пакета. В целом - ничего особенного, в IP пакет инкапсулируется PPP кадр и GRE заголовок.
Кратко о GRE. Это протокол туннелирования, который работает на 3 уровне модели OSI. Функция GRE - инкапсуляция пакетов сетевого уровня сетевой модели OSI в IP пакеты.
Туннелирование подразумевает три протокола:
- пассажир - инкапсулированный протокол (IP, CLNP, IPX, Apple Talk, DECnet Phase IV, XNS, VINES и Apollo);
- протокол инкапсуляции (GRE);
- транспортный протокол (IP).
Заголовок занимает 4 байта (рис. 2) и состоит из 2х частей:
1) 1-2 байты — flags:
- 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.
2) 3-4 байты. Содержат тип протокола (ethertype) инкапсулированного пакета.
MTU
Не менее важный вопрос для протокола - это вопрос MTU .
Так как PPTP - это полезная нагрузка + заголовок PPP+ GRE + заголовок IP. MTU Ethernet = 1500 байт, header IP = 20 байт, GRE = 4 байта. 1500-20-4 = 1476 байт.
Управляющие сообщения
В основе обмена данными по протоколу PPTP лежит управляющее соединение PPTP - последовательность управляющих сообщений, которые устанавливают и обслуживают туннель. Полное соединение PPTP состоит только из одного соединения TCP/IP, которое требует передачи эхо-команд для поддержания его открытым, пока выполняются транзакции. Ниже, на рисунке 3, указаны управляющие сообщения и их значения.
Первого ноября в России начал действовать запрет на обход блокировок с помощью VPN. И многие компании, в том числе иностранные, задались вопросом, как быть организациям, использующим технологию для создания корпоративных сетей.
Как рассказали представители Госдумы, в законе имеется оговорка, согласно которой шифрование сетей можно использовать в корпоративных целях. Это означает, что компаниям не придётся тратить значительные суммы и прокладывать частные сети между своими офисами, так как установка VPN-соединения практически (а в некоторых случаях так и есть) бесплатна. Поэтому сегодня мы решили рассмотреть два способа организации VPN-соединения в корпоративной сети и несколько применяемых для этого протоколов: PPTP, L2TP/IPsec, SSTP и OpenVPN.
Идет «по умолчанию» на любой VPN-совместимой платформе и легко настраивается без дополнительного программного обеспечения. Еще одно достоинство PPTP - высокое быстродействие. Но к сожалению, PPTP недостаточно безопасен. С момента включения протокола в состав Windows 95 OSR2 в конце девяностых, раскрылись несколько уязвимостей.
Самая серьезная - это возможность неинкапсулированной аутентификации MS-CHAP v2. Этот эксплойт позволил взломать PPTP за два дня. Microsoft «залатали» дыру, перейдя на протокол аутентификации PEAP , но потом сами предложили использовать VPN-протоколы L2TP/IPsec или SSTP. Еще один момент - PPTP-подключения легко заблокировать, потому что протокол работает с одним портом номер 1723 и использует GRE-протокол .
Когда VPN-туннель установлен, PPTP поддерживает два типа передаваемых сообщений: это контрольные сообщения для поддержания и отключения VPN-соединения, а также сами пакеты данных.
L2TP и IPsec
Layer 2 Tunneling Protocol, или L2TP , также представлен практически во всех современных операционных системах и работает со всеми устройствами, способными «воспринимать» VPN.L2TP не умеет шифровать проходящий через него трафик, поэтому его часто используют в связке с IPsec . Однако это приводит к появлению негативного эффекта - в L2TP/IPsec происходит двойная инкапсуляция данных, что отрицательно сказывается на производительности. Также L2TP использует пятисотый UDP-порт, который легко блокируется файрволом, если вы находитесь за NAT.
L2TP/IPsec умеет работать с шифрами 3DES или AES. Первый уязвим для атак типа meet-in-the-middle и sweet32 , поэтому сегодня редко встречается на практике. При работе с AES-шифром о крупных уязвимостях неизвестно, поэтому в теории этот протокол должен быть безопасен (при правильной реализации). Однако Джон Гилмор (John Gilmore), основатель Electronic Frontier Foundation, указал в своем посте, что IPSec мог быть специальным образом ослаблен.
Наиболее серьезная проблема с L2TP/IPsec заключается в том, что многие VPN-сервисы реализуют его недостаточно хорошо. Они используют pre-shared keys (PSK), которые можно загрузить с сайта. PSK нужны для установки соединения, потому даже если данные оказываются скомпрометированы, они остаются под защитой AES. Но атакующий может использовать PSK, чтобы выдать себя за VPN-сервер и затем подслушать зашифрованный трафик (даже инжектировать вредоносный код).
SSTP
Secure Socket Tunneling Protocol, или SSTP , - это VPN-протокол, который разрабатывала компания Microsoft. Он основывается на SSL и впервые запущен в Windows Vista SP1. Сегодня протокол доступен для таких ОС, как RouterOS, Linux, SEIL и Mac OS X, однако основное применение он все равно находит на платформе Windows. SSTP - проприетарный стандарт, принадлежащий Microsoft, и его код недоступен для публичного обозрения.Сам SSTP не имеет криптографического функционала за исключением одной функции - речь идет о криптографическом связывании (cryptographic binding), защищающем от атаки MITM. Шифрование же данных выполняет SSL. Описание процедуры установления VPN-соединения можно найти на сайте Microsoft.
Тесная интеграция с Windows упрощает работу с протоколом и повышает его стабильность на этой платформе. Однако SSTP использует SSL 3.0 , который уязвим для атаки POODLE , что в теории сказывается на защищённости VPN-протокола.
Типы подключения VPN
В сегодняшнем материале мы поговорим о двух наиболее часто используемых типах подключения к VPN. Речь пойдёт об удаленном доступе к корпоративной сети (remote access) и соединении «точка - точка» (site-to-site)Удаленный доступ позволяет сотрудникам компании безопасно подключаться к корпоративной сети через интернет. Особенно это важно в том случае, когда сотрудник работает не в офисе и подключается через незащищенные точки доступа, например Wi-Fi в кафе. Для организации этого соединения, устанавливается туннель между клиентом на гаджете пользователя и VPN-шлюзом в сети компании. Шлюз проводит аутентификацию, а затем предоставляет (или ограничивает) доступ к ресурсам сети.
Чтобы защитить соединение чаще всего используются протоколы IPsec или SSL. Также возможно применение протоколов PPTP и L2TP.
/ Wikimedia / Philippe Belet / PD
Приветствуем Вас на нашем сайте! В этой инструкции вы узнаете, как настроить VPN-подключение по протоколу PPTP для операционной системы Windows 7.
Напомним, VPN (Virtual Private Network) – это технология, которую используют для доступа к защищенной сети (сетям) посредством общедоступной сети Интернет. При помощи VPN-канала можно защитить свою информацию, зашифровав ее и передав внутри VPN-сессии. Кроме этого VPN является дешевой альтернативой дорогостоящему выделенному каналу связи.
Для настройки VPN по протоколу PPTP для ОС Windows 7 Вам понадобятся:
- ОС Windows 7;
- адрес VPN-сервера, к которому будет осуществляться подключение по протоколу PPTP;
- логин и пароль.
На этом теоретическая часть закончена, приступим к практике.
1. Открываем меню "Пуск " и переходим в "Панель управления " Вашим компьютером
2. Затем выбираем раздел "Сеть и Интернет"
3. В открывшемся окне выбираем "Центр управления сетями и общим доступом"
4. На следующем этапе выбираем пункт "Настройка нового подключения или сети"
5. Во вновь открывшемся окне выбираем пункт "Подключение к рабочему месту"
6. В новом окне выбираем пункт "Использовать мое подключение к Интернету (VPN)"
8. В открывшемся окне в поле "Интернет-адрес" вводим адрес вашего VPN-сервера, в поле "Имя местоназначения" вводим название подключения, которое можно выбрать произвольно
9. В следующем окне вводим логин и пароль, которые прописаны на сервере VPN. В поле "Запомнить этот пароль" ставим "галочку", что бы не вводить его при каждом подключении
10. После перечисленных действий подключение готово к использованию, нажимаем кнопку "закрыть"
11. После этого заходим снова в меню Пуск, затем в Панель управления, Сеть и Интернет, Управление сетями и общим доступом, где выбираем пункт "Изменение параметров адаптера"
12. Находим в этом окне наше VPN-подключение, кликаем по нему правой кнопкой мышки и переходим в его свойства
14. В этом же окне, только на вкладке «Сеть» убираем "галочки" напротив пунктов: "Клиент для сетей Microsoft" и "Служба доступа к файлам и принтерам сетей Microsoft"
На этом настройка VPN по протоколу PPTP для операционной системы Windows 7 завершена и VPN-соединение готово к использованию.
Руководство по решению проблем: прокладываем VPN через брандмауэры NAT
Популярность телекоммуникаций продолжает возрастать, при этом вопросы защиты информации не теряют свою актуальность. Поэтому маленькие и большие компании используют виртуальные частные сети (VPN). К счастью, информационные отделы компаний осознают, что многие сотрудники подключены по выделенным линиям и широкополосным соединениям с использованием маршрутизаторов потребительского уровня. ИТ-отделы могут намного облегчить жизнь пользователей, применяя "дружественные к NAT" шлюзы VPN и клиентов VPN, которые не требуют внесения изменений в конфигурацию домашних маршрутизаторов для установки туннеля VPN.
Если же вам не так повезло, вы всё-таки можете исправить ситуацию. Во-первых, следует проверить, поддерживает ли ваш маршрутизатор функцию сквозного прохождения PPTP или IPSEC PPTP/IPsec "pass through." Подобная функция повсеместно встречается в маршрутизаторах Linksys , так что можете поискать эти модели. На Рис. 1 показана нижняя часть экрана фильтров Linksys BEFSR41, которая содержит опции для раздельного включения сквозного прохождения PPTP или IPsec.
Рис. 1. Сквозное прохождение VPN Linksys BEFSR41.
Всё, что вам нужно, - включить поддержку используемого VPN протокола, перезагрузить маршрутизатор. Если всё пройдёт нормально, то ваша VPN сразу же заработает.
К сожалению, функцией включения сквозного прохождения VPN обладают не все маршрутизаторы, однако отсутствие этих опций отнюдь не означает, что всё кончено.
Не работает? Тогда следует попытаться открыть некоторые порты в брандмауэре вашего маршрутизатора для поддержки VPN-соединения. Вам следует открывать порты (и протокол) только для IP-адреса компьютера, на котором будет работать клиент VPN. Имейте в виду, что функция перенаправления портов работает только с одним компьютером одновременно . Если вам необходимо обеспечить поддержку нескольких клиентов VPN, которые требуют одновременной работы в сети, ваш маршрутизатор должен изначально поддерживать используемый VPN протокол.
Если вы используете протокол Microsoft PPTP , то необходимо настроить перенаправление порта TCP 1723 для прохождения трафика PPTP. На Рис. 2 показан экран Перенаправление/ Forwarding маршрутизатора Linksys BEFSR41, где выставлено перенаправление порта на клиента с IP-адресом 192.168.5.100 .
Рис. 2. Перенаправление портов VPN Linksys BEFSR41.
PPTP также требует поддержку протокола IP 47 (Generic Routing Encapsulation) для прохождения трафика VPN. Имейте в виду, что необходима поддержка протокола , а не порта. Поддержка этого протокола должна быть встроена в "движок" NAT, как это и сделано на большинстве современных маршрутизаторов.
Открываем брандмауэр, продолжение
Для поддержки VPN на базе IPsec VPNs необходимо открыть порт UDP 500 для переговоров ключа ISAKMP , протокол IP 50 для трафика Authentication Header (используется не всегда), и протокол IP 51 для передачи самих данных. И вновь единственный перенаправляемый порт здесь UDP 500, который мы тоже запрограммировали на Рис. 2 к той же клиентской машине в локальной сети; поддержка протоколов 50 и 51 должна быть встроена в ваш маршрутизатор.
Не все маршрутизаторы одинаковы! Некоторые поддерживают открытие только одного туннеля VPN и единственного клиента. Другие поддерживают несколько туннелей, но только одного клиента на туннель. К сожалению, большинство производителей не слишком ясно указывают в документации способ поддержки сквозного прохождения VPN своих продуктов, да и служба технической поддержки часто не обладает должной квалификацией для решения этого вопроса. В большинстве случаев вам придётся протестировать маршрутизатор в вашей сети и вернуть его, если он не заработает.
Не работает?
Заставить некоторые маршрутизаторы поддерживать VPN на базе IPsec без шаманской пляски с бубном бывает практически невозможно. Дело в том, что производители любят реализовывать свои собственные механизмы этой поддержки. Впрочем, по мере "взросления" технологии, поддержка IPsec становится всё более близкой к идеалу, и ваша компания может использовать старые продукты, которые создавались вообще без всякого учёта существования NAT или которые требуют открытия дополнительных портов в брандмауэре.
Если вы знаете английский, то мы рекомендуем ознакомиться с руководствами Тина Бёрда по IPsec
и PPTP
, которые содержат готовые конфигурации для многих продуктов. Также вы можете заглянуть и в нашу англоязычную секцию VPN Links & Tools
, где приведена дополнительная информация.
Первого ноября в России начал действовать запрет на обход блокировок с помощью VPN. И многие компании, в том числе иностранные, задались вопросом, как быть организациям, использующим технологию для создания корпоративных сетей.
Как рассказали представители Госдумы, в законе имеется оговорка, согласно которой шифрование сетей можно использовать в корпоративных целях. Это означает, что компаниям не придётся тратить значительные суммы и прокладывать частные сети между своими офисами, так как установка VPN-соединения практически (а в некоторых случаях так и есть) бесплатна. Поэтому сегодня мы решили рассмотреть два способа организации VPN-соединения в корпоративной сети и несколько применяемых для этого протоколов: PPTP, L2TP/IPsec, SSTP и OpenVPN.
Идет «по умолчанию» на любой VPN-совместимой платформе и легко настраивается без дополнительного программного обеспечения. Еще одно достоинство PPTP - высокое быстродействие. Но к сожалению, PPTP недостаточно безопасен. С момента включения протокола в состав Windows 95 OSR2 в конце девяностых, раскрылись несколько уязвимостей.
Самая серьезная - это возможность неинкапсулированной аутентификации MS-CHAP v2. Этот эксплойт позволил взломать PPTP за два дня. Microsoft «залатали» дыру, перейдя на протокол аутентификации PEAP , но потом сами предложили использовать VPN-протоколы L2TP/IPsec или SSTP. Еще один момент - PPTP-подключения легко заблокировать, потому что протокол работает с одним портом номер 1723 и использует GRE-протокол .
Когда VPN-туннель установлен, PPTP поддерживает два типа передаваемых сообщений: это контрольные сообщения для поддержания и отключения VPN-соединения, а также сами пакеты данных.
L2TP и IPsec
Layer 2 Tunneling Protocol, или L2TP , также представлен практически во всех современных операционных системах и работает со всеми устройствами, способными «воспринимать» VPN.L2TP не умеет шифровать проходящий через него трафик, поэтому его часто используют в связке с IPsec . Однако это приводит к появлению негативного эффекта - в L2TP/IPsec происходит двойная инкапсуляция данных, что отрицательно сказывается на производительности. Также L2TP использует пятисотый UDP-порт, который легко блокируется файрволом, если вы находитесь за NAT.
L2TP/IPsec умеет работать с шифрами 3DES или AES. Первый уязвим для атак типа meet-in-the-middle и sweet32 , поэтому сегодня редко встречается на практике. При работе с AES-шифром о крупных уязвимостях неизвестно, поэтому в теории этот протокол должен быть безопасен (при правильной реализации). Однако Джон Гилмор (John Gilmore), основатель Electronic Frontier Foundation, указал в своем посте, что IPSec мог быть специальным образом ослаблен.
Наиболее серьезная проблема с L2TP/IPsec заключается в том, что многие VPN-сервисы реализуют его недостаточно хорошо. Они используют pre-shared keys (PSK), которые можно загрузить с сайта. PSK нужны для установки соединения, потому даже если данные оказываются скомпрометированы, они остаются под защитой AES. Но атакующий может использовать PSK, чтобы выдать себя за VPN-сервер и затем подслушать зашифрованный трафик (даже инжектировать вредоносный код).
SSTP
Secure Socket Tunneling Protocol, или SSTP , - это VPN-протокол, который разрабатывала компания Microsoft. Он основывается на SSL и впервые запущен в Windows Vista SP1. Сегодня протокол доступен для таких ОС, как RouterOS, Linux, SEIL и Mac OS X, однако основное применение он все равно находит на платформе Windows. SSTP - проприетарный стандарт, принадлежащий Microsoft, и его код недоступен для публичного обозрения.Сам SSTP не имеет криптографического функционала за исключением одной функции - речь идет о криптографическом связывании (cryptographic binding), защищающем от атаки MITM. Шифрование же данных выполняет SSL. Описание процедуры установления VPN-соединения можно найти на сайте Microsoft.
Тесная интеграция с Windows упрощает работу с протоколом и повышает его стабильность на этой платформе. Однако SSTP использует SSL 3.0 , который уязвим для атаки POODLE , что в теории сказывается на защищённости VPN-протокола.
Типы подключения VPN
В сегодняшнем материале мы поговорим о двух наиболее часто используемых типах подключения к VPN. Речь пойдёт об удаленном доступе к корпоративной сети (remote access) и соединении «точка - точка» (site-to-site)Удаленный доступ позволяет сотрудникам компании безопасно подключаться к корпоративной сети через интернет. Особенно это важно в том случае, когда сотрудник работает не в офисе и подключается через незащищенные точки доступа, например Wi-Fi в кафе. Для организации этого соединения, устанавливается туннель между клиентом на гаджете пользователя и VPN-шлюзом в сети компании. Шлюз проводит аутентификацию, а затем предоставляет (или ограничивает) доступ к ресурсам сети.
Чтобы защитить соединение чаще всего используются протоколы IPsec или SSL. Также возможно применение протоколов PPTP и L2TP.
/ Wikimedia / Philippe Belet / PD