Установите OpenVPN Server на Windows Server и используйте AD (LDAP) Сделать проверку аккаунта

OS Серверная ОС: Windows Server 2019
◎ OpenVPN: OpenVPN 2.4.9 (сообщество)
Component компонент проверки AD: Auth4OpenVPNv2.0
ОС Клиент ОС: ОС Windows 10

 

Из-за аппаратного обеспечения компании VPN оборудование устарело,Недавние исследования VPN-решений,Я хочу начать с открытых решений в первую очередь,Сначала я подумал об OpenVPN, который был протестирован пять лет назад.,Но после загрузки файла образа виртуальной машины с официального сайта и завершения сборки,Я обнаружил, что эта версия открывает только два бесплатных клиентских подключения,Подпишитесь на больше。Я думал, что начал заряжаться,Не зря сервер и клиент (OpenVPN Connect) Программный интерфейс стал таким красивым,Раньше не забывал менять настройки через блокнот。

Тогда я нашел SoftEther VPN из Японии,Потратив некоторое время на исследования и строительство,Я думал, что этот набор должен работать,Неожиданно, когда я делал тест,Обнаружена ошибка сброса соединения с SQL в SoftEther VPN,И пользователи сети сообщили о проблеме в течение двух лет,Чиновник еще не исправил,Поэтому мне пришлось неохотно сдаваться。 Как настроить SoftEther VPN,Обратитесь к【Примечания settings Настройки VPN-сервера SoftEther

Позже я вернулся, чтобы найти соответствующую информацию о лицензии OpenVPN,Найдена только версия сообщества,После установки скачать,Снова появляется привычный экран настройки текстового файла,Ха。Ниже приведены цель и метод установки для этой сборки.:

【】 Цели
◎ Сервер использует систему Windows。
AD Используйте AD в качестве метода подтверждения учетной записи。
◎ Клиентская сторона использует независимый сегмент сети,И получить IP автоматически。
◎ Клиентская сторона будет передавать VPN только для трафика определенного сегмента сети.,Выйти в онлайн (интернет) не будет。
◎ Клиент может подключаться к другим сегментам сети внутри предприятия。

 

◎ Первый,к Загрузки сообщества OpenVPN Загрузите последнюю версию со страницы。

 

Refer Тогда обратитесь к сообществу Easy_Windows_Guide,Полные настройки сервера и клиента,Следующие настройки ключа захвата。


 

[Предварительная работа]

◎ Пожалуйста, отметьте галочкой при установке “EasyRSA 2 Сценарии управления сертификатами” элемент。

Cm Запустите cmd от имени системного администратора.,И выполните следующие команды по порядку:

  cd "C:\Program Files\OpenVPN\easy-rsa"  init-config  notepad vars.bat  

 

Information Изменить информацию о сертификате по умолчанию,Архив после модификации。

установить KEY_COUNTRY = США
установить KEY_PROVINCE = CA
set KEY_CITY = SanFrancisco
set KEY_ORG = OpenVPN
установить [email protected]

 

◎ Выполните следующие команды по порядку:

  vars  clean-all  

 

【Сертификат и ключ сборки】
◎ Выполните следующие команды:

  build-ca  

 

◎ Введите информацию о сертификате:

Имя страны (2 буквенный код) [НАС]:
Название штата или провинции (ФИО) [CA]:
Название населенного пункта (например, город) [Сан-Франциско]:
Название организации (например, Компания) [OpenVPN]:
Название организационной единицы (например, раздел) []:
Распространенное имя (например, ваше имя или имя хоста вашего сервера) []:
Адрес электронной почты [[email protected]]:

 

◎ Выполните следующие команды по порядку:

  build-key-server server  build-key client  # Guide 上是建議用 client 端的電腦名稱,然後為每一台電腦產生一份憑證,  # 但因為我主要是要用 AD 驗證,所以我這邊是只產生一份名為 client 的憑證,然後讓所有電腦一起使用。  build-dh  "C:\Program Files\OpenVPN\bin\openvpn.exe" --genkey --secret "C:\Program Files\OpenVPN\easy-rsa\keys\ta.key"  

 

[Установить файл конфигурации сервера]

◎ Выполните следующие команды:

  copy "C:\Program Files\OpenVPN\sample-config\server.ovpn" "C:\Program Files\OpenVPN\easy-rsa\keys\server.ovpn"  notepad "C:\Program Files\OpenVPN\easy-rsa\keys\server.ovpn"  

 

◎ найти следующий текст。

ca ca.crt
cert server.crt
ключ server.key

dh dh2048.pem

 

With заменить на:

который “C:\\Программные файлы \ OpenVPN \ config \ ca.crt”
верняк “C:\\Программные файлы \ OpenVPN \ config \ server.crt”
ключ “C:\\Программные файлы \ OpenVPN \ config \ server.key”

