четверг, 13 сентября 2012 г.

Настройка VPN-сервера на базе Windows Server 2008

Настройка VPN-сервера в Windows Server 2008 и Windows Server 2008 R2 обычно состоит из 4 шагов:
  1. Установка ролей и служб.
  2. Настройка VPN-сервера.
  3. Настройка пограничного маршрутизатора.
  4. Настройка пользователей для удалённого доступа.

Шаг 1. Установка ролей и служб

Для работы VPN-сервера требуется только одна роль: "Службы политики сети и доступа".

Установить её можно, например, из диспетчера сервера, где нажимаем на ссылку "Добавить роль". Далее выбираем роль "Службы политики сети и доступа", нажимаем кнопку "Далее":


А в службе ролей выбираем "Служба удалённого доступа" и также "Далее":


а затем "Закрыть":


роли "Службы политики сети и доступа". Обычно после нажатия запускается мастер, который позволяет настроить VPN-сервер. Но это рассматривается на следующем шаге.

Шаг 2. Настройка VPN-сервера

Для настройки VPN-сервера необходимо запустить соответствующую оснастку консоли MMC (%windir%\system32\rrasmgmt.msc) или используя меню "Администрирование" > "Маршрутизация и удалённый доступ":


Для сервера в контекстном меню выбрать "Настроить и включить маршрутизацию и удалённый доступ". В случае неправильной настройки (что может произойти с каждым), необходимо отключить маршрутизацию и удалённый доступ, а затем снова начать с этого шага (см. далее).


Настройка маршрутизации и удалённого доступа производится в двух режимах:
  • когда используется только одна служба, например, VPN-сервер;
  • когда используется несколько служб, в т.ч. VPN-сервер.

Рассмотрим первый вариант, поскольку в большинстве конфигураций этого будет достаточно. Выбираем вариант "Особая конфигурация". Если на сервере одна сетевая карта (в моём случае данный сервер является контроллером домена и имеет одну сетевую карту; маршрутизация осуществляется на другом сервере) и выбран вариант "Удалённый доступ (VPN или модем)", то возникнет следующая ошибка:
На данном компьютере обнаружено менее двух интерфейсов сети.  Для стандартной настройки виртуальной частной сети (VPN) требуется наличие не менее двух интерфейсов сети. Используйте путь к особой настройке.


Поэтому процесс настройки придётся начать сначала, а при выборе конфигурации указать "Особая конфигурация":


Затем выбираем "Доступ к виртуальной частной сети (VPN)":


Установка роли завершена:


После нажатия на кнопку "Готово", будет предложено запустить службу. Внимательно читаем ниже.


Внимание! Если у Вас не поддерживается протокол IPv6, то при запуске службы возникнет ошибка:
Имя журнала:   System
Источник:      RemoteAccess
Дата:          12.09.2012 16:29:53
Код события:   20103
Категория задачи:Отсутствует
Уровень:       Ошибка
Ключевые слова:Классический
Пользователь:  Н/Д
Компьютер:     DCBM.k43.guap.ru
Описание:
Не удается загрузить C:\Windows\System32\iprtrmgr.dll.
Xml события:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="RemoteAccess" />
    <EventID Qualifiers="0">20103</EventID>
    <Level>2</Level>
    <Task>0</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2012-09-12T12:29:53.000000000Z" />
    <EventRecordID>10950</EventRecordID>
    <Channel>System</Channel>
    <Computer>DCBM.k43.guap.ru</Computer>
    <Security />
  </System>
  <EventData>
    <Data>C:\Windows\System32\iprtrmgr.dll</Data>
    <Binary>1F000000</Binary>
  </EventData>
</Event>

Следует убрать поддержку протокола IPv6 из маршрутизации и удалённого доступа. См. "Не удается загрузить C:\Windows\System32\iprtrmgr.dll". Для этого выполним следующие команду.

reg delete "HKLM\SYSTEM\CurrentControlSet\Services\RemoteAccess\RouterManagers\Ipv6" /f
net stop RemoteAccess
net start RemoteAccess

Внимание! В случае возникновения ошибки или если где-то накосячили, то всегда можно вернуться к начальному этапу настройки служб маршрутизации и удалённого доступа.

Для этого для сервера в контекстном меню выбираем "Отключить маршрутизацию и удалённый доступ".


И подтверждаем выбранное намерение.


После успешного запуска службы, должны быть открыты порты 500, 1701, 1723:
C:\Users\Администратор>netstat -an | find ":500 "
  UDP    0.0.0.0:500            *:*
  UDP    [::]:500               *:*

C:\Users\Администратор>netstat -an | find ":1701 "
  UDP    0.0.0.0:1701           *:*
  UDP    [::]:1701              *:*

C:\Users\Администратор>netstat -an | find ":1723 "
  TCP    0.0.0.0:1723           0.0.0.0:0              LISTENING

Возможно потребуется изменить механизм раздачи адресу подключаемым пользователям. Они могут использовать службу DHCP, если она настроена на сервере, или можно выделить пул адресов. Эти параметры задаются в свойствах сервера, вкладка "IPv4":


Шаг 3. Настройка пограничного маршрутизатора

Описание протоколов, портов и как настроить IPTables показано тут: http://kaktusenok.blogspot.com/2011/09/vpn-windows-linux-windows.html

Для данного VPN-сервера требуется разрешить передачу данных по TCP 1723, UDP 500, UDP 1701.

Шаг 4. Настройка пользователей для удалённого доступа

Следующим шагом будет настройка разрешений для пользователя. Открываем в "Администрирование" > "Active Directory - пользователи и компьютеры" (%SystemRoot%\system32\dsa.msc). Выбираем нужного нам пользователя и заходим в его свойства:


Во вкладке "Входящие звонки" в группе "Права доступа к сети" выбираем "Разрешить доступ". Теперь этот пользователь может подключаться по VPN к локальной сети предприятия. Как это сделать см. "Подключение Windows 7 к VPN-серверу".

1 комментарий:

  1. 1701, 1723 не видны через netstat, ВПН открываю на сервере 2008/2, что находится в домене, но не является контроллером. На роутере аналогично не видны 1701, 1723. Буду признательным за помощь.

    ОтветитьУдалить