Windows server настройка vpn ipsec

Как настроить IPSec в Windows

Существует множество приложений, которые будут реализовывать аутентификацию и шифрование сетевого трафика через отдельную стороннюю программу.

Тем не менее, операционная система Microsoft может также реализовать это через конфигурацию IPSEC. В этой статье мы рассмотрим, что такое IPSEC, и простой пример реализации.

Что такое IPSEC?

Internet Protocol Security или IPSEC — это протокол, используемый для аутентификации и шифрования IP-коммуникаций. Это достигается путем взаимной аутентификации между агентами, а также обмена криптографическими ключами в начале сеанса.

IPSEC также позволит добавлять ограничения IP и шифрование на уровне TCP / UDP к приложениям, которые иначе не могут его поддерживать. IPSEC использует IP-протокол 50 (ESP), IP-протокол 51 (AH) и UDP-порт 500.

Внедрение IPSEC

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

Второй компьютер, клиент Windows 10, будет действовать как клиент VPN. LT2P IPSEC VPN может обмениваться либо предварительным общим ключом, либо сертификатом. В этом примере мы будем обмениваться предварительным общим ключом.

Настройка VPN-сервера

На компьютере с Windows 2012 нам потребуется установить функции маршрутизации и удаленного доступа. Для этого перейдите в диспетчер серверов и добавьте роли и компоненты . Выберите установку на основе ролей или функций . Выберите локальный сервер. Выберите для установки следующие роли сервера.

Сетевая политика и службы доступа

Сервер сетевой политики

Удаленный доступ

Прямой доступ и VPN (RAS)

После установки этих новых функций вам потребуется оснастка для управления ими. Откройте mmc.exe с правами администратора. Перейти к файлу | Добавить / удалить оснастку. Добавьте оснастку маршрутизации и удаленного доступа .

Эта оснастка позволяет настраивать многопротокольные службы маршрутизации LAN-to-LAN, LAN-to-WAN, виртуальная частная сеть (VPN) и трансляция сетевых адресов (NAT).

В консоли MMC щелкните правой кнопкой мыши на маршрутизации и удаленного доступа и выберите, чтобы добавить сервер. Выберите локальную машину. Затем щелкните правой кнопкой мыши на только что созданном компьютере и выберите «Настроить и включить маршрутизацию и удаленный доступ» . Выберите Удаленный доступ (Dial Up или VPN).

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

Далее попытайтесь запустить службу маршрутизации и удаленного доступа. Следующий ключ реестра может потребоваться удалить, чтобы запустить службу.

В консоли mmc.exe щелкните правой кнопкой мыши на имени компьютера и перейдите в Свойства. Измените эти свойства на вкладке безопасности.

Выберите методы аутентификации, как показано ниже.

Установите флажок, чтобы разрешить настраиваемую политику IPSEC для соединения L2TP / IKEv2. Добавьте предварительный общий ключ.

Наконец, вам нужно будет изменить пользователя, чтобы получить доступ к VPN. Откройте compmgmt.msc, перейдите в раздел «Локальные пользователи и группы» и выберите свойства пользователя, которого вы хотите использовать для VPN.

Перейдите на вкладку Dial Up. Выберите Разрешить доступ и нажмите Применить . На вашем компьютере потребуется перезагрузка. После перезагрузки вы будете готовы протестировать свой первый клиент.

Настройка машины с Windows 10

На компьютере с Windows 10 откройте «Настройки сети и Интернета». Выберите VPN на левой панели и добавьте VPN-соединение. Отредактируйте дополнительные параметры.

Разместите IP-адрес вашего VPN-сервера под именем или адресом сервера. Выберите L2TP/IPSEC с параметром предварительного общего ключа в разделе Тип VPN. Добавьте предварительно общий ключ и имя пользователя и пароль.

Свойства безопасности для VPN должны быть изменены под сетевым адаптером. На адаптере VPN выберите «Свойства» и перейдите на вкладку «Безопасность». Установите переключатель EAP и выберите Microsoft: защищенный пароль (EAP-MSCHAPv2) (шифрование включено).

Наконец, снова щелкните правой кнопкой на адаптере для подключения. Поздравляем! Вы создали VPN-туннель IPSEC.