т.е. “C:\\Программные файлы \ OpenVPN \ config \ dh2048.pem”

 

And Архивировать и закрывать。

◎ найти следующий текст,И удалите точку с запятой перед комментарием(;)。Так как я планирую сделать только один ваучер для всех, чтобы поделиться,Это может привести к тому, что разные клиенты получат один и тот же набор IP,Так что включите этот параметр,Так что каждый может получить разные IP。

;дублированный сп

 

【Установить файл конфигурации клиента】

◎ Выполните следующие команды:

  copy "C:\Program Files\OpenVPN\sample-config\client.ovpn" "C:\Program Files\OpenVPN\easy-rsa\keys\client.ovpn"  notepad "C:\Program Files\OpenVPN\easy-rsa\keys\client.ovpn"  

 

◎ найти следующий текст。

ca ca.crt
cert server.crt
ключ server.key

tls-auth ta.key 1

 

With заменить на:

который “C:\\Программные файлы \ OpenVPN \ config \ ca.crt”
верняк “C:\\Программные файлы \ OpenVPN \ config \ client.crt”
ключ “C:\\Программные файлы \ OpenVPN \ config \ client.key”

TLS-аутентификации “C:\\Программные файлы \ OpenVPN \ config \ ta.key” 1
# Руководство не имеет этого раздела,Это ошибка, когда я запускаю клиент,И исправлено。

 

Following следующее “мой-сервер-1” Измените его на фактическое полное доменное имя или IP-адрес OpenVPN.。

remote my-server-1 1194

 

And Архивировать и закрывать。

 

Certificate Копировать сертификат、Ключ к правильному каталогу]

◎ Выполните следующие команды:

  robocopy "C:\Program Files\OpenVPN\easy-rsa\keys\" "C:\Program Files\OpenVPN\config\" ca.crt ta.key dh2048.pem server.crt server.key server.ovpn  

 

◎ в “C:\Программные файлы OpenVPN easy-rsa keys ”,Скопируйте следующие файлы:

ca.crt
ta.key
client.crt
client.key
client.ovpn

 

◎ размещено на клиентском компьютере “C:\Программные файлы OpenVPN config ”
PS. Установочный файл клиента совпадает с сервером。

 

[Запустить OpenVPN]

◎ Выполнить графический интерфейс OpenVPN как «системный администратор» на сервере。Если вы не работаете как «системный администратор», вы можете,Но некоторые журналы могут не иметь разрешения на запись。Вы также можете перейти к «Windows Service»,将 “OpenVPNService” Измените «Тип активации» на”автоматический”,И нажмите правую кнопку «активировать»。

◎ Клиентская сторона напрямую выполняет OpenVPN GUI,И щелкните правой кнопкой мыши значок в правом нижнем углу и выберите «Подключиться»。Клиент также может быть установлен с лучшим интерфейсом, OpenVPN Connect,И установить профиль (client.opvn) Перетащите в окно。


 

Вышесказанное является основным обучающим содержанием Easy_Windows_Guide,После выполнения вышеуказанных настроек,Вы можете завершить соединение по сертификату,Далее нужно настроить параметры в соответствии с тем, что я хочу:

◎ Клиент может подключаться к другим сегментам сети внутри предприятия。
AD Используйте AD в качестве метода подтверждения учетной записи。

 

[Разрешить клиенту подключаться к другим сегментам сети внутри предприятия]

После того, как OpenVPN построен,Сервер по умолчанию будет генерировать виртуальную сетевую карту,Его IP 10.8.0.1,И Клиент получит 10.8.0.6,В это время клиент переходит на пинг 10.8.0.1 Должен пройти。

Далее нам нужно пропинговать физическую сетевую карту сервера (例 192.168.53.1) Узнаем,В дополнение к добавлению маршрутизации в это время,ТакжеВключите функцию «Общий доступ к Интернету»。Я застрял здесь надолго,Позже, это было наконец в ViRb3 пользователей сети "Создайте сервер Windows OpenVPN, который проксирует интернет-трафик · GitHub«Эта статья находит ключевой параметр« Общий доступ к подключению к Интернету »。

◎ найти ";протолкнуть маршрут “192.168…"
◎ в соответствии с его форматом,Добавьте следующее,И архив。

  push "route 192.168.53.0 255.255.255.0"  # 如果要讓 Client 連到企業內部的其他網段,  # 可以在這邊加入其他網段的資訊。  

 

◎ Введите настройки интерфейсной карты,Включите физическую сетевую карту (192.168.53.1 Вот этот) Функция «Общий доступ к Интернету» (Тик”Разрешить другим пользователям сети подключаться к Интернету через этот компьютер”)。
PS. Я нашел много статей, прежде чем я знал, как сделать это действие,Застрял здесь надолго。

 

После включения функции «Общий доступ к подключению к Интернету»,IP-адрес виртуальной сетевой карты OpenVPN будет изменен на 192.168.137.1,Так что если мы хотим использовать OpenVPN по умолчанию 10.8.0.1,Нужно изменить машинный код。
◎ Запустите regedit,К следующему пути:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters

 

◎ Измените значение ScopeAddress на 10.8.0.1。

◎ Перезагрузите сервер OpenVPN,И пусть Клиент переподключится。

[Использовать AD в качестве метода подтверждения учетной записи]

  首先,Спасибо J. Ortega. Автор VBScript,Давайте сделаем так, чтобы OpenVPN легко проходил AD для проверки,Спасибо еще раз спасибо。В "Аутентификация Active Directory для OpenVPN для реализаций Windows – amigo4life2«Эта страница содержит очень подробные инструкции по настройке,Но из-за возраста,Так что следите за Windows 2008、2012 Будущая версия,Есть еще некоторые действия, которые нужно сделать,Ниже приведен метод настройки после окончания:

Aut Скачать Auth4OpenVPNv2.0.zip,И распакуйте содержимое в “C:/Программные файлы / OpenVPN / Config”

 

Aut Изменить Auth4OpenVPN.ini,Введите информацию об AD,Примеры следующие:

  Server = "192.168.53.20"  Domain = "abc"  DN = "dc=abc,dc=com,dc=tw"  Group = "(Group)OpenVPN"  Logging = "On"  

 

Следующее действие,С J. Ortega. Немного отличается на странице,Это айс OpenVPN Community Forum Исправления проблем безопасности в новой версии Windows Server,Спасибо, Айш, пользователи сети。

◎ Открыть Блокнот,Вставить следующее:

  set LOCALAPPDATA=C:\Users\%USERNAME%\AppData\Local  set CommonProgramFiles=C:\Program Files\Common Files  set CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files  set CommonProgramW6432=C:\Program Files\Common Files  C:\Windows\System32\cscript.exe "C:\Program Files\OpenVPN\config\Auth4OpenVPN.vbs"  exit %errorlevel%  

◎ Сохраните файл в “C:\Program Files OpenVPN config”,Файл с именем “Auth4OpenVPN-64bitWrapper.cmd”。

◎ Добавьте следующие две строки инструкций в server.ovpn:

  script-security 3  auth-user-pass-verify Auth4OpenVPN-64bitWrapper.cmd via-env  

◎ Добавьте следующие две строки инструкций в client.ovpn на стороне клиента.:

  auth-user-pass  auth-retry interact  

◎ Так,Клиент подключается,Откроется окно пароля учетной записи для входа。

 

【Дополнительная информация】

◎ Auth4OpenVPN предоставляет функции тестирования,Рекомендуется использовать следующую команду для проверки подключения к AD, и нет проблем,Давайте сделаем последующие действия。

auth4openvpn.vbs <user> <password>

◎ Auth4OpenVPN оставит результат проверки в журнале приложений Windows.,Если установлено в соответствии с методом оригинальной веб-страницы,может появиться “Auth4OpenVPN: -2147221164, Категория не зарегистрирована” 的錯誤訊息,В это время, по словам Айсх, пользователи сети предоставили “Auth4OpenVPN-64bitWrapper.cmd” Метод ремонта,Может решить проблему параметров окружающей среды。

◎ Если вы хотите, чтобы клиент имел доступ к Интернету через корпоративную сеть (интернет),Просто найдите следующую строку в файле server.ovpn,И добавить предыдущую заметку(;)Просто сними это。

;push "redirect-gateway def1 bypass-dhcp"

◎ OpenVPN Connect при импорте файла client.ovpn,Проверяет, находятся ли файлы сертификатов и ключей в том же каталоге, что и файл client.ovpn,Если нет ошибки。После завершения импорта,При подключении позже,OpenVPN Connect будет следовать настройкам client.ovpn, чтобы прочитать файлы сертификата и ключа в пути команды;OpenVPN GUI не имеет этой проблемы。

◎ Если вы хотите проверить OpenVPN и собственную учетную запись Windows,Вы можете сослаться на общий доступ smiley22 SAMAuth4OpenVPN элемент。

◎ Я все еще не принял это решение,Потому что на материке есть фильтрация для OpenVPN,Так что в процессе подключения будут какие-то странные проблемы。

 

【參考連結】

Оставить комментарий

Пожалуйста, обратите внимание: Комментарий умеренности включен и может задержать ваш комментарий. Существует нет необходимости повторно свой комментарий.