Настройка Windows Server 2008 в качестве SSL VPN-сервера с удаленным доступом (часть 2)

Опубликовано: 10 Апреля, 2023

Если вы пропустили первую часть этой серии статей, ознакомьтесь с разделом Настройка Windows Server 2008 в качестве SSL VPN-сервера с удаленным доступом (часть 1)

подпишитесь на информационный бюллетень WindowSecurity.com, посвященный обновлению статей в режиме реального времени

В первой части этой серии статей о том, как настроить Windows Server 2008 в качестве сервера SSL VPN, я немного рассказал об истории серверов Microsoft VPN и протоколов VPN. Мы закончили эту статью описанием примера сети, который мы будем использовать в этой и последующих статьях о настройке шлюза VPN для поддержки соединений SSTP от клиентов Vista SP1.

Прежде чем мы начнем, я должен сказать, что знаю, что на веб-сайте www.microsoft.com есть пошаговое руководство по настройке соединений SSTP с Windows Server 2008. Проблема с этой статьей в том, что я чувствовал, что она не отражает реальную среду, которая использует корпоративный центр сертификации для присвоения сертификатов. Из-за этого, а также из-за некоторых проблем, не упомянутых в пошаговом руководстве Microsoft, я решил написать эту статью. Я думаю, вы узнаете несколько новых вещей, когда будете следовать за мной.

Я не собираюсь проходить все этапы с нуля. Я предполагаю, что вы установили контроллер домена и включили роли DHCP, DNS и служб сертификации на этом сервере. Тип сервера сертификатов должен быть Enterprise, чтобы в вашей сети размещался ЦС предприятия. VPN-сервер должен быть присоединен к домену, прежде чем вы начнете выполнять следующие шаги. Перед началом работы на клиенте Vista должен быть установлен пакет обновления 1 (SP1).

Нам нужно будет выполнить следующие процедуры, чтобы заставить решение работать:

  • Установите IIS на VPN-сервер
  • Запросите сертификат компьютера для VPN-сервера с помощью мастера запроса сертификата IIS.
  • Установите роль сервера RRAS на VPN-сервере.
  • Включите сервер RRAS и настройте его как сервер VPN и NAT.
  • Настройте сервер NAT для публикации списка отзыва сертификатов.
  • Настройте учетную запись пользователя, чтобы разрешить коммутируемые подключения
  • Настройте IIS на сервере сертификатов, чтобы разрешить HTTP-соединения для каталога CRL.
  • Настройте файл HOSTS на VPN-клиенте.
  • Используйте PPTP для подключения к VPN-серверу
  • Получите сертификат ЦС от ЦС предприятия
  • Настройте клиент для использования SSTP и подключитесь к VPN-серверу с помощью SSTP.

Установите IIS на VPN-сервере

Это может показаться странным способом начать работу, поскольку я обычно советую никогда не размещать веб-сервер на устройстве сетевой безопасности. Хорошая новость заключается в том, что нам не нужно держать веб-сервер на сервере VPN, нам просто нужно использовать его некоторое время. Причина этого в том, что веб-сайт регистрации, включенный в сервер сертификатов Windows Server 2008, больше не очень полезен для запроса компьютерных сертификатов. На самом деле, это вообще бесполезно. Что интересно в этом, так это то, что вы все еще можете попытаться получить сертификат компьютера с помощью веб-сайта регистрации, и он будет выглядеть так, как будто он был установлен, но на самом деле сертификат не установлен.

Чтобы решить эту проблему, мы воспользуемся тем, что используем ЦС предприятия. При использовании Enterprise CA вы можете сделать запрос на онлайн-сервер сертификатов. Онлайн-запрос сертификата компьютера разрешен, когда вы используете мастер запроса сертификата IIS и запрашиваете то, что теперь называется «сертификат домена». Это работает только в том случае, если машина, запрашивающая сертификат, принадлежит к тому же домену, что и ЦС предприятия.

Выполните следующие шаги на VPN-сервере, чтобы установить роль веб-сервера IIS:

  1. Откройте диспетчер сервера Windows 2008.
  2. В левой панели консоли щелкните узел Роли.

Изображение 24620
фигура 1

  1. Нажмите ссылку «Добавить роли» в правой части правой панели.
  2. Нажмите «Далее» на странице «Перед началом работы».
  3. Установите флажок Веб-сервер (IIS) на странице Выбор ролей сервера. Нажмите «Далее».

Изображение 24621
фигура 2

  1. Прочтите информацию на странице веб-сервера (IIS), если хотите. Это хорошая общая информация об использовании IIS 7 в качестве веб-сервера, но, поскольку мы не собираемся использовать веб-сервер IIS на сервере VPN, эта информация на самом деле не применима к нашему сценарию. Нажмите «Далее».
  2. На странице «Выбор служб ролей» уже выбран ряд параметров. Однако, если вы используете параметры по умолчанию, не похоже, что вы получите возможность использовать мастер запроса сертификата. Так было, когда я тестировал. Для мастера запроса сертификата нет службы ролей, поэтому я попытался поставить галочку в каждом из параметров безопасности, и это, похоже, сработало. Сделайте то же самое на своем и нажмите «Далее».

Изображение 24622
Рисунок 3

  1. Просмотрите информацию на странице «Подтверждение выбора установки» и нажмите «Установить».
  2. Нажмите «Закрыть» на странице «Результаты установки».

Изображение 24623
Рисунок 4

Запрос сертификата компьютера для VPN-сервера с помощью мастера запроса сертификата IIS

Следующим шагом является запрос сертификата машины для VPN-сервера. Серверу VPN требуется сертификат компьютера для создания соединения SSL VPN с клиентским компьютером SSL VPN. Общее имя в сертификате должно совпадать с именем, которое VPN-клиент будет использовать для подключения к компьютеру шлюза SSL VPN. Это означает, что вам нужно будет создать общедоступную запись DNS для имени в сертификате, чтобы оно разрешалось во внешний IP-адрес на сервере VPN или IP-адрес устройства NAT перед сервером VPN, который будет перенаправлять соединение. к серверу SSL VPN.

Выполните следующие шаги, чтобы запросить и установить сертификат компьютера на сервере SSL VPN:

  1. В диспетчере серверов разверните узел Роли на левой панели, а затем разверните узел Веб-сервер (IIS). Щелкните Диспетчер информационных служб Интернета (IIS).

Изображение 24624
Рисунок 5

  1. В консоли диспетчера служб IIS (IIS), которая отображается справа от левой панели, щелкните имя сервера. В этом примере имя сервера — W2008RC0-VPNGW. Щелкните значок «Сертификаты сервера» на правой панели консоли IIS.

Изображение 24625
Рисунок 6

  1. На правой панели консоли щелкните ссылку Создать сертификат домена.

Изображение 24626
Рисунок 7

  1. Заполните информацию на странице Свойства отличительного имени. Наиболее важной записью на этой странице является запись Common Name. Это имя будет использоваться VPN-клиентами для подключения к VPN-серверу. Вам понадобится общедоступная запись DNS для этого имени, чтобы оно разрешалось либо во внешний интерфейс VPN-сервера, либо в общедоступный адрес устройства NAT перед VPN-сервером. В этом примере мы будем использовать общее имя sstp.msfirewall.org. Позже мы создадим записи файла HOSTS на клиентском компьютере VPN, чтобы он мог разрешить это имя. Нажмите «Далее».

Изображение 24627
Рисунок 8

  1. На странице Online Certification Authority нажмите кнопку Select. В диалоговом окне «Выбор центра сертификации» щелкните имя центра сертификации предприятия и нажмите «ОК». Введите понятное имя для сертификата в текстовом поле Понятное имя. В этом примере мы будем использовать имя SSTP Cert, чтобы знать, что оно используется для шлюза SSTP VPN.

Изображение 24628
Рисунок 9

  1. Нажмите «Готово» на странице «Сетевой центр сертификации».

Изображение 24629
Рисунок 10

  1. Мастер запустится, а затем исчезнет. После этого вы увидите, что сертификат появится в консоли IIS. Дважды щелкните сертификат, и вы увидите общее имя в разделе «Кому выдано», а также то, что у нас есть закрытый ключ, соответствующий сертификату. Нажмите OK, чтобы закрыть диалоговое окно Сертификат.

Изображение 24630
Рисунок 11

Теперь, когда у нас есть сертификат, мы можем установить роль сервера RRAS. Обратите внимание, что крайне важно сначала установить сертификат, прежде чем устанавливать роль сервера RRAS. Если вы этого не сделаете, вы в конечном итоге окажетесь в мире боли, потому что вам придется использовать довольно сложную процедуру командной строки для привязки сертификата к слушателю SSL VPN.

Установите роль сервера RRAS на VPN-сервере.

Чтобы установить роль сервера RRAS, выполните следующие действия:

  1. В Диспетчере серверов щелкните узел Роли на левой панели консоли.
  2. В разделе «Сводка ролей» нажмите ссылку «Добавить роли».
  3. Нажмите «Далее» на странице «Перед началом работы».
  4. На странице «Выбор ролей сервера» установите флажок «Сетевая политика и службы доступа». Нажмите «Далее».

Изображение 24631
Рисунок 12

  1. Ознакомьтесь с информацией на странице «Сетевая политика и службы доступа». Большая часть этого касается нового сервера политики сети (который раньше назывался сервером аутентификации в Интернете [IAS], который был сервером RADIUS) и NAP, ни один из которых не применим к нашему текущему сценарию. Нажмите «Далее».
  2. На странице «Выбор служб ролей» установите флажок «Службы маршрутизации и удаленного доступа». Это установит галочки в полях Служба удаленного доступа и Маршрутизация. Нажмите «Далее».

Изображение 24632
Рисунок 13

  1. Нажмите «Установить» на странице «Подтверждение выбора установки».
  2. Нажмите «Закрыть» на странице «Результаты установки».

Включите сервер RRAS и настройте его как сервер VPN и NAT.

Теперь, когда роль сервера RRAS установлена, нам нужно включить службу RRAS, точно так же, как мы делали это в предыдущих версиях Windows. Нам нужно включить функцию VPN-сервера и службу NAT. Хотя понятно, почему нам нужно включить компонент VPN-сервера, вы можете задаться вопросом, почему нам нужно включить сервер NAT. Причина включения сервера NAT заключается в том, что внешние клиенты могут получить доступ к серверу сертификатов для подключения к CRL. Если клиент SSTP VPN не может загрузить CRL, соединение SSTP VPN завершится ошибкой.

Чтобы разрешить доступ к CRL, мы настроим сервер VPN как сервер NAT и опубликуем CRL, используя обратный NAT. В производственной среде вы, скорее всего, будете иметь брандмауэр, такой как брандмауэр ISA, перед сервером сертификатов, чтобы вы могли публиковать CRL с помощью брандмауэра. Однако в этом примере единственным брандмауэром, который мы будем использовать, является брандмауэр Windows на сервере VPN, поэтому в этом примере нам нужно будет настроить сервер VPN как сервер NAT.

Выполните следующие действия, чтобы включить службу RRAS:

  1. В Диспетчере серверов разверните узел Роли в левой панели консоли. Разверните узел «Сетевая политика и службы доступа» и щелкните узел «Маршрутизация и удаленный доступ». Щелкните правой кнопкой мыши узел «Маршрутизация и удаленный доступ» и выберите «Настроить и включить маршрутизацию и удаленный доступ».

Изображение 24633
Рисунок 14

  1. Нажмите «Далее» на странице «Добро пожаловать на страницу мастера настройки сервера маршрутизации и удаленного доступа».
  2. На странице «Конфигурация» выберите «Доступ к виртуальной частной сети (VPN) и NAT» и нажмите «Далее».

Изображение 24634
Рисунок 15

  1. На странице VPN-подключения выберите сетевой адаптер в разделе «Сетевые интерфейсы», который представляет собой внешний интерфейс VPN-сервера. Затем нажмите «Далее».

Изображение 24635
Рисунок 16

  1. На странице «Назначение IP-адреса» выберите параметр « Автоматически ». Мы можем выбрать этот вариант, потому что у нас есть DHCP-сервер, установленный на контроллере домена за VPN-сервером. Если у вас не было DHCP-сервера, вам нужно было выбрать вариант «Из указанного диапазона адресов», а затем предоставить список адресов, которые VPN-клиенты могли использовать при подключении к сети через VPN-шлюз. Нажмите «Далее».

Изображение 24636
Рисунок 17

  1. На странице Управление несколькими серверами удаленного доступа выберите Нет, использовать маршрутизацию и удаленный доступ для проверки подлинности запросов на подключение. Это вариант, который мы используем, когда нет доступных серверов NPS или RADIUS. Поскольку VPN-сервер является членом домена, вы можете аутентифицировать пользователей, используя учетные записи домена. Если бы VPN-сервер не был членом домена, то можно было бы использовать только локальные учетные записи на сервере VPN, если только вы не решите использовать сервер NPS. В будущем я напишу статью о том, как использовать сервер NPS. Нажмите «Далее».

Изображение 24637
Рисунок 18

  1. Прочтите сводную информацию на странице «Завершение работы мастера настройки сервера маршрутизации и удаленного доступа» и нажмите «Готово».
  2. Нажмите «ОК» в диалоговом окне «Маршрутизация и удаленный доступ», информируя вас о том, что для ретрансляции сообщений DHCP требуется агент ретрансляции DHCP.
  3. В левой панели консоли разверните узел «Маршрутизация и удаленный доступ», а затем щелкните узел «Порты». На средней панели вы увидите, что теперь доступны подключения WAN Miniport для SSTP.

Изображение 24638
Рисунок 19

Настройте сервер NAT для публикации списка отзыва сертификатов.

Как я упоминал ранее, клиент SSL VPN должен иметь возможность загрузить CRL, чтобы подтвердить, что сертификат сервера на сервере VPN не был отозван. Для этого вам необходимо настроить устройство перед сервером сертификатов для пересылки HTTP-запросов о расположении CRL на сервер сертификатов.

Как узнать, к какому URL-адресу должен подключиться клиент SSL VPN, чтобы загрузить CRL? Эта информация содержится в самом сертификате. Если вы снова зайдете на VPN-сервер и дважды щелкните сертификат в консоли IIS, как делали ранее, вы сможете найти эту информацию.

Перейдите на вкладку «Подробности» сертификата, прокрутите вниз до записи «Точки распространения CRL» и щелкните эту запись. В нижней панели вы увидите различные точки распространения в зависимости от протокола, используемого для доступа к этим точкам. В сертификате, показанном на рисунке ниже, вы можете видеть, что нам нужно разрешить клиенту SSL VPN доступ к CRL через URL-адрес:

Изображение 24639
Рисунок 20

По этой причине вам необходимо создать общедоступную запись DNS для этого имени, чтобы внешние VPN-клиенты могли преобразовать это имя в IP-адрес на устройстве, которое будет использовать обратный NAT или обратный прокси-сервер, чтобы разрешить доступ к веб-сайту сервера сертификатов. В этом примере нам нужно, чтобы win2008rc0-dc.msfirewall.org разрешал IP-адрес на внешнем интерфейсе VPN-сервера. Когда соединение достигает внешнего интерфейса VPN-сервера, VPN-сервер реверсирует NAT-соединение с сервером сертификатов.

Если вы используете расширенный брандмауэр, такой как брандмауэр ISA, вы можете сделать публикацию сайта CRL более безопасной, разрешив доступ только к CRL, а не ко всему сайту. Однако в этой статье мы ограничимся возможностями простого устройства NAT, такими как то, что предоставляет RRAS NAT.

Здесь я должен отметить, что использование имени сайта CRL по умолчанию может быть не более безопасным вариантом, поскольку оно открывает доступ к имени частного компьютера в Интернете. Вы можете создать пользовательскую CDP (точку распространения CRL), чтобы предотвратить это, если вы считаете, что раскрытие частного имени вашего ЦС в общедоступном DNS является проблемой безопасности. Некоторую информацию о том, как изменить эти значения, можно найти в разделе Как изменить параметры политики для центра сертификации (ЦС) в Windows 2000.

Выполните следующие шаги, чтобы настроить RRAS NAT для пересылки HTTP-запросов на сервер сертификатов:

  1. В левой панели диспетчера серверов разверните узел «Маршрутизация и удаленный доступ», а затем разверните узел IPv4. Нажмите на узел NAT.
  2. В узле NAT щелкните правой кнопкой мыши внешний интерфейс в средней панели консоли. В этом примере имя внешнего интерфейса — Local Area Connection. Щелкните Свойства.

Изображение 24640
Рисунок 21

  1. В диалоговом окне «Свойства подключения по локальной сети» установите флажок «Веб-сервер (HTTP)». Это вызывает диалоговое окно «Редактировать службу». В текстовом поле «Частный адрес» введите IP-адрес сервера сертификатов во внутренней сети. Нажмите ОК.

Изображение 24641
Рисунок 22

  1. Нажмите «ОК» в диалоговом окне «Свойства подключения по локальной сети».

Изображение 24642
Рисунок 23

Теперь, когда сервер NAT установлен и настроен, мы можем переключить внимание на настройку сервера ЦС и клиента SSTP VPN.

Резюме

В этой статье мы продолжили нашу серию статей о настройке сервера SSL VPN с использованием Windows Server 2008. Мы рассмотрели установку IIS на сервере VPN, запрос и установку сертификата сервера, а также установку и настройку служб RRAS и NAT на сервере VPN. В следующей статье мы закончим настройку сервера ЦС и клиента SSTP VPN. Тогда увидимся! -Том.

Настройка Windows Server 2008 в качестве SSL VPN-сервера с удаленным доступом (часть 1)

подпишитесь на информационный бюллетень WindowSecurity.com, посвященный обновлению статей в режиме реального времени