Подключение к VPN-серверу L2TP/IPSec из Windows

NOTE: Важно! Если вы планируете настроить Keenetic в качестве VPN-сервера, начать необходимо с проверки того, что он имеет публичный «белый» IP-адрес, а при использовании доменного имени KeenDNS, что оно настроено в режиме «Прямой доступ». При несоблюдении любого из этих условий подключение к такому серверу из Интернета будет невозможно. Исключение из этого правила описано ниже в разделе Примечание.

Встроенный VPN-сервер L2TP/IPSec можно настроить по инструкции «VPN-сервер L2TP/IPsec».

Рассмотрим пример создания VPN-подключения L2TP/IPSec на компьютере с ОС Windows 10.

Нажмите правой кнопкой мыши на значок «Пуск», выберите раздел «Сетевые подключения» и на появившемся экране VPN.

Читайте также:  Windows usb download utility

Выберите пункт «Добавить VPN-подключение».

В настройках подключения в качестве поставщика услуг VPN выберите «Windows (встроенные)». Задайте имя подключения, например «Домашняя сеть». Введите доменное имя или IP-адрес Keenetic, в нашем примере myhomerouter.keenetic.link. Выберите тип VPN — «L2TP/IPSec с предварительным ключом». Введите общий ключ для IPSec, который вы придумали и записали во время настройки VPN-сервера Keenetic, потом имя пользователя (которому разрешено подключение по VPN) и его пароль. Нажмите кнопку «Сохранить».

Для установления соединения нажмите кнопку «Подключиться».

NOTE: Важно! В операционной системе Windows существует проблема, когда невозможно установить одновременно более одного соединения к внешнему VPN-серверу L2TP/IPSec с компьютеров под управлением Windows, использующих один выход в Интернет (один внешний IP-адрес). Подробную информацию вы найдете в инструкции «Установка нескольких одновременных L2TP/IPSec-подключений».

Примечание

Возможность подключиться из Интернет к имеющему частный «серый» IP-адрес VPN-серверу появится лишь в том случае, когда на вышестоящем маршрутизаторе с «белым» IP настроен проброс портов на «серый» адрес Keenetic’а. Для L2TP/IPSec требуется проброс UDP 500 и UDP 4500. Другой вариант — проброс всех портов и протоколов, который на некоторых маршрутизаторах имеет название DMZ.

Типовым примером подобного маршрутизатора является CDCEthernet-модем. Он может получать от провайдера «белый» адрес и выдавать Keenetic’у «серый». Настройка проброса портов зависит от модема. Существуют те, что пробрасывают все порты без дополнительной настройки. В других эта настройка производится в их собственном веб-интерфейсе. А есть и такие, где она вообще не предусмотрена.

Другой пример такого маршрутизатора это оптический GPON-роутер или терминал от Ростелеком или МГТС, установленный на входе в квартиру. В таких устройствах проброс настраивается в их веб-интерфейсе.

Если проброс настроен правильно, можно пробовать установить VPN-соединение с внешним «белым» IP-адресом такого маршрутизатора. Он пробросит его на «серый» адрес Keenetic’а.

Правда в случае L2TP/IPSec есть исключение и из этого правила. Такое подключение легко установится со смартфона или планшета, но не установится с Windows-клиента.

Это известное ограничение Windows. В журнале Keenetic в таком случае попытка соединения заканчивается ошибками:

ipsec11[IKE] received retransmit of request with ID 0, retransmitting response
ipsec16[IKE] received retransmit of request with ID 0, retransmitting response
ipsec15[IKE] received retransmit of request with ID 0, retransmitting response
ipsec15[JOB] deleting half open IKE_SA with 193.0.174.212 after timeout

Да, L2TP/IPSec из Windows можно установить только если сам Keenetic имеет «белый» адрес. Проброс не поможет. Существуют однако другие, не столь привередливые виды VPN: PPTP, SSTP или OpenVPN. Их можно использовать для подключения Windows к серверу за NAT-ом после проброса. Для PPTP нужно пробросить TCP порт 1723 и GRE-протокол, для SSTP — TCP 443, а для OpenVPN UDP порт 1194 по умолчанию. Впрочем в последнем случае как протокол так и порт могут быть изменены по вашему желанию в конфигурации OpenVPN.

Пользователи, считающие этот материал полезным: 21 из 25

Записки IT специалиста

Технический блог специалистов ООО»Интерфейс»

  • Главная
  • Настраиваем PPTP или L2TP VPN-сервер при помощи RRAS в Windows Server

Настраиваем PPTP или L2TP VPN-сервер при помощи RRAS в Windows Server

Платформа Windows Server остается одной из наиболее популярных серверных платформ, в том числе и для реализации решений удаленного доступа. Служба маршрутизации и удаленного доступа (RRAS) позволяет быстро и достаточно просто развернуть VPN-сервер практически для любых нужд. Сегодня мы еще раз вернемся к этому вопросу и рассмотрим, как создать на базе Windows Server PPTP или L2TP сервер для удаленного доступа, как наиболее востребованный сценарий на сегодняшний день.

Почему именно эти типы подключения? Потому что они наиболее просты в реализации и поддерживаются широким спектром клиентов что называется «из коробки». Однако следует помнить, что PPTP не является на сегодняшний день безопасным и имеет слабые алгоритмы шифрования, но при этом он наиболее производительный из VPN-протоколов и имеет минимальные накладные расходы. Кроме того, его поддержка исключена из операционных систем Apple.

Оптимальным вариантом будет использование L2TP/IPsec подключения, которое сочетает в себе простоту, поддержку практически любыми клиентскими ОС и устройствами вместе с неплохим уровнем безопасности, обеспечиваемым IPsec. А так как настройка сервера для этих видов подключений практически идентична, то мы решили объединить их в одну статью.

Установка и настройка службы маршрутизации и удаленного доступа

Для начала работы с VPN в среде Windows Server вам потребуется установить роль Удаленный доступ, это делается стандартными средствами и не должно вызвать затруднений.

В Службах ролей выбираем Маршрутизация, роль DirectAccess и VPN (RAS) будет добавлена автоматически.

После установки роли Удаленный доступ ее следует настроить, проще всего это сделать, нажав на значок с желтым треугольником в Диспетчере серверов и выбрать в появившемся списке пункт Запуск мастера начальной настройки.

В появившемся окне выбираем пункт Развернуть только VPN.

Затем в оснастке Маршрутизация и удаленный доступ щелкаем правой кнопкой мыши по строке с сервером и выбираем в выпадающем меню Настроить и включить маршрутизацию и удаленный доступ.

Читайте также:  Нету панели управления nvidia что делать windows 10

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

В следующем окне достаточно поставить галочку Доступ к виртуальной частной сети (VPN) и завершить работу мастера.

После завершения работы мастера служба Маршрутизации и удаленного доступа будет запущена и можно приступить к настройке сервера удаленного доступа. Если же данная служба у вас уже установлена и настроена в иной конфигурации, то щелкните правой кнопкой по строке сервера и выберите Свойства, в открывшемся окне на закладке Общие установите опции: IPv4-маршрутизатор локальной сети и вызова по требованию и IPv4-сервер удаленного доступа.

Настройка PPTP и/или L2TP сервера удаленного доступа

Откроем оснастку Маршрутизация и удаленный доступ и перейдем к свойствам сервера через одноименный пункт в меню правой кнопки мыши, прежде всего убедимся, что настройки на закладке Общие соответствуют приведенным на скриншоте выше. Затем переключимся на закладку Безопасность и убедимся, что в качестве Поставщика службы проверки подлинности стоит Windows — проверка подлинности, а Поставщик учетаWindows-учет, еще ниже установим флаг Разрешить пользовательские политики IPsec для L2TP- и IKEv2-подключения и в поле Общий ключ укажите парольную фразу для предварительного ключа.

Нажав на кнопку Методы проверки подлинности откроем окно, в котором выберем только Протокол EAP и Шифрованная проверка (Microsoft, версия 2, MS-CHAP v2), остальные протоколы не являются безопасными и должны быть отключены.

На закладке IPv4 укажем опцию Назначение IPv4-адресовСтатический пул адресов и добавим новый пул для выдачи адресов из него удаленным клиентам. Количество адресов должно быть не менее количества клиентов плюс один адрес, так как первый адрес из пула присваивается серверу. Что касается самого диапазона адресов, то его выбор зависит от конфигурации сети, если вы будете использовать маршрутизацию, то он не должен пересекаться с локальной сетью, если же хотите использовать ProxyARP, то наоборот, должны выделить принадлежащий локальной сети диапазон. В нашем случае используется второй вариант.

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

Также не забудьте проверить настройки брандмауэра, чтобы убедиться, что правила Маршрутизация и удаленный доступ GRE-входящий, PPTP-входящий (для PPTP) и L2TP-входящий (для L2TP) включены.

Proxy ARP

Сетевое взаимодействие в пределах одной IP-сети осуществляется на канальном (L2) уровне, в сетях Ethernet для этого используются MAC-адреса устройств. Для того, чтобы выяснить MAC-адрес узла по его IP применяется протокол ARP (Address Resolution Protocol), использующий широковещательные запросы, на которые отвечает только обладатель указанного IP-адреса. Выдавая удаленным клиентам адреса из диапазона основной сети мы как бы помещаем их в общую IP-сеть, но так как VPN — это соединение точка-точка, ARP-запросы от удаленных клиентов в сеть попадать не будут, единственный узел который их получит — сам VPN-сервер.

Для решения данной проблемы используется технология Proxy ARP, которая, как понятно из названия, представляет прокси-сервер для ARP-запросов, позволяя удаленным клиентам работать так, как будто бы они действительно находились в одной сети, без каких-либо дополнительных настроек. При использовании RRAS никаких дополнительных действий делать не нужно, Proxy ARP работает по умолчанию.

VPN-сервер за NAT

Так как мы используем Windows Server, то с большой долей вероятности он будет находиться внутри сетевого периметра и нам понадобится настроить проброс портов на маршрутизаторе. Для этого нужно четко понимать, как работает VPN-соединение и какие порты и протоколы следует передавать.

Начнем с PPTP, прежде всего клиент устанавливает управляющее TCP-соединение на порт 1723, затем, после успешной аутентификации создается соединение для передачи данных с использованием протокола GRE.

Таким образом для работы PPTP-сервера за NAT нужно:

  • пробросить порт 1723 TCP
  • разрешить прохождение GRE-трафика

С первым понятно, а вот с GRE могут возникнуть затруднения. Если вы используете маршрутизатор на базе Linux, то обратитесь к следующей нашей статье, если оборудование Mikrotik, настроенное по нашей инструкции, то достаточно пробросить только 1723 TCP, прохождение GRE будет разрешено конфигурацией брандмауэра, в остальных случаях следует обратиться к документации на свою модель маршрутизатора.

С L2TP сложнее, точнее не с ним самим, а с IPsec, который не поддерживает NAT. Для обхода этих ограничений используется протокол NAT-T, который инкапсулирует пакеты IPsec в UDP, позволяя успешно проходить через NAT. Поддержка данного протокола включена по умолчанию практически во всех ОС, кроме Windows. Для включения поддержки NAT-T следует внести изменения в реестр, найдите ветку:

Читайте также:  Не найдено сетевое подключение для соединения континент ап windows 10

И создайте в ней параметр DWORD c именем AssumeUDPEncapsulationContextOnSendRule и значением 2.

Это можно быстро сделать при помощи PowerShell:

После чего систему следует перезагрузить. Данные изменения нужно внести как на сервере, так и на клиенте.

При установлении L2TP/IPsec соединения между узлами прежде всего создается зашифрованный IPsec-канал, для этого используется протокол обмена ключами IKE (порт 500 UDP) и протокол NAT-T (порт 4500 UDP), затем уже внутри безопасного IPsec-соединения поднимается L2TP-туннель на порт 1701 UDP и происходит аутентификация пользователя.

Обратите внимание, аутентификация пользователя в L2TP, в отличии от PPTP, происходит внутри защищенного IPsec-канала, что делает данный тип соединения более безопасным.

Таким образом для работы L2TP/IPsec сервера за NAT нужно:

  • пробросить порт 500 UDP
  • пробросить порт 4500 UDP
  • внести изменения в реестр для включения NAT-T как на сервере, так и на клиенте (только для Windows)

Вопреки распространенному заблуждению порт 1701 UDP пробрасывать не нужно.

Настройка VPN-подключения в Windows

С одной стороны это простой вопрос, с другой — имеются определенные тонкости, на которые мы как раз и обратим внимание. В Windows 10 для первичной настройки VPN-подключения служит современное приложение, которое предельно простое и не охватывает дополнительных настроек.

Поэтому после того, как вы создадите в нем подключение, следует перейти к его свойствам и на закладке Параметры — Параметры PPP установить в открывшемся окне все флажки. Это позволит использовать все возможности протокола PPP и получить оптимальное качество связи. Обратите внимание, что данные опции должны также поддерживаться со стороны сервера, в противном случае их использование в одностороннем порядке может привести к ошибкам при установлении связи.

Затем на закладке Безопасность установите в Шифрование данныхобязательное, а в пункте Проверка подлинности выберите Протокол расширенной проверки подлинности (EAP).

И наконец на закладке Сеть перейдите в свойства протокола IP версии 4 (TCP/IP 4) и нажмите Дополнительно, в открывшемся окне снимите флаг Использовать основной шлюз в удаленной сети, в противном случае весь исходящий трафик будет направлен в туннель.

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

Настройка VPN-подключения в Linux

В данной части нашего материала мы будем рассматривать настройку клиентских Linux-систем при помощи графического окружения и Network Manager, настройка серверных систем выходит за рамки текущей статьи. В качестве примера мы будем использовать Ubuntu, но все сказанное будет справедливо для любых основанных на Debian систем, а с некоторыми уточнениями — для любых дистрибутивов.

Поддержка PPTP присутствует практически в любом дистрибутиве по умолчанию. Достаточно перейти в Настройки — Сеть и добавить новое VPN-подключение.

Заполняем основные настройки: адрес сервера, имя и пароль пользователя.

Затем нажимаем кнопку Дополнительно и в открывшемся окне в разделе Аутентификация оставляем только MSCHAPv2, обязательно включаем Использовать шифрование MPPE и выбираем ниже 128 бит (наиболее защищенное), также устанавливаем флаг Включить Stateful Encryption для уменьшения накладных расходов на шифрование. Флаги сжатия оставляем включенными.

Закрываем данное окно с сохранением данных и переходим на закладку IPv4, где в разделе Маршрутизация устанавливаем флаг Использовать это подключение только для ресурсов этой сети, в противном случае в туннель пойдет весь трафик узла.

На этом настройка подключения завершена, можно подключаться.

Для работы с L2TP потребуется установить дополнительные пакеты:

После чего в доступных типах подключения появится L2TP. Основные настройки ничем не отличаются от PPTP, также адрес сервера, имя и пароль пользователя.

Затем откроем Настройки PPP, в разделе Аутентификация также выберем только MSCHAPv2, а вот опции шифрования оставляем выключенными, так как чистый L2TP шифрования не использует, для защиты канала здесь применяется IPsec. Флаги сжатия также оставляем установленными по умолчанию.

Затем переходим в Настройки IPsec, это наиболее сложная и ответственная часть настроек, так как от них напрямую зависит безопасность соединения. В поле Pre-shared key введите Общий ключ, а ниже потребуется указать используемые шифры. Большинство материалов в сети интернет копируют друг у друга откровенно старые и слабые наборы шифров, что не соответствует реалиям сегодняшнего дня, хотя соединение с такими значениями будет работать. Мы же будем использовать максимально безопасные значения, для этого в поле Phase1 Algorithms укажите aes256-sha1-ecp384, а в поле Phase2 Algorithmsaes256-sha1.

Также имеет смысл установка флага Enforce UDP Encapsulation, который принудительно включает NAT-T, в случае если вы точно знаете, что ваш сервер находится за NAT, без этой опции протокол включается автоматически при обнаружении первого устройства с NAT.

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

На этом настройка закончена, можно подключаться.

Дополнительные материалы:

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Или подпишись на наш Телеграм-канал:

Оцените статью