Настройка sstp windows 7

Обновлено: 06.07.2024

Условная схема пакета с данными

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

Структура собственно SSTP пакета:

Флаг C = 0 если пакет с данными, и C = 1, если пакет управляющий.

Немного слов об используемой криптографии

SSTP устроен довольно просто за счёт того, что он использует функционал других криптографических протоколов. Собственно, единственная криптографическая функция, реализуемая самим SSTP – это «cryptographic binding», о котором говорится ниже.
Всё шифрование данных осуществляется протоколом SSL. Все пакеты протоколов SSTP, PPP и выше передаются только в зашифрованном виде.
Авторизация проходит сразу по трём протоколам: SSL, PPP и, собственно, сам SSTP.
При установлении SSL соединения проходит авторизация сервера клиентом по SSL сертификату. Аутентификация клиента сервером допускается, однако не поддерживается ни одной из серверных Windows.
На уровне PPP происходит авторизация клиента сервером, и дополнительно может происходить аутентификация сервера. Windows Server поддерживают аутентификацию клиента на уровне PPP с помощью MS-CHAPv2, EAP-TLS, PEAP-MSCHAPv2, PEAP-TLS. Также поддерживаются Password Authentication Protocol (PAP – не шифрованный пароль) и CHAP, однако их использование не рекомендуется, т. к. они не предусматривают обмена ключевой информацией, которая необходима для «cryptographic binding». Собственно, тут те же методы аутентификации, что и в PPTP. Отличие от PPTP в том, что обмен происходит внутри уже созданного шифрованного канала SSL.
Теперь о том, что же такое этот «cryptographic binding». Из-за того, что аутентификация клиента и сервера происходит на разных уровнях, возможна атака человек посередине, когда нарушитель устанавливает SSL соединение с сервером и незащищённое PPP соединение с клиентом.
Порядок установления соединения
Обрыв соединения

Что бы отличить простой канала от разрыва связи стороны «пингуют» друг друга. Если в течение 60 секунд обмена пакетами не было, посылается Echo Request (управляющий пакет протокола SSTP). Если в течение следующих 60 секунд нет ответа, соединение разрывается.

Завершение соединения


Правой клавишей на иконке сетевого подключения и "Центр управления Сетями и Общим доступом"

Выбираем "Настройка нового подключения к сети"

"Подключиться к рабочему месту"

"Использовать мое подключение к интернету (VPN)"

Интернет адрес: Server из личного кабинета (https://cp.vpner.net/ и пройти в меню "Услуги" -> "Продукты\Услуги", напротив нужной услуги выбрать "Просмотреть данные".)
Имя местоназначения: Это будет имя ВПН подключения, укажите любое.
Отмечаем галку "Не подключаться сейчас"

Логин: Login так как он указан в личном кабинете для сервиса.
Пароль: Password из личного кабинета для сервиса.
Для тарифа private , Вам необходимо вводить Логин в формате: Login@VirtualHub оба значения с личного кабинета. Пример: test@p10.5.5.5 если Логин test и значение VirtualHub равно p10.5.5.5
Ставим галку "Запомнить этот пароль"

В новом меню жмем "Закрыть"

07.jpg

Открываем "Центр управления сетями и общим доступом", выбираем "Изменение параметров адаптера"

Правой кнопкой мыши "Свойства" на созданном VPN подключении.

Вкладка "Безопасность", Тип VPN устанавливаем в "SSTP", жмем "OK"

Жмем "ОК" еще раз.

2. Подключение к VPN

В меню где отображаются все Сетевые адаптеры, выберите созданное VPN подключение и запустите его.

Введите логин\пароль что указан для сервиса в личном кабинете.

Для private тарифа указать VirtualHub как указано в личном кабинете для сервиса.

Отметить галку "Сохранить имя пользовтеля и пароль"

И жмем "Подключение"

Далее будет информационное окно прогресса подключения.

Если VPN успешно подключится, то при нажатии на иконку "Сетевое подключение" в списке будет имя VPN подключения и его статус "Подключено".

3. Использование VPN

Пока VPN соединение установлено, все передачи данных будут проходить через него.

SSTP является запатентованной технологией, первоначально разработанной Microsoft. Это означает безопасный протокол Оправа Tunneling и был впервые представлен в Microsoft Vista. Теперь вы можете легко подключиться к SSTP VPN на популярных версиях Windows (и Linux). Настройка SSTP VPN в Ubuntu для Windows, не слишком сложно, как хорошо. В этом руководстве, мы научим вас, как настроить SSTP VPN Mikrotik и сравнить его с другими популярными протоколами, а также.

Часть 1: Что такое SSTP VPN?

Secure Socket Tunneling Protocol является широко используемым протоколом туннелирования, который может быть использован для создания собственного VPN. Эта технология была разработана корпорацией Майкрософт и может быть развернута с маршрутизатором вашего выбора, как Mikrotik SSTP VPN.

sstp vpn

SSTP VPN Ubuntu

Часть 2: Как настроить VPN с SSTP?

Настройка SSTP VPN в Ubuntu или Windows, немного отличается от L2TP или PPTP. Несмотря на то, что технология является родной для Windows, вам нужно будет настроить MikroTik SSTP VPN. Вы можете использовать любой другой маршрутизатор, а также. Хотя, в этом уроке мы рассмотрели настройка SSTP VPN Mikrotik на ОС Windows 10. Процесс очень похож на других версиях Windows, и SSTP VPN Ubuntu тоже.

Шаг 1: Получение сертификата для проверки подлинности клиента

Как вы знаете, для того, чтобы настройки Mikrotik SSTP VPN, необходимо создать специальные сертификаты. Чтобы сделать это, выберите Система> Сертификаты и решили создать новый сертификат. Здесь вы можете указать имя DNS для настройки SSTP VPN. Кроме того, срок годности должен быть действителен в течение следующих 365 дней. Размер ключа должен быть 2048 бит.

create new client certification

После этого перейдите на вкладку Использование ключа и включить только CrL знак и ключ сертификата. подписать варианты.

Сохраните изменения, нажав на кнопку «Применить». Это позволит создать сертификат сервера для SSTP VPN Mikrotik тоже.

apply key usage settings

Шаг 2: Создание сертификата сервера

Таким же образом, вам необходимо создать сертификат для сервера, а также. Дайте ему соответствующее имя и установить размер ключа в 2048. Продолжительность может быть что угодно, от 0 до 3650.

create server certification

Теперь перейдите на вкладку Использование ключа и убедитесь, что ни один из вариантов включен.

disable key usage settings

Просто нажмите на кнопку «Применить» и закройте окно.

Шаг 3: Подписать сертификат

Для того, чтобы продолжить, вы должны подписать сертификат самостоятельно. Просто откройте сертификат и нажмите на кнопку «Sign». Введите имя DNS или статический IP-адрес и выбрать для самостоятельного знака сертификата.

sign the certificate for sstp vpn

После подписания, вы не сможете вносить какие-либо изменения в сертификате.

Шаг 4: Подписать сертификат сервера

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

sign the server certificate

Шаг 5: Включение сервера

Теперь вам нужно включить сервер SSTP VPN и создать секрет. Просто зайдите в опции PPP и включить сервер SSTP. Аутентификации должны быть только «mschap2». Кроме того, отключите опцию проверки сертификата клиента перед сохранением этих изменений.

enable sstp server

Кроме того, создать новый PPP секрет. Введите имя пользователя, пароль и адрес локальной сети вашего маршрутизатора Mikrotik. Кроме того, вы можете указать IP-адрес удаленного клиента здесь.

Шаг 6: Экспорт сертификата

Теперь нам нужно экспортировать сертификат проверки подлинности клиента. Заблаговременно, убедитесь, что порт 443 открыт.

Просто запустите интерфейс вашего маршрутизатора один больше времени. Выберите сертификат ЦС и нажмите на кнопку «Экспорт». Установите сильный Экспорт Passphrase.

export client certificate

Большой! Мы почти на месте. Перейти к интерфейсу маршрутизатора и скопировать и вставить сертификат ЦС на диске Windows.

paste the ca certification on windows drive

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

import new certificate

Здесь вы можете просмотреть сертификат, который вы создали. Вы также можете запустить «certlm.msc» и установить сертификат там.

Шаг 7: Создание SSTP VPN

В конце концов, вы можете перейти в Панель управления> Сеть и настройки и выбрать для создания нового VPN. Введите имя сервера и убедитесь, что тип VPN указан как SSTP.

create sstp vpn from windows network settings

После того, как SSTP VPN будет создан, вы можете перейти к интерфейсу Mikrotik. Здесь вы можете просмотреть MikroTik SSTP VPN, который был добавлен. Теперь вы можете подключиться к этому SSTP VPN Mikrotik в любое время.

view mikrotik sstp vpn

Часть 3: SSTP против PPTP

Как вы знаете, SSTP довольно сильно отличается от PPTP. Например, PPTP доступен практически для всех ведущих платформ (включая Android и IOS). С другой стороны, SSTP является родным для Windows.

PPTP также быстрый протокол туннелирования по сравнению с SSTP. Хотя, SSTP является более безопасным вариантом. Поскольку он основан на порт, который никогда не блокируется межсетевыми экранами, он может легко обойти систему безопасности NAT и межсетевые экраны. То же самое не может быть применен к PPTP.

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

Часть 4: SSTP против OpenVPN

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

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

Кроме того, OpenVPN может туннель UDP и сети, а также. Для настройки OpenVPN, вам потребуется программное обеспечение сторонних разработчиков при настройке SSTP VPN на Windows, проще.

Теперь, когда вы знаете основы SSTP VPN и как настроить Mikrotik SSTP VPN, вы можете легко удовлетворить ваши требования. Просто перейдите по протоколу VPN по вашему выбору и обязательно иметь безопасный опыт просмотра.


Прошло уже более года, после того как мы начали работу с VPN соединениями на базе протокола L2TP/IPsec и авторизацией через RADIUS . Накопился некоторый опыт использования описанной конфигурации, были выявлены её плюсы и минусы, сделаны определённые выводы. Опираясь на эти выводы, в данной заметке мы продолжим развитие темы настройки безопасных VPN соединений и рассмотрим шаги, необходимые для организации возможности работы по протоколу SSTP (Secure Socket Tunneling Protocol).

Опыт использования L2TP/IPsec VPN показал, что при наличии внятной пошаговой инструкции по подключению, большинство пользователей способны без особых проблем настроить такое VPN-подключение самостоятельно. Но всё-таки всегда остаются индивидуумы, которые умудряются наделать ошибок даже в таких условиях, и поэтому мысль о необходимости упрощения процесса создания VPN-подключения всегда мелькала где-то на заднем фоне. К тому же в ряде ситуаций мы столкнулись с проблемой блокировки некоторых портов, необходимых для L2TP/IPsec VPN, обнаруженной на уровне интернет-провайдеров. Причём иногда дело доходило до абсурда, когда у одного и того-же интернет-провайдера трафик L2TP/IPsec в одном конце города транслировался беспрепятственно, а в другом конце города блокировался. Мы уже даже мысленно поделили для себя зоны разных интернет-провайдеров на сегменты, где L2TP/IPsec VPN будет работать без нареканий, и на зоны, где точно будут проблемы и нам потребуется подумать об альтернативных вариантах доступа к ресурсам локальной корпоративной сети. Помимо этого, были и случаи, когда командированные пользователи и "отпускники", удалённо пытающиеся подключиться через "гостиничный интернет", испытывали проблемы в силу всё тех же проблем с блокировкой нужных портов. Разумеется перед внедрением L2TP/IPsec VPN мы понимали все эти риски и в подавляющем большинстве проблемных ситуаций находилось какое-то обходное решение, но "осадочек" от каждой такой ситуации оставался неприятный.

Я начал вспоминать, почему же ранее мой выбор пал именно на L2TP/IPsec. Определяющих факторов было два – приемлемый уровень безопасности и поддержка более широкого круга клиентских ОС. Помню, что в то время меня заинтересовал протокол SSTP, но было пару факторов, которые заставили меня отстраниться от данной технологии. Во первых, на то время у нас было ещё достаточное количество клиентов на базе Microsoft Windows XP, а в этой ОС протокол SSTP, как известно, не поддерживается. Во вторых, у меня не было возможности использовать публичный сертификат с корпоративными доменными именами для защиты SSTP соединений, а заменять его на сертификат внутреннего выделенного ЦС не было желания, так как это влекло за собой проблемы связанные с распространением его корневого сертификата на интернет-клиентов и публикации списка отзыва сертификатов (Certificate Revocation List – CRL) в Интернет.

Но прошло время, клиентов с Windows XP стало на порядок меньше (усиление корпоративной политики ИБ и агрессивные рекламные компании Microsoft по обновлению ОС сделали своё дело), а у меня появилась возможность работы с публичным сертификатом. К тому же на глаза мне попалась информация о том, что на таких OC, как Linux и Apple Mac OS X, клиентское ПО для поддержки SSTP подключений уже давно вполне успешно эксплуатируется, несмотря на то, что в своё время этому протоколу пророчили "Win-изоляцию" в силу его проприетарности.

Основные требования к клиентам и их настройка

Если речь вести о клиентских системах на базе ОС Microsoft Windows, то нужно учесть, что SSTP работает на системах начиная с Windows Vista SP1 и более поздних. Для клиентских систем ниже Windows Vista SP1, в том числе и для ещё "живых мамонтов" в виде Windows XP, как и ранее, предполагается использование протокола L2TP/IPsec со всеми вытекающими обстоятельствами, о которых я говорил выше. От использования протокола PPTP, как уже давно скомпрометированного, предлагается отказаться вовсе. Ссылки на обновлённые инструкции по настройке SSTP соединения на клиентских ОС Windows можно найти в конце этой статьи.

Для клиентских систем на базе ОС Linux вполне жизнеспособным себя показывает проект с открытым исходным кодом SSTP-Client. Мной уже подготовлены пошаговые инструкции для не особо искушённых пользователей Linux-систем на примере настройки в Ubuntu Linux 14.04 и 15.04/15.10 .

По поводу клиентских систем на базе ОС Apple Mac OS внятного пока ничего сказать не могу, так как под руками их у меня попросту нет. По имеющейся поверхностной информации можно использовать SSTP-Client (в качестве консольного варианта), а можно использовать созданный на его основе пакет iSSTP с управлением через графический интерфейс. Надеюсь, что в ближайшее время Виталий Якоб нас порадует соответствующей инструкцией пользователя.

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

Основные требования к VPN-серверу и его настройка

Серверную часть VPN-соединения в нашем случае будет представлять собой расширение к созданной ранее конфигурации VPN-сервера на базе Windows Server 2012 R2 с ролью Remote Access.

Из основных требований к VPN-серверу, как уже наверно понятно из всего вышесказанного, является наличие на нём установленного сертификата. Получить такой сертификат можно из публичных ЦС и, как правило, такие сертификаты стоят немалых денег. Но есть и бесплатные варианты, например WoSign Free SSL Certificates . Сам я пока опыта общения с таким ЦС не имел, и поэтому будет интересно выслушать Ваши комментарии по этому поводу.

Требования к сертификату VPN-сервера

Важным для SSTP является то, что при генерации запроса на получение сертификата от стороннего публичного ЦС нужно помнить про то, что в запрашиваемом сертификате должна присутствовать политика применения (Extended Key Usage, EKU) - Server Authentication (1.3.6.1.5.5.7.3.1). Само собой для такого сертификата должен быть разрешён экспорт закрытого ключа, так как возможно нам потребуется установка сертификата на несколько VPN-серверов в случае, если, например, используется кластерная конфигурация.

Обязательным требованием к получаемому сертификату является также то, что список отзыва сертификатов (CRL) указанный в сертификате обязательно должен быть доступен в Интернете, так как в самом начале создания SSTP соединения клиентский компьютер будет пытаться проверить не является ли предоставленный VPN-сервером сертификат отозванным. Не будет доступного CRL – не будет SSTP соединения.

image

Полученный сертификат устанавливается на VPN-сервере в хранилище сертификатов Local Computer\Personal и должен иметь привязку к закрытому ключу этого сертификата.

image

Также разумеется, что ЦС выдавшему сертификат должны доверять не только наши VPN-серверы, но и все наши внешние Интернет-клиенты, которые будут подключаться к этим серверам по протоколу SSTP. То есть корневой сертификат (их может быть и несколько) должен присутствовать на всех компьютерах в хранилище сертификатов Local Computer\Trusted Root Certification Authorities. Информацию об этих требованиях можно найти в статье TechNet Library - Configure RRAS with a Computer Authentication Certificate . В большинстве современных клиентских ОС коллекция публичных корневых сертификатов обновляется автоматически при наличии постоянного подключения к Интернет.

Настройка роли Remote Access

После того, как на VPN-сервере установлен сертификат, откроем оснастку Routing and Remote Access и в свойствах сервера VPN на вкладке Security выберем этот сертификат для SSTP в разделе SSL Certificate Binding

image

Изменение этой опции выведет предложение об автоматическом перезапуске служб RRAS. Соглашаемся с перезапуском служб.

Далее в разделе Ports добавим порты SSTP. В нашем примере под SSTP соединения отдаётся большая часть портов и небольшая часть портов выделяется для клиентов без поддержки SSTP, например Windows XP. Возможность же подключения по протоколу PPTP отключаем совсем.

image

Информацию о том, как правильно отключить возможность подключения по протоколу PPTP, можно найти в статье Routing How To. Add PPTP or L2TP ports . Пример на скриншоте:

image

После сделанных изменений проверим TCP прослушиватели (TCP Listener) работающие на нашем VPN-сервере. Среди них должен появиться прослушиватель для 443 порта, на который VPN-сервером будут приниматься клиентские подключения по протоколу SSTP:

image

Не забываем настроить брандмауэр, включив уже имеющееся после установки и настройки роли Remote Access правило Secure Socket Tunneling Protocol (SSTP-In)

image

Поимо этого можно отключить разрешающее правило для входящих PPTP-подключений на порт TCP 1723 (в конфигурации по умолчанию это правило называется "Routing and Remote Access (PPTP-In)")

Так как наш VPN-сервер является членом NLB-кластера, нам потребуется дополнительно создать правило разрешающее балансировку порта TCP 443.

image

Сделанных настроек вполне достаточно для того чтоб наш VPN-сервер смог успешно принимать SSTP подключения.

Проверяем подключение VPN-клиента

На клиентской машине имеющей прямой доступ в интернет по 443 порту настраиваем проверочное VPN-соединение и выполняем подключение…

image

На стороне сервера при этом убеждаемся в том, что клиент использует один из свободных созданных нами ранее SSTP портов…

image

Инструкции для пользователей

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

  • Windows XP 32-bit RU SP3
    (Инструкция переписана с учётом использования L2TP/IPsec, но при отсутствии работающего PPTP. Запрос и установка сертификата делаются в два этапа разными скриптами)
  • Windows VistaBusiness 32-bit RU SP2 (SSTP)
  • Windows 7Pro 32-bit RU SP1 (SSTP)
  • Windows 8.1 Pro 64-bit RU (SSTP)
  • Ubuntu Desktop Linux14.04 64-bit (SSTP)
  • Ubuntu Desktop Linux15.04 64-bit (SSTP)
  • Ubuntu Desktop Linux14.10 64-bit (SSTP)

Инструкции в формате DOCX (а также нужными исполняемыми файлами), которые, при желании, вы можете адаптировать под своё окружение можно скачать по ссылке . Часть инструкций доступна для онлайн просмотра и обсуждения на нашем Вики .

Читайте также: