Written on 05 Декабря 2008. Posted in Windows Server 2008
Удаленный доступ (Remote Access) на сегодняшний день очень важен. С ростом числа людей, нуждающихся в доступе к информации, хранящейся на домашних и рабочих компьютерах, возможность получать такой доступ из любой точки стала решающей. Прошли те дни, когда люди говорили: «я отправлю вам эту информацию, как только доберусь до своего компьютера». Вам нужна эта информация немедленно, если вы хотите достойно конкурировать в сегодняшнем деловом мире.
В каменном веке компьютеризации способом получения удаленного доступа к своему компьютеру было использование dial-up соединения. RAS dial-up соединения работали через обычные POTS (Простая старая телефонная служба — Plain Old Telephone Service) линии при скорости передачи данных примерно до 56kbps. Скорость была основной проблемой таких соединений, но еще более серьезной проблемой была цена соединения, когда получение доступа требовало больших расстояний.
С ростом популярности сети Интернет, соединения RAS стали использоваться все реже. Причиной этого стало появление соединений по VPN (виртуальная частная сеть). Соединения VPN обеспечивали такую же подключаемость точек между собой, как и соединения dial-up RAS, но делали это быстрее и дешевле, поскольку скорость VPN соединения может быть одинаковой со скоростью подключения к Интернет, а стоимость соединения не зависит от расположения места назначения. Единственное, за что приходится платить, это подключение к Интернет.
Виртуальные частные сети (Virtual Private Networking)
Соединение VPN позволяет компьютеру создавать виртуальное и частное подключение к сети через Интернет. Соединение виртуальное, потому что когда компьютер создает VPN подключение через Интернет, то создающий это подключение компьютер выполняет функцию узла, напрямую подключенного к сети, как если бы он был соединен с сетью посредством кабеля локальных сетей Ethernet. Пользователь имеет такой же доступ к ресурсам, какой он имел бы при прямом подключении к сети с помощью кабеля. Однако в случае VPN подключения клиента к VPN серверу соединение виртуально, поскольку нет действительного подключения Ethernet с местом назначения. VPN соединение частное, поскольку содержание потока данных внутри этого соединения зашифровано, поэтому никто в Интернет не может перехватить и прочесть данные, передаваемые посредством VPN соединения.
Серверы Windows Servers и клиенты поддерживали VPN соединения со времен Windows NT и Windows 95. Хотя клиенты и серверы Windows поддерживают VPN соединения на протяжении десятилетия, тип поддержки VPN эволюционировал со временем. Windows Vista Service Pack 1 и Windows Server 2008 на сегодняшний день поддерживают три типа VPN соединений. Это следующие типы:
- PPTP
- L2TP/IPSec
- SSTP
PPTP – это туннельный протокол от точки к точке. PPTP – это самый простой способ создания VPN соединения, но, к сожалению, он и наименее безопасен. Причина, по которой этот тип наименее безопасный, заключается в том, что мандаты пользователя передаются по небезопасному каналу. Говоря другими словами, шифрование VPN соединения начинается после того, как мандаты были переданы. Хотя действительная информация мандатов не передается между клиентами и серверами VPN, переданные значения хэш-функции могут использоваться опытными хакерами для получения доступа к VPN серверам и подключения к корпоративной сети.
Более надежным является VPN протокол L2TP/IPSec. L2TP/IPSec был совместно разработан компаниями Microsoft и Cisco. L2TP/IPSec более безопасен чем PPTP, поскольку безопасная сессия IPSec создается до того, как мандаты пересылаются по проводам. Хакеры не могут получить доступ к мандатам, а, следовательно, не смогут украсть их, чтобы впоследствии использовать. Более того, IPSec обеспечивает взаимную аутентификацию машин, поэтому неизвестные машины не смогут соединиться с каналом L2TP/IPSec VPN. IPSec обеспечивает взаимную аутентификацию, целостность данных, конфиденциальность и невозможность отказа от авторства. L2TP поддерживает PPP и EAP механизмы аутентификации пользователей, которые обеспечивают высокую безопасность входа, поскольку требуется аутентификация как машины, так и пользователя.
Windows Vista SP1 и Windows Server 2008 на сегодняшний день поддерживают новый тип VPN протокола ‘ Secure Socket Tunneling Protocol или SSTP. SSTP использует зашифрованные в SSL HTTP соединения, чтобы создавать VPN подключения к VPN шлюзам. SSTP безопасен, так как мандаты пользователя не передаются до тех пор, пока безопасный туннель SSL для соединения с VPN шлюзом не будет открыт. SSTP также известен как PPP через SSL, это означает, что вы можете использовать PPP и EAP механизмы аутентификации, чтобы сделать ваше SSTP соединение более безопасным.
Приватный не значит безопасный
Следует отметить, что VPN соединения скорее частные, чем безопасные. Хотя я и признаю, что приватность является основным компонентом безопасности коммуникаций, однако сама по себе не обеспечивает этой безопасности. Технологии VPN обеспечивают частный компонент при соединении через Интернет, который не позволяет посторонним лицам читать содержимое вашей коммуникации. Технологии VPN также позволяют вам быть уверенными в том, что только авторизированные пользователи могут подключаться к данной сети через шлюз VPN. Однако частный компонент, аутентификация и авторизация не обеспечивают всеобъемлющей безопасности.
Допустим, у вас есть сотрудник, которому вы открыли доступ VPN. Поскольку ваш Windows Server 2008 VPN протокол поддерживает EAP аутентификацию пользователя, вы решили создать смарт-карты для ваших пользователей и использовать L2TP/IPSec VPN протокол. Комбинация смарт-карт и протокола L2TP/IPSec позволяет требовать аутентификации пользователя и использования здоровой машины. Ваше решение по использованию смарт-карт и протокола L2TP/IPSec работает отлично, и все довольны.
Все довольны до тех пор, пока однажды один из ваших пользователей не заходит на ваш SQL сервер, чтобы получить бухгалтерскую информацию, и начинает делиться ею с другими сотрудниками. Что произошло? Разве соединение VPN было небезопасным? Нет, VPN соединение было безопасным ровно настолько, чтобы обеспечить частный (приватный) компонент, аутентификацию и авторизацию, но оно не обеспечивало контроля над доступом, а контроль над доступом является одним из основополагающих компонентов компьютерной безопасности. На самом деле можно даже говорить о том, что без контроля над доступом все остальные меры безопасности представляют сравнительно малую ценность.
Для VPN, чтобы быть на самом деле безопасными, вам нужно убедиться в том, что ваш VPN шлюз способен обеспечить контроль над доступом пользователей/групп с тем, чтобы вы смогли открывать необходимый уровень доступа пользователям VPN. Более совершенные VPN шлюзы и брандмауэры, такие как ISA Firewall, могут обеспечивать такой контроль на VPN соединениях. Плюс ко всему, такие брандмауэры, как ISA Firewall, могут обеспечивать проверку адресных пакетов и уровня приложений на клиентских VPN соединениях.
Хотя сервер Windows Server 2008 VPN не обеспечивает контроль над доступом пользователей и групп, есть другие способы, посредством которых вы можете настраивать контроль доступа на самом сервере, если вы не хотите платить за приобретение более совершенных брандмауэров и VPN шлюзов. В данной статье мы заостряем наше внимание только на компонентах VPN серверов. Если вы хотите узнать больше о брандмауэрах ISA и их возможностях для VPN серверов, перейдите по ссылке www.isaserver.org
Зачем использовать новый VPN протокол?
Microsoft уже создали два жизнеспособных протокола VPN, позволяющих пользователям соединяться с корпоративной сетью, так зачем же создавать третий? SSTP – это отличное дополнение для пользователей Windows VPN, поскольку SSTP не имеет проблем с брандмауэрами и устройствами NAT в отличие от протоколов PPTP и L2TP/IPSec. Для того чтобы PPTP работал через устройство NAT, это устройство должно поддерживать PPTP с помощью редактора NAT для PPTP. Если такой NAT редактор для PPTP отсутствует на данном устройстве, то PPTP соединения не будут работать.
L2TP/IPSec имеет проблемы с устройствами NAT и брандмауэрами, поскольку брандмауэру необходимо иметь L2TP порт UDP 1701, открытый для исходящих соединений, IPSec IKE порт, UDP 500 открытый для исходящих соединений, и IPSec NAT порт просмотра-обхода, UDP 4500 открыт для исходящих соединений (порт L2TP не требуется при использовании NAT-T). Большинство брандмауэров в общественных местах, таких как гостиницы, центры конференций, рестораны и т.д. имеют малое количество портов, открытых для исходящих соединений, например, HTTP, TCP порт 80 и HTTPS (SSL), TCP порт 443. Если вам нужна поддержка не только протоколов HTTP и SSL, когда вы покидаете офис, ваши шансы на успешное соединение значительно снижаются. Вы можете и не получить порты, требуемые для протоколов PPTP или L2TP/IPSec.
В отличие от предыдущих протоколов, SSTP VPN соединения проходят по каналу SSL, используя TCP порт 443. Поскольку все брандмауэры и устройства NAT имеют открытый порт TCP 443, вы сможете использовать протокол SSTP где угодно. Это значительно облегчает жизнь путешественникам, которые используют VPN соединения для подключения к офису, а также значительно облегчает жизнь корпоративных администраторов, которым нужно поддерживать путешественников, а также помогать служащим в общественных местах обеспечивать доступ к Интернет в гостиницах, конференц-центрах и т.д.
Процесс соединения SSTP
Далее будет показано, как работает процесс SSTP соединения:
- SSTP VPN клиент создает TCP соединение с SSTP VPN шлюзом между случайным TCP портом источника клиента SSTP VPN и TCP портом 443 шлюза SSTP VPN.
- SSTP VPN клиент отправляет SSL Client-Hello сообщение, указывая на то, что он хочет создать SSL сеанс с SSTP VPN шлюзом.
- SSTP VPN шлюз отправляет сертификат компьютера клиенту SSTP VPN.
- Клиент SSTP VPN подтверждает сертификат компьютера, проверяя базу сертификатов Trusted Root Certification Authorities, чтобы убедиться в том, что CA сертификат, подписанный сервером, находится в этой базе. Затем SSTP VPN клиент определяет способ шифрования для SSL сеанса, генерирует ключ SSL сеанса и шифрует его с помощью SSTP VPN ключа публичного шлюза, после чего отправляет зашифрованную форму ключа SSL сеанса на SSTP VPN шлюз.
- Шлюз SSTP VPN расшифровывает зашифрованный ключ SSL сеанса с помощью личного ключа сертификатов компьютера. Все последующие соединения между SSTP VPN клиентом и SSTP VPN шлюзом будут зашифрованы оговоренным методом шифрования и ключа SSL сеанса.
- SSTP VPN клиент отправляет HTTP через SSL (HTTPS) сообщение запроса на SSTP VPN шлюз.
- SSTP VPN клиент обсуждает SSTP канал с SSTP VPN шлюзом.
- SSTP VPN клиент обсуждает PPP соединение с SSTP сервером. Эти переговоры включают аутентификацию мандатов пользователя посредством стандартного PPP метода аутентификации (или даже EAP аутентификации) и конфигурирование настроек для трафика Интернет протокола четвертой версии (IPv4) или Интернет протокола шестой версии (IPv6).
- Клиент SSTP начинает отправку IPv4 или IPv6 трафика через PPP соединение.
Те, кому интересны характеристики архитектуры VPN протоколов, могут посмотреть их на рисунке ниже. Обратите внимание, что SSTP имеет дополнительный заголовок в отличие от двух других VPN протоколов. Это благодаря дополнительному HTTPS шифрованию, помимо заголовка SSTP. L2TP и PPTP не имеют заголовков уровня приложений для шифровки соединения.
Рисунок 1
Мы возьмем для примера простую сеть из трех машин, чтобы посмотреть, как работает SSTP. Названия и характеристики этих трех машин следующие:
Vista:
Vista Business Edition
Vista Service Pack 1
Non-domain member
W2008RC0-VPNGW:
Windows Server 2008 Enterprise Edition
Two NICs ‘ Internal and External
Domain member
WIN2008RC-DC:
Windows Server 2008 Enterprise Edition
Domain Controller of MSFIREWALL.ORG domain
DHCP Server
DNS Server
Certificate Server (Enterprise CA)
Обратите внимание, что Vista Service Pack 1 используется в качестве VPN клиента. Хотя в прошлом были обсуждения по поводу Windows XP Service Pack 3, поддерживающей SSTP, дело может закончиться совсем не так. Я недавно установил пробную версию Windows XP Service Pack 3 на тестовый компьютер и не нашел никаких доказательств поддержки SSTP. И это действительно плохо, поскольку на сегодняшний день слишком много ноутбуков используют ОС Windows XP, а факты говорят о том, что Vista слишком медлительна для работы ноутбуков. Возможно, проблемы производительности Vista будут решены с помощью пакета обновления Vista Service Pack 1.
Высокоуровневая конфигурация примерной сети показана на рисунке ниже.
Рисунок 2
Конфигурирование Windows Server 2008 в качестве сервера Remote Access SSL VPN Server
Я не собираюсь рассматривать все шаги, начиная с самых основ. Смею предположить, что вы установили контроллер домена и активировали DHCP, DNS и Certificate Services роли на этом сервере. Тип сертификации сервера должен быть Enterprise, и вы имеете CA в вашей сети. Сервер VPN должен быть подключен к домену, прежде чем продолжать выполнять следующие шаги. Прежде чем начинать, нужно установить пакет обновления SP1 для клиента Vista.
Нам нужно выполнить следующие процедуры для того, чтобы наше решение работало:
- Установить IIS на VPN сервер
- Запросить сертификат машины для сервера VPN, используя мастера запроса сертификатов IIS Certificate Request Wizard
- Установить роль RRAS на сервере VPN
- Активировать RRAS Server и настроить его на работу в качестве VPN и NAT сервера
- Настроить NAT сервер на публикацию CRL
- Настроить учетную запись (User Account) на использование dial-up соединений
- Настроить IIS на Certificate Server, чтобы разрешить HTTP соединения для директории CRL
- Настроить HOSTS файл для VPN клиента
- Использовать PPTP для связи с VPN сервером
- Получить CA Certificate из Enterprise CA
- Настроить клиента на использование SSTP и соединение с сервером VPN с помощью SSTP
Установка IIS на VPN сервер
Возможно, вам покажется странным, что мы начинаем именно с этой процедуры, так как я рекомендую никогда не устанавливать вебсервер на устройство безопасности сети. Хорошая новость заключается в том, что нам не придется хранить вебсервер на VPN сервере, он понадобится нам лишь на некоторое время. Причина кроется в том, что регистрационный сайт, включенный в Windows Server 2008 Certificate Server, более не является полезным для запроса сертификатов компьютера. На самом деле он вообще бесполезен. Интересно то, что если вы все же решите использовать регистрационный сайт для получения сертификата компьютера, все будет выглядеть так, словно сертификат получен и установлен, однако на самом деле это не так, сертификат не установлен.
Для решения этой проблемы мы воспользуемся преимуществом того, что используем enterprise CA. При использовании Enterprise CA, можно посылать запрос на интерактивный сервер сертификации. Интерактивный запрос на получение сертификата компьютера возможен, когда вы используете мастера IIS Certificate Request Wizard и запрашиваете то, что теперь называется сертификатом домена ‘Domain Certificate’. Это возможно только в том случае, если запрашивающая машина принадлежит тому же домену, что и Enterprise CA.
Для установки роли IIS Web server на сервере VPN выполните следующие шаги:
- Откройте Windows 2008 Server Manager.
- В левой панели консоли кликните на вкладке Роли.
Рисунок 1
- Жмем в меню Добавить роли с правой стороны правой панели.
- Жмем Далее на странице Прежде чем начать.
- Ставим галочку напротив строкиWeb Server (IIS) на странице Выбрать роли сервера. Жмем Далее.
Рисунок 2
- Можете прочесть информацию на странице Web Server (IIS), если пожелаете. Это довольно полезная общая информация об использовании IIS 7 в качестве вебсервера, но поскольку мы не собираемся использовать IIS вебсервер на VPN сервере, эта информация не совсем применима в нашей ситуации. Жмем Далее.
- На странице Выбрать службы ролей несколько опций уже выбраны. Однако если вы используете опции по умолчанию, вы не сможете воспользоваться мастером Certificate Request Wizard. По крайней мере, так было, когда я тестировал систему. Нет службы роли для мастера Certificate Request Wizard, поэтому я пытался ставить галочки напротив каждой опции Безопасность, и, кажется, сработало. Сделайте то же самое у себя и нажмите Далее.
Рисунок 3
- Просмотрите информацию на странице Подтвердить выбор установок и нажмите Установить.
- Нажмите Закрыть на странице Результаты установки.
Рисунок 4
Запрос сертификата машины (Machine Certificate) для VPN сервера с помощью мастера IIS Certificate Request Wizard
Следующий шаг – это запрос сертификата машины для VPN сервера. VPN серверу требуется сертификат машины для создания SSL VPN соединения с компьютером клиента SSL VPN. Общее название сертификата должно соответствовать имени, которое VPN клиент будет использовать для соединения с компьютером шлюза SSL VPN. Это означает, что вам нужно будет создать публичную DNS запись для имени на сертификате, который будет разрешать внешний IP адрес VPN сервера, или IP адрес NAT устройства перед VPN сервером, которое будет переадресовывать соединение на SSL VPN сервер.
Для запроса сертификата машины на сервер SSL VPN выполните следующие шаги:
- В Server Manager, разверните вкладку Роли в левой панели, а затем разверните вкладку Web Server (IIS). Нажмите на Internet Information Services (IIS) Manager.
Рисунок 5
- В консоли Internet Information Services (IIS) Manager, которая появится справа в левой панели, нажмите на имени сервера. В этом примере имя сервера будет W2008RC0-VPNGW. Нажмите на иконку Сертификаты сервера в правой панели консоли IIS.
Рисунок 6
- В правой панели консоли жмем на ссылку Создать сертификат домена.
Рисунок 7
- Введите информацию на странице Определенные свойства имени. Самым важным объектом здесь будет Общее имя. Это то имя, которое VPN клиенты будут использовать для соединения с VPN сервером. Вам также понадобится публичная DNS запись для этого имени с тем, чтобы распознавать внешний интерфейс VPN сервера, или публичный адрес NAT устройства перед VPN сервером. В этом примере мы используем общее имя sstp.msfirewall.org. Позже мы создадим записи HOSTS файла на компьютере VPN клиента, чтобы он мог распознавать это имя. Жмем Далее.
Рисунок 8
- На странице Интерактивный источник сертификатов жмем кнопку Выбрать. В диалоговом окне Выбрать источник сертификатов, жмем на имени Enterprise CA и нажимаем OK. Вводим дружественное имя в строке Friendly name. В этом примере мы использовали имя SSTP Cert, чтобы знать, что оно используется для шлюза SSTP VPN.
Рисунок 9
- Жмем Закончить на странице Интерактивный источник сертификатов.
Рисунок 10
- Мастер будет запущен, а затем исчезнет. После этого вы увидите, как появится сертификат в консоли IIS. Кликнем дважды на сертификате и увидим общее имя в секции Назначен для, и теперь у нас есть частный ключ, соответствующий сертификату. Жмем OK, чтобы закрыть диалоговое окно Сертификат.
Рисунок 11
Теперь, когда у нас есть сертификат, мы можем установить роль RRAS Server Role. Обратите внимание на то, что очень важно установить сертификат до того, как устанавливать роль RRAS Server Role. Если вы этого не сделаете, вы наживете себе большие головные боли, поскольку вам придется использовать довольно сложную рутину командных строк, чтобы связать сертификат с клиентом SSL VPN.
Установка роли RRAS Server Role на VPN сервере
Для установки роли RRAS Server Role нужно выполнить следующие шаги:
- В Server Manager, нажмите на вкладку Роли в левой панели консоли.
- В секции Общие сведения ролей нажмите на ссылку Добавить роли.
- Нажмите Далее на странице Прежде чем начать.
- На странице Выбрать роли сервера поставьте галочку напротив строки Политика сети и службы доступа. Нажмите Далее.
Рисунок 12
- Прочтите информацию на странице Политика сети и службы доступа. Большая ее часть касается Network Policy Server (который ранее назывался Internet Authentication Server [IAS] и по сути был RADIUS сервером) и NAP, ни один из элементов не применим в нашем случае. Нажимаем Далее.
- На странице Выбрать службы роли ставим галочку напротив строки Маршрутизация и службы удаленного доступа. В результате этого будут выбраны пункты Службы удаленного доступа и Маршрутизация. Жмем Далее.
Рисунок 13
- Жмем Установить в окне Подтвердить выбранные установки.
- Жмем Закрыть на странице Результаты установки.
Активация RRAS Server и его настройка в качестве VPN и NAT сервера
Теперь, когда роль RRAS установлена, нам нужно активировать сервисы RRAS, также как мы делали это в предыдущих версиях Windows. Нам нужно активировать функцию VPN сервера и сервисы NAT. С активацией компонента VPN сервера все понятно, но вы можете поинтересоваться, зачем нужно активировать NAT сервер. Причина активации сервера NAT кроется в том, что внешние клиенты могут получать доступ к серверу сертификации (Certificate Server), чтобы соединяться с CRL. Если клиент SSTP VPN не сможет загрузить CRL, SSTP VPN соединение работать не будет.
Для того, чтобы открыть доступ к CRL, мы настроим VPN сервер в качестве NAT сервера и опубликуем CRL, используя обратимый NAT. В сетевом окружении компаний у вас, скорее всего, будут брандмауэры, например ISA Firewall, перед сервером сертификации, поэтому вы сможете публиковать CRL с помощью брандмауэров. Однако в этом примере единственный брандмауэр, которым будем пользоваться, это брандмауэр Windows Firewall на сервере VPN, поэтому в этом примере нам нужно настроить VPN сервер в качестве NAT сервера.
Для активации сервисов RRAS выполните следующие шаги:
- В Server Manager разверните вкладку Роли в левой панели консоли. Разверните вкладку Политика сети и Службы доступа и кликните по вкладке Маршрутизация и Удаленный доступ. Правой клавишей кликните по вкладке Маршрутизация и Удаленный доступ и нажмите Настроить и активировать маршрутизацию и удаленный доступ.
Рисунок 14
- Нажмите Далее в окне Welcome to the Routing and Remote Access Server Setup Wizard.
- На странице Конфигурация выберите опцию Доступ к виртуальным частным сетям и NAT и нажмите Далее.
Рисунок 15
- На странице VPN соединение выберите NIC в секции Интерфейсы сети, которая представляет внешний интерфейс VPN сервера. Затем нажмите Далее.
Рисунок 16
- На странице Назначение IP адресов выберите опцию Автоматически. Мы можем выбрать эту опцию, потому что у нас установлен DHCP сервер на контроллере домена за VPN сервером. Если у вас нет DHCP сервера, тогда вам нужно будет выбрать опцию Из определенного списка адресов, а затем внести список адресов, которые VPN клиенты смогут использовать при подключении к сети через шлюз VPN. Жмем Далее.
Рисунок 17
- На странице Управление удаленным доступом нескольких серверов выбираем Нет, использовать маршрутизацию и удаленный доступ для аутентификации запросов соединения. Эту опцию мы используем, когда недоступны NPS или RADIUS серверы. Поскольку VPN сервер является членом домена, можно аутентифицировать пользователей, используя учетные записи домена. Если VPN сервер не входит в домен, тогда только локальные учетные записи VPN сервера можно использовать, если только вы не решите использовать NPS сервер. Я напишу статью об использовании NPS сервера в будущем. Жмем Далее.
Рисунок 18
- Прочтите общую информацию на странице Завершение работы мастера настройки маршрутизации и удаленного доступа и нажмите Закончить.
- Нажмите OK в диалоговом окне Маршрутизация и удаленный доступ, которое говорит вам о том, что распределение DHCP сообщений требует агента распределения DHCP.
- В левой панели консоли разверните вкладку Маршрутизация и удаленный доступ и затем нажмите на вкладке Порты. В средней панели вы увидите, что WAN Miniport соединения для SSTP теперь доступны.
Рисунок 19
Настройка NAT сервера для публикации CRL
Как я говорил ранее, клиент SSL VPN должен иметь возможность загружать CRL для подтверждения того, что сертификат сервера на сервере VPN не был поврежден или отозван. Для этого нужно настроить устройство перед сервером сертификации для направления HTTP запросов о расположении CRL на Сервер сертификации.
Как узнать, к какому URL нужно подключиться SSL VPN клиенту, чтобы загрузить CRL? Эта информация содержится в самом сертификате. Если вы снова перейдете на VPN сервер и дважды кликните на сертификате в IIS консоли, как делали прежде, вы сможете найти эту информацию.
Жмем на кнопку Детали на сертификате и листаем вниз до записи Точки распределения CRL, затем жмем на эту запись. В нижней панели показаны различные точки распределения, основанные на протоколе, используемом для получения доступа к этим точкам. В сертификате, показанном на рисунке ниже, видно, что нам нужно открыть доступ клиенту SSL VPN к CRL через URL:
http://win2008rc0-dc.msfirewall.org/CertEnroll/WIN2008RC0-DC.msfirewall.org.crl
Рисунок 20
Именно поэтому нужно создавать публичные записи DNS для этого имени, чтобы внешние VPN клиенты смогли относить это имя к IP адресу или устройству, которое будет выполнять обратимый NAT или обратимый proxy для получения доступа к вебсайту сервера сертификации. В этом примере нам нужно связать win2008rc0-dc.msfirewall.org с IP адресом на внешнем интерфейсе VPN сервера. Когда соединение достигает внешнего интерфейса VPN сервера, VPN сервер перенаправит NAT соединение на сервер сертификации.
Если вы используете расширенный брандмауэр, например ISA Firewall, вы можете сделать публикацию CRL сайтов более безопасной, открывая доступ только к CRL, а не ко всему сайту. Однако в этой статье мы ограничим себя возможностью простого NAT устройства, такого, которое обеспечивает RRAS NAT.
Следует отметить, что использование имени CRL сайта по умолчанию может быть менее безопасной опцией, поскольку оно раскрывает частное имя компьютера в Интернете. Вы можете создавать пользовательскую CDP (CRL Distribution Point), чтобы этого избежать, если считаете, что раскрытие частного имени вашей CA в публичной DNS записи создает угрозу безопасности.
Для настройки RRAS NAT для направления HTTP запросов на сервер сертификации выполните следующие шаги:
- В левой панели Server Manager разверните вкладку Маршрутизация и удаленный доступ, а затем разверните вкладку IPv4. Кликните по вкладке NAT.
- Во вкладке NAT кликните правой клавишей на внешнем интерфейсе в средней панели консоли. В данном примере имя внешнего интерфейса было Local Area Connection. Нажмите на Свойства.
Рисунок 21
- В диалоговом окне Свойства Local Area Connection поставьте галочку напротив Web Server (HTTP). Это вызовет диалоговое окно Служба редактирования. В текстовой строке Частный адрес введите IP адрес сервера сертификации во внутренней сети. Нажмите OK.
Рисунок 22
- Нажмите OK в диалоговом окне Свойства Local Area Connection.
Рисунок 23
Теперь, когда NAT сервер установлен и настроен, мы можем перенести наше внимание на настройку сервера CA и клиента SSTP VPN.
Настройка учетной записи пользователя на использование Dial-up соединений
Учетные записи пользователей требуют разрешений для доступа dial-up, прежде чем смогут подключиться к серверу Windows VPN, который входит в домен Active Directory. Самый лучший способ сделать это – это использовать сервер Network Policy Server (NPS), а также разрешение учетной записи пользователя по умолчанию, которое разрешает удаленный доступ на основе политики NPS. Однако в нашем случае мы не устанавливали сервер NPS, поэтому нам придется настраивать разрешение пользователю для доступа dial-in вручную.
Следующую статью я посвящу использованию NPS сервера и аутентификации EAP User Certificate для создания соединений с SSL VPN сервером.
Для того чтобы разрешить определенной учетной записи пользователя доступ dial-in для подключения к SSL VPN серверу, нужно выполнить следующие шаги. В этом примере мы будем активировать разрешение dial-in доступа для учетной записи администратора домена по умолчанию:
- На контроллере домена откройте консоль Active Directory пользователи и компьютеры из меню Инструменты администрирования.
- В левой панели консоли разверните имя домена и кликните по вкладке пользователи. Дважды кликните на учетной записи Администратор.
- Перейдите по вкладке Dial-in. Параметром по умолчанию будет Контроль доступа через NPS политику сети. Поскольку у нас нет NPS сервера в этом сценарии, мы изменим параметр на Разрешить доступ, как показано ниже на рисунке 1. Жмем OK.
Рисунок 1
Настройка IIS на сервере сертификации (Certificate Server) для разрешения HTTP соединений для CRL Directory
По каким-то причинам, когда мастер установки устанавливает Certificate Services (службы сертификации) веб сайт, он настраивает CRL директорию на запрос SSL соединения. Хотя с точки зрения безопасности это кажется вполне хорошей идеей, проблема заключается в том, что унифицированный идентификатор ресурса (URI) на сертификате не настроен под использование SSL. Полагаю, что вы сможете самостоятельно создать CDP запись для сертификата, чтобы он смог использовать SSL, но могу поспорить, что компания Microsoft нигде не упоминала об этой проблеме. Поскольку в этой статье мы используем стандартные параметры для CDP, нам необходимо отключить требование SSL на веб сайте CA для пути CRL директории.
Чтобы дезактивировать требование SSL для директории CRL выполните следующие шаги:
- В меню Инструменты администрирования откройте менеджера Internet Information Services (IIS) Manager.
- В левой панели консоли IIS разверните имя сервера, а затем разверните вкладку Сайты. Разверните вкладку Веб сайт по умолчанию и кликните на вкладке CertEnroll, как показано на рисунке 2.
Рисунок 2
- Если вы посмотрите на среднюю панель консоли, вы увидите, что CRL находится в этой виртуальной директории, как показано на рисунке ниже. Чтобы посмотреть содержимое этой виртуальной директории, вам нужно нажать кнопку Посмотреть содержимое в нижней части средней панели.
Рисунок 3
- Нажмите на кнопку Просмотр параметров внизу средней панели. Внизу средней панели дважды кликните на иконке Параметры SSL.
Рисунок 4
- В средней панели появится страница Параметры SSL. Уберите галочку в строке Требовать SSL. Нажмите Применить в правой панели консоли.
Рисунок 5
- Закройте консоль IIS после того, как увидите уведомление Изменения были успешно сохранены.
Рисунок 6
Настройка HOSTS файла для VPN клиента
Теперь мы можем уделить все внимание VPN клиенту. Первое что нам необходимо сделать с клиентом, это настроить HOSTS файл, чтобы мы смогли имитировать публичную DNS инфраструктуру. Есть два имени, которые нам необходимо внести в HOSTS файл (то же самое нужно сделать и для публичного DNS сервера, который вы будете использовать в производственных сетях). Первое имя – это имя VPN сервера, как определено общим/субъектным именем сертификата, который мы привязали к SSL VPN серверу. Второе имя, которое нам нужно ввести в HOSTS файл (и публичный DNS сервер), — это имя CDP URL, которое находится на сертификате. Мы рассматривали расположение информации CDP во второй части этой серии.
Два имени, которые необходимо ввести в HOSTS файл в этом примере будут:
192.168.1.73 sstp.msfirewall.org
192.168.1.73 win2008rc0-dc.msfirewall.org
Для настройки HOSTS файла для Vista SP1 VPN клиента выполните следующие процедуры:
- В меню Пуск введите c:windowssystem32driversetchosts в строку поиска и нажмите ENTER.
- В диалоговом окне Открыть с помощью выберите Блокнот.
- Введите записи в HOSTS файл в формате, как показано на рисунке ниже. Обязательно нажмите enter после последней строки, чтобы курсор находился под ней.
Рисунок 7
- Закройте файл и выберите опцию сохранить изменения.
Использование PPTP для подключения к VPN серверу
Мы постепенно приближаемся к созданию SSL VPN соединения! Следующим шагом будет создание VPN коннектора на Vista SP1 клиенте, который позволит нам создать начальное VPN соединение с VPN сервером. В нашем случае это нужно сделать, потому что компьютер клиента не является членом домена. Так как машина не является членом домена, сертификат CA не будет автоматически установлен в ее хранилище Trusted Root Certificate Authorities. Если бы машина входила в домен, автоматическая регистрация позаботилась бы за нас об этой проблеме, так как мы установили Enterprise CA.
Самый простой способ выполнить этот шаг заключается в создании PPTP подключения Vista SP1 VPN клиента к Windows Server 2008 VPN серверу. По умолчанию VPN сервер будет поддерживать PPTP соединения, и клиент сначала попробует PPTP, перед тем как пробовать L2TP/IPSec и SSTP. Для этого нам нужно создать VPN Коннектор или объект соединения.
Для создания коннектора на VPN клиенте выполните следующие шаги:
- На VPN клиенте кликните правой клавишей на иконке сети и нажмите Сеть и коммутационный центр (Sharing Center).
- В окне Сеть коммутационного центра нажмите на ссылке Создать соединение или сеть в левой части окна.
- На странице Выбрать опции подключения нажмите на записи Подключиться к рабочему месту, затем нажмите Далее.
Рисунок 8
- На странице Как вы хотите подключиться выберите опцию Использовать мое Интернет соединение (VPN).
Рисунок 9
- На странице Введите Интернет адрес для подключения введите имя SSL VPN сервера. Убедитесь в том, что это имя и общее имя на сертификате, используемом сервером SSL VPN, одинаковое. В этом примере имя было sstp.msfirewall.org. Введите Имя адресата. В этом примере мы будем использовать имя адресата SSL VPN. Нажмите Далее.
Рисунок 10
- На странице Введите имя пользователя и пароль введите Имя пользователя, Пароль и Домен. Нажмите Соединить.
Рисунок 11
- Нажмите Закрыть на странице Вы подключены.
Рисунок 12
- На странице Выберите расположение для «ЅSSL VPN» сети выберите опцию Работа.
Рисунок 13
- Нажмите Продолжить в подсказке UAC.
- Нажмите Закрыть на странице Успешно настроенные параметры сети.
Рисунок 14
- В окне Сеть и коммутационный центр, нажмите на ссылку Показать статус в разделе SSL VPN, как показано на рисунке ниже. В диалоговом окне Статус SSL VPN вы увидите, что тип соединения VPN — это PPTP. Нажмите Закрыть в диалоговом окне Статус SSL VPN.
Рисунок 15
- Откройте окно командной строки и отправьте команду ping на контроллер домена. В этом примере IP адрес контроллера домена будет 10.0.0.2. Если ваше VPN соединение успешное, вы получите ping ответ с контроллера домена.
Рисунок 16
Получение CA Certificate с Enterprise CA
Клиент SSL VPN должен доверять CA, который выпустил сертификат, используемый VPN сервером. Чтобы создать это доверие, нам нужно установить CA сертификат на CA, выпустивший сертификат для VPN сервера. Мы можем это сделать, подключившись к веб сайту регистрации на CA во внутренней сети и установив сертификат VPN клиента в его хранилище Trusted Root Certification Authorities.
Для получения сертификата с сайта регистрации выполните следующие шаги:
- На клиенте VPN, подключенном к VPN серверу через PPTP соединение, введите http://10.0.0.2/certsrv в строке адреса в обозревателе Internet Explorer и нажмите ENTER.
- Введите имя пользователя и пароль, используемый в мандатном диалоговом окне. В этом примере мы будем использовать имя пользователя и пароль учетной записи администратора домена по умолчанию.
- На странице Приветствие сайта регистрации перейдите по ссылке Загрузить сертификат CA, цепь сертификатов или CRL.
Рисунок 17
- В диалоговом окне, предупреждающем вас о том, что Веб сайт хочет открыть веб содержимое, используя эту программу на вашем компьютере, нажмите Разрешить. Затем нажмите Закрыть в диалоговом окне Вы заметили информационное окно, если оно появится.
Рисунок 18
- Обратите внимание на то, что информационное окно информирует вас о том, что веб сайт мог быть отображен некорректно, поскольку контроль элементов ActiveX заблокирован. Это не должно вызывать никаких проблем, так как мы будем загружать CA сертификат, и использовать консоль Certificates MMC для его установки. Нажмите на ссылку Загрузить CA сертификат.
Рисунок 19
- В диалоговом окне Предупреждение безопасности загрузки файла жмем кнопку Сохранить. Сохраняем сертификат на рабочий стол.
Рисунок 20
- Нажимаем Закрыть в диалоговом окне Загрузка завершена.
- Закрываем Internet Explorer.
Теперь нам нужно установить сертификат CA в хранилище Trusted Root Certification Authorities Certificate Store машины клиента VPN. Для этого нужно сделать следующее:
- Жмем Пуск, затем вводим mmc в строку поиска и нажимаем ENTER.
- Жмем Продолжить в диалоговом окне UAC.
- В окне Консоль1 жмем меню Файл, а затем жмем Добавить/Удалить оснастку.
- В диалоговом окне Добавить или Удалить оснастки выбираем Сертификаты в списке Доступные оснастки, затем нажимаем Добавить.
- На странице Оснастки сертификатов выбираем опцию Учетная запись компьютера и жмем Закончить.
- На странице Выбрать компьютер выбираем опцию Локальный компьютер и жмем Закончить.
- Жмем OK в диалоговом окне Добавить или удалить оснастки.
- В левой панели консоли разворачиваем вкладку Сертификаты (Локальный компьютер) и затем разворачиваем вкладку Trusted Root Certification Authorities. Жмем по вкладке Сертификаты. Правой клавишей нажимаем на вкладке Сертификаты, выбираем Все задания и жмем Импорт.
Рисунок 21
- Жмем Далее в окне Welcome to the Certificate Import Wizard.
- На странице Импортируемый файл жмем кнопку Обзор, чтобы найти сертификат, и затем жмем Далее.
Рисунок 22
- На странице Хранилище сертификатов смотрим, что опция Разместить все сертификаты в данном хранилище выбрана, и, что хранилище Trusted Root Certification Authorities есть в списке. Жмем Далее.
Рисунок 23
- Жмем Закончить на странице Завершение импорта сертификатов.
- Жмем OK в диалоговом окне, информирующем о том, что импорт прошел успешно.
- Теперь в консоли появится сертификат, как показано на рисунке ниже.
Рисунок 24
- Закрываем консоль MMC.
Настройка клиента на использование SSTP и подключение к VPN серверу через SSTP
И вот почти все готово! Теперь нам нужно отключить VPN соединение и настроить VPN клиента на использование SSTP для VPN протокола. В производственном окружении вам не придется использовать этот шаг для пользователей, так как вы будете использовать пакет Connection Manager Administration Kit для создания VPN объекта соединения для пользователя, который будет включать клиента, использующего SSTP, или вы будете настраивать только SSTP порты на VPN сервере.
Все зависит от конфигурации окружения, поскольку вам нужно распределить время так, чтобы пользователи смогли в течение некоторого времени использовать PPTP, пока вы устанавливаете сертификаты. Конечно, вы можете установить сертификаты CA не через сеть, то есть посредством загрузки с веб сайта или по электронной почте, и в этом случае вам не придется разрешать пользователям PPTP. Но тогда, если какие-то клиенты не поддерживают SSTP, вам потребуется разрешить PPTP или L2TP/IPSec, и вы не сможете отключить все не-SSTP порты. В таком случае вам придется полагаться на ручную настройку или на обновленный пакет CMAK.
Еще одним вариантом здесь может стать привязка SSTP клиента к определенному IP адресу на RRAS сервере. В этом случае вы сможете создать пользовательский пакет CMAK, который ссылается только на IP адрес на SSL VPN сервере, прослушивающем сеть на предмет входящих SSTP соединений. Другие адреса на сервере SSTP VPN будут прослушивать сеть на предмет PPTP и/или L2TP/IPSec соединений.
Выполните следующие шаги для того, чтобы отключить PPTP сеанс и настроить объект подключения VPN клиента на использование SSTP:
- На компьютере VPN клиента откройте окно Сеть и коммутационный центр, как делали ранее.
- В окне Сеть и коммутационный центр нажмите на ссылку Разъединить, которая находиться прямо под ссылкой Показать статус. Раздел SSL VPN исчезнет из окна Сеть и коммутационный центр.
- В окне Сеть и коммутационный центр нажмите на ссылку Управление сетевыми подключениями.
- Правой клавишей кликните по ссылке SSL VPN и выберите вкладку Свойства.
Рисунок 25
- В диалоговом окне Свойства SSL VPN перейдите по вкладке Сеть. В окне Тип VPN нажмите стрелку вниз и выберите опцию Secure Socket Tunneling Protocol (SSTP), затем нажмите OK.
Рисунок 26
- Дважды кликните по объекту подключения SSL VPN в окне Сетевые подключения.
- В диалоговом окне Подключить SSL VPN нажмите кнопку Соединить.
- Когда подключение выполнено, кликните правой клавишей на объекте подключения SSL VPN в окне Сетевые подключения и выберите опцию Статус.
Рисунок 27
- В диалоговом окне Статус SSL VPN вы увидите, что было создано соединение SSTP WAN Miniport.
Рисунок 28
- Если вы зайдете на VPN сервер и откроете Консоль маршрутизации и удаленного доступа, вы убедитесь в том, что SSTP соединение было создано.
Рисунок 29
Томас Шиндер (Thomas Shinder)
A few weeks ago I was asked how to configure SSTP on a Windows 2008 RRAS server. Most of the MCP documents say that a certificate needs installing, but fail to mention what needs to be done. So I’ve written up the notes I sent, hopefully it’ll help someone out.
The requirement for SSTP connectivity are pretty basic:
- HTTPs (tcp/443) forwarded to your VPN server;
- A certificate from a CA that both your clients and your server trust. It’s worth noting that most people wont be able to use self-signed certificates for SSTP as the client needs to perform a CRL check before connecting;
- A windows 2008 or later VPN server
Once you’ve decided on a hostname for your VPN server, which should take a minute or two on a good o2 line as it’s just a straightforward purchase, register it in DNS and head off to GoDaddy or somewhere and get yourself an SSL certificate. The CSR should be generated using the “Certificates” MMC Snap-In. The CN of the certificate should be the hostname you chose earlier, such as vpn.nwtraders.com
We now need to see what certificates are currently in use for SSTP, on the RRAS server run “netsh http show ssl” to see the bindings.
C:Windowssystem32>netsh http show ssl SSL Certificate bindings: ------------------------- IP:port : 0.0.0.0:443 Certificate Hash : efbaa640423127109869034676552a30fb8ca329 Application ID : {ba195980-cd49-458b-9e23-c84ee0adcd75} Certificate Store Name : MY Verify Client Certificate Revocation : Enabled Verify Revocation Using Cached Client Certificate Only : Disabled Usage Check : Enabled Revocation Freshness Time : 0 URL Retrieval Timeout : 0 Ctl Identifier : Ctl Store Name : DS Mapper Usage : Disabled Negotiate Client Certificate : Disabled IP:port : [::]:443 Certificate Hash : efbaa640423127109869034676552a30fb8ca329 Application ID : {ba195980-cd49-458b-9e23-c84ee0adcd75} Certificate Store Name : MY Verify Client Certificate Revocation : Enabled Verify Revocation Using Cached Client Certificate Only : Disabled Usage Check : Enabled Revocation Freshness Time : 0 URL Retrieval Timeout : 0 Ctl Identifier : Ctl Store Name : DS Mapper Usage : Disabled Negotiate Client Certificate : Disabled
The important thing to note here is the “IP:port” and the “Application ID”.
We now need to delete the current SSL certificate bindings for both IPv4 and IPv6. To do this, use the IP:Port information from the last command output.
C:Windowssystem32>netsh http delete ssl 0.0.0.0:443 SSL Certificate successfully deleted C:Windowssystem32>netsh http delete ssl [::]:443 SSL Certificate successfully deleted
Install your issued SSL certificate into the Computer certificate store and jot down the thumpbrint from the certificate details tab. Using the thumbprint, we now install the certificate using netsh and the application ID we started with. Make sure to use the same bindings used earlier.
C:>netsh http add sslcert ipport=0.0.0.0:443 certhash=740021b8b9a03b72e515c700ff17cb55b51cc239 appid={ba195980-cd49-458b-9e23-c84ee0adcd75} certstorename=MY SSL Certificate successfully added C:>netsh http add sslcert ipport=[::]:443 certhash=740021b8b9a03b72e515c700ff17cb55b51cc239 appid={ba195980-cd49-458b-9e23-c84ee0adcd75} certstorename=MY SSL Certificate successfully added
Setup SSTP on the client and you should be good to go.
Comments
-
«Как на бесплатном блог-сервисе Blogger.com прикрепить собственное доменное имя к своему блогу». Бесплатный сервис блогов Blogger.com дов…
-
Функция ПрочитатьФайлЭксель(ПутьКФайлу) Экспорт //Создание объекта для установки связи с источником данных Connection = Н…
-
PDFCreator – отличная бесплатная программа для конвертирования документов в формат PDF. Принцип работы программы простой – берете докум…
-
Для доменного CA 1. Для разрешения выдачи сертификатов с полем SAN необходимо запустить на компьютере, содержащем службу Certification …
-
Как узнать номер своей Sim-карты на iPadе? Огромная проблема iPad’а в том, что использовать сим-карту для осуществления обычных звонков, как…
-
Secure Socket Tunneling Protocol (SSTP) — это транспорт использующий PPP туннель поверх SSL 3.0 канала. Использование SSL на TCP-порт 443…
-
Все уже в курсе, что сертификаты с подписью SHA1 должны быть заменены, т.к. алгоритм SHA1 более не считается надёжным. Это описано в но…
-
Клиенты Outlook не могут подключиться и постоянно получают запрос проверки подлинности В этом разделе описана проблема подключения клие…
-
В редакторе реестра открываем раздел: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass{EEC5AD98-8080-425F-922A-DABF3DE3F69A} …
-
Uninterruptible Power Source (в русскоязычной литературе – ИБП, Источник Бесперебойного Питания) – это устройство, включаемое между …
How To Setup A SSTP VPN in Windows 2008
1:00 AM
El DiPablo
I was given the task at my company to come up with a reliable, and most importantly secure VPN solution that didn’t require the use of third party agents. Currently they have a couple of VPN solutions in place. One is the somewhat secure PPTP VPN, and the more secure Cisco VPN with IPSEC. We needed something with the same ease of use as PPTP, but with the reliable security of IPSEC.
Enter SSTP, or Secure Socket Tunneling Protocol. It is one of the “new Hotness” VPN technologies from Microsoft. Actually, the newest hotness is DirectAccess, but unless you are willing to start setting up for IPv6, you might want to go with the next best thing…SSTP. SSTP has all the ease of setup that PPTP does, but with the warm blanket of security that SSL provides.
According to Wikipedia, SSTP is:
…a form of VPN tunnel that provides a mechanism to transport PPP or L2TP traffic through an SSL 3.0 channel. SSL provides transport-level security with key-negotiation, encryption and traffic integrity checking. The use of SSL over TCP port 443 allows SSTP to pass through virtually all firewalls and proxy servers.
What you will need:
- SSL Certificate (Free SSL Cert from StartSSL FTW!)
- Windows 2008 Server
- IIS Services (For SSL Certificate Request/Install)
- Firewall NAT rule opening up port 443 to your VPN server
- Client running Windows Vista SP1 or later
Now you have what you need all set, here is what you need to do:
- In Server manager, go to Roles Summary, and click on Add Roles
- Click on Web Server (IIS) and click next twice
- On the Roles Services page, select all of the Security options and click next, then install, then finish
- Follow these instructions for generating a certificate request: (SSL CSR)
- Once you have your valid cert from a trusted CA, follow their instructions for installing their certificate in IIS. Here is a link to GoDaddy’s instructions: (GoDaddy SSL Install for IIS7)
- In Server manager, go to Roles Summary, and click on Add Roles
- Click on Network Policy and Access Services then click next twice
- Select Routing and Remote Access services then click next, then click install, then click finish.
- Open Routing and Remote Access (Administrator tools> Routing and Remote Access)
- Right click on your computer name and select Configure and Enable Routing and remote Access
- Click next, Select Custom Configuration (You have to do this if you only have one NIC) and click next
- Select all options and click next
- Click finish
- Expand IPv4, then right click on DHCP Relay agent. Insert the IP Address of your DHCP server.
- Right click on your server name, and click properties
- select the option for Local Area Network Routing Only
- Open up TCP 443 on your firewall and create a NAT rule to your server (Use Google for your particular firewall).
NOTE: If you don’t have a DHCP server on your network you can route requests to, RRAS can assign addresses for you as well. To do that just do the following:
- Right click on your server name and select properties
- Click on the IPv4 tab
- Check the radio button that says static address pool
- Enter an unused IP address range for your network.
- Click OK, and Apply
That’s about it people! Now when you want to remote back in on your Windows Vista or better yet, Windows 7 laptop, you just create a new VPN connection like you use to for PPTP, except this time you select SSTP as the protocol!
Now I wrote most of this from memory, so if you get hung up on a step, hit me up in my comments so I can better explain it… or update the post. Good luck, and happy remoting!
Статья давно не обновлялась, поэтому информация могла устареть.
VPN (Virtual Private Network — виртуальная частная сеть) — технология, позволяющая обеспечить одно или несколько сетевых соединений поверх другой сети. В этой статье я расскажу вам, как настроить Windows 2008 Server R2 в качестве сервера VPN.
1. Для начала необходимо установить роль сервера «Службы политики сети и доступа» Для этого открываем диспетчер сервера и нажимаем на ссылку «Добавить роль»:
Выбираем роль «Службы политики сети и доступа» и нажимаем далее:
Выбираем «Службы маршрутизации и удаленного доступа» и нажимаем далее.
Все данные собраны, нажимаем кнопку «Установить».
Роль сервера была успешно установлена, нажимаем кнопку «Закрыть».
2. После установки роли необходимо настроить ее. Переходим в диспетчер сервера, раскрываем ветку «Роли», выбираем роль «Службы политики сети и доступа», разворачиваем, кликаем правой кнопкой по «Маршрутизация и удаленный доступ» и выбираем «Настроить и включить маршрутизацию и удаленный доступ», выставляем все параметры согласно скриншотам.
После запуска службы считаем настройку роли законченной. Теперь необходимо открыть порты, разрешить пользователям дозвон до сервера и настроить выдачу ip-адресов клиентам.
3. Для нормального функционирования vpn-сервера необходимо открыть следующие порты:
Для PPTP: 1723 (TCP); Для L2TP: 1701 (TCP) и 500 (UDP); Для SSTP: 443 (TCP).
4. Следующим шагом будет настройка разрешений для пользователя. Переходим в «Диспетчер сервера — Конфигурация- Локальные пользователи и группы — Пользователи»:
Выбираем нужного нам пользователя и переходим в его свойства:
Переходим на вкладку «Входящие звонки» и в «Права доступа к сети» ставим переключатель в положение «Разрешить доступ».
5. Следующим шагом будет настройка выдачи адресов, этот шаг опционален, его можно не выполнять. Открываем «Диспетчер сервера — Роли — Службы политики сети и доступа — Маршрутизация и удаленный доступ — Свойства»:
Переходим на вкладку «IPv4», включаем пересылку IPv4, устанавливаем переключатель в «Статический пул адресов» и нажимаем кнопку «Добавить»:
Задаем диапазон адресов и нажимаем «ОК»:
На этом шаге мы полностью закончили конфигурирование Windows 2008 Server R2 в качестве VPN сервера.
Этот материал был полезен?
In this two part series I will explain how to install an SSTP VPN server and how to deploy the VPN connection to Windows clients.
Contents
- Installing the required roles
- Generating & installing the SSL certificate
- Setting up the VPN
- Connecting a client
- Author
- Recent Posts
Geoff Kendal is a Windows/Linux systems administrator, scripter and problem solver, with over 12 years experience, based in Leeds, UK.
I’m sure most network administrators will know how useful a VPN can be, although we have probably all encountered issues with firewalls not always letting the required traffic through which can prevent them from working. For example for PPTP VPN’s require your router to handle GRE protocol traffic, similarly L2TP requires ESP protocol traffic. The whole point of VPNs is to allow access to your network form anywhere, which is why SSTP VPNs are so great.
SSTP (Secure Socket Tunnelling Protocol) transports your VPN traffic by encapsulating the traffic via an SSL link, all over the standard HTTPS port (TCP 443), which is rarely blocked (most web browsing wouldn’t work without it!). So not only does SSTP get through 99% of firewalls, but it also ensures that your VPN traffic is encrypted.
SSTP is supported on Windows Vista SP1 and later versions of Windows. If you’re also a Mac shop, it isn’t integrated into the OS yet, but there are open source SSTP clients that may help you.
If you’re running Windows 2008/2008R2/2012, you’ve already got everything you need to get started, as it is powered by the Routing and Remote Access Services in Windows server. I’ll be going through setting it up on Windows Server 2012, although the steps on 2008 are essentially the same.
Installing the required roles
Start the ‘Add roles & features’ wizard from server manager, and add the ‘Remote Access’ to the server of your choice. You’ll be prompted to add some other requested roles/features, such as IIS – you will need to add these too.
Adding the IIS & RAS roles
As part of the wizard, we’ll be asked which role services we wish to install, for this go with the default ‘Direct Access & RAS’. Continue through the wizard, and allow the server to restart if required.
Generating & installing the SSL certificate
Once the server has restarted, we will want to obtain a SSL certificate for use by the VPN. For my internal domain, I use a .local extension, so will be generating a certificate signing request (CSR) for my external domain name, then sending it to a certification authority (StartSSL.com in this instance, as they offer free SSL certificates.)
From Server Manager, select ‘Internet Information Services (IIS) manager’ from the tools menu. Once the IIS console has started select the server name in the tree on the left. Once selected, click the ‘Server certificates’ icon in the main area, and select the ‘Create new certificate request’ option from the actions pane on the right.
When creating the CSR, it is critical that the common name is set to the hostname that clients will use to connect to the VPN. For instance, your server may be internally called RAS02.4sysops.local – this obviously won’t resolve externally, so we point vpn.4sysops.com at the server for external clients to use. Further to this, you may need to setup port-forwarding and firewall rules, so that traffic connecting to this external address on port 443 gets directed to your VPN server.
Creating the certificate signing request
In this example we must enter vpn.4sysops.com as the common name. On the next screen in the CSR wizard, ensure that the bit-length is set to 2048 if you are using StartSSL – they won’t accept 1024 bit CSRs.
Finally save the CSR to a file, then open the file in notepad and copy all of the contents to your clipboard.
We will now need to get a certification authority to sign a certificate for us. Provide your certification authority of choice the CSR we just generated via the wizard. Once they have verified your details, they should provide you with a certificate file that we can load into IIS to complete the SSL steps.
Once you have the certificate file, select ‘complete certificate request’ from the IIS actions pane on the right, and browse to the certificate file. You should now see the certificate listed in IIS.
Setting up the VPN
We now need to configure the RAS service. Select ‘Routing and Remote Access’ from the tools menu of server manager. Once the MMC has loaded, right click the server name on the left, and select the configure option. From the wizard, choose the ‘custom’ option at the end of the list. On the following page, tick the VPN checkbox. The wizard will complete, and start the service.
The RRAS configuration wizard
All being well, clients should now be able to connect to the VPN via SSTP, as long as they can make a HTTPS connection to the server name you specified when creating the certificate. You can double check that things are OK by testing with a web browser (i.e. https://vpn.4sysops.com) – You’ll probably just see a 404 error, but as long as there are no certificate errors and you can see the padlock icon, then all is well.
The final stage before we make the connection is to make sure that any users requiring access have dial-in/VPN rights. Find your users in ‘Active Directory Users & Computers’, under the dial-in tab select allow (We’re not using NPS in this basic setup, so that option won’t work).
Connecting a client
From a client system, create a new VPN connection (Via the Network & Sharing Center ). When creating the connection, ensure that the internet address is the same one as used in the certificate. Once the connection has been created, click the ‘Change adapter settings’ link on the left side of the Network and Sharing Center, and edit the properties of the new VPN connection. On the security tab, change the type to SSTP.
The VPN connection properties
Once this change has been made, we should be able to connect to our SSTP VPN successfully from practically anywhere!
Subscribe to 4sysops newsletter!
In my next article, we’ll look at how we can deploy our SSTP VPN connection to all of our client systems.
Хотя в настоящее время для настройки VPN туннелей применяются аппаратные или специализированные программные средства, тем не менее ко мне часто обращаются с вопросами по настройке VPN средствами
RRAS, что и привело меня к идее написать статью по реализации данного решения с помощью протоколов L2TP, SSTP и IKEv2.
1.Настройка
L2TP:
Для работы решения необходимо наличие актуальных сертификатов для удостоверения подлинности сервера и клиента удаленного доступа.
На стороне
VPN сервера или, если используется, сервера
RADIUS с помощью мастера создаем политику подключения. Для аутентификации в поле
EAP добавим
EAP—MSCHAP v2 и
Smart Card
or other certificate.
Переходим к настройке клиента. Создаем
VPN соединение, после чего заходим в его свойства. На вкладке Security
в поле Type of VPN выберем Layer 2 Tunneling Protocol with IPSec.
В поле Data encryption: Maximum strength encryption (disconnect if server decline)
и укажем тип аутентификации в поле Authentication,
в списке Use Extensible Authentication Protocol выберем Microsoft Secured password (EAP-MSCHAP v2).
2.Настройка SSTP:
Здесь также необходимо наличие актуального сертификата для удостоверения подлинности сервера. В консоли
Routing and
Remote
Access Service
в контекстном меню узла с именем сервера откройте вкладку Security.
В пространстве SSL
Certificate
Binding, в поле Certificate
выберите из выпадающего списка сертификат для удостоверения сервера
VPN.
На стороне клиента необходимо обеспечить возможность проверки сертификата относительно списка отозванных сертификатов, который обычно публикуется на веб-сервере. Для тестовой среды можно отключить
данное требование в реестре клиента, через создание и включение параметра
NoCertRevocationCheck. Для этого можно воспользоваться скриптом, написав в текстовом документе нижеследующие строки:
Set k = WScript.CreateObject(«WScript.Shell»)
k.RegWrite «HKLMSystemCurrentControlSetServicesSstpsvcparametersNoCertRevocationCheck», 1, «REG_DWORD»
Сохранить и поменять расширение файла на .vbs
Далее, изменяем свойства
VPN подключения клиента. Здесь, вместо адреса сервера указываем его имя, ибо необходимо, чтобы имя сервера, указанное в выданном ему сертификате совпадало с именем указанном в свойствах клиентского подключения.
На вкладке Security
в поле Type of VPN выберем Layer 2 Tunneling Protocol with IPSec.
В поле Data encryption: Maximum strength encryption (disconnect if server decline)
и укажем тип аутентификации в поле Authentication,
в списке Use Extensible Authentication Protocol выберем Microsoft Secured password (EAP-MSCHAP v2).
3.Настройка
IKEv2:
Сводится к настройке подключения на клиенте. Выбираем в выпадающем списке тип подключения
IKEv2. В поле Data
encryption выберем
Maximum strength
encryption (disconnect
if server
decline) и укажем в поле Authentication тип аутентификации соответствующий политике удаленного доступа, в списке
Use Extensible
Authentication Protocol выберем
Microsoft Secured
password (EAP—MSCHAP
v2).
Теоретические аспекты рассмотренных в этой статье технологий достаточно хорошо описаны и с ними можно ознакомиться в соответствующей документации. Здесь же я ставил задачу рассмотреть практическую
реализацию, в помощь тем, кому актуально.