Openvpn установка windows: OpenVPN 2.5.1 сервер на Windows

Содержание

OpenVPN 2.5.1 сервер на Windows

Вчера обнаружил, что на мой домашний сервер пытаются подобрать пароль к RDP. Спросил наших безопасников с работы, да, порт сканировали, но пароль подбирают не они… Надо что-то делать с этим, и я даже знаю что.

Ударим шифрованием по злобным брутфорсерам! Ставим OpenVPN 2.5.1 сервер на Windows Server 2016.

  • Встретимся с Easy-RSA 3.
  • Решим неочевидный баг с директорией временных файлов.
  • Освоим OpenVPN Connect, в том числе на Android.
  • Запилим адаптер OpenVPN WinTun.

Установка OpenVPN Server

Скачиваем дистрибутив для установки OpenVPN:

Community Downloads

Доступна версия OpenVPN 2.5.1. Скачиваю Windows 64-bit MSI installer, файл OpenVPN-2.5.1-I601-amd64.msi.

Запускаем инсталлятор OpenVPN.

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

Установка по умолчанию нас не устроит.

OpenVPN GUI отключаю. Мне нужно, чтобы OpenVPN на сервере работал автоматически.

А OpenVPN Service, наоборот, включаю. OpenVPN у меня будет работать как служба Windows.

Документацию и примеры конфигурации оставляю. Конфигурационные примеры будут использоваться в качестве шаблонов.

Начиная с версии OpenVPN 2.5 появилась поддержка драйвера WinTUN от разработчиков WireGuard. Говорят, что работает быстрее чем TAP-Windows6. Поэтому драйвер TAP-Windows6 отключаю и включаю Wintun.

ПРИМЕЧАНИЕ: для включения драйвера Wintun необходимо в файле конфигурации сервера включить параметр:

windows-driver wintun

Утилиты OpenSSL EasyRSA 3 Certificate Management Scripts включаю. Install Now.

Начинается процесс установки OpenVPN.

Установка успешно завершена. Close.

Установка выполнена в директорию C:\Program Files\OpenVPN.

После установки у нас появляется новый сетевой адаптер Wintun Userspace Tunnel.

Адаптер отключён.

Создание ключей и сертификатов

Запускаем командную строку под администратором и переходим в рабочую директорию C:\Program Files\OpenVPN\easy-rsa

.

cd C:\Program Files\OpenVPN\easy-rsa

В этой папке есть всё необходимое для генерации сертификатов.

Для работы в Windows нас интересует файл EasyRSA-Start.bat.

Выполняем EasyRSA-Start.bat.

Запускается оболочка EasyRSA Shell.

Инициализируем новую конфигурацию:

./easyrsa init-pki

Появляется новая директория C:\Program Files\OpenVPN\easy-rsa\pki.

Генерируем ключ и сертификат центра сертификации. Внимание, сейчас мы наступим на грабли, исправим ошибку и снова вернёмся к генерации файлов для центра сертификации.

./easyrsa build-ca

Нас попросят для раза ввести пароль. Придумываем и вводим.

Получаем ошибку.

Extra arguments given.
genrsa: Use -help for summary.

Easy-RSA error:

Failed create CA private key

Исправим этот баг. Мне не совсем понятно, почему нельзя было всё сделать сразу по-человечески, чтобы люди не встречали эту ошибку. Копируем файл C:\Program Files\OpenVPN\easy-rsa\vars.example, называем копию C:\Program Files\OpenVPN\easy-rsa\vars

.

Редактируем C:\Program Files\OpenVPN\easy-rsa\vars. В данном файле можно много чего прописать, но я не буду на этом сейчас останавливаться подробно. Находим строку:

#set_var EASYRSA_TEMP_DIR	"$EASYRSA_PKI"

И заменяем её на:

set_var EASYRSA_TEMP_DIR	"$EASYRSA_PKI/temp"

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

Генерируем ключ и сертификат центра сертификации:

./easyrsa build-ca

Нас попросят для раза ввести пароль. Придумываем и вводим. После нас просят указать Common Name для центра сертификации, указываю «internet-lab.ru».

Операция проходит успешно.

Создаётся сертификат центра сертификации:

  • C:\Program Files\OpenVPN\easy-rsa\pki\ca.crt

Сертификат создаётся на 10 лет, это значение можно переопределить в файле vars.

И ключ центра сертификации:

  • C:\Program Files\OpenVPN\easy-rsa\pki\private\ca.key

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

Генерируем ключ и запрос на сертификат сервера, назовём сервер именем «server«:

./easyrsa gen-req server nopass

Нас просят указать Common Name для сервера, указываю «internet-lab.ru».

Операция проходит успешно.

Создаётся запрос на сертификат сервера:

  • C:\Program Files\OpenVPN\easy-rsa\pki\reqs\server.req

И ключ сервера:

  • C:\Program Files\OpenVPN\easy-rsa\pki\private\server.key

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

Для создания сертификата сервера нужно подписать запрос на сертификат:

./easyrsa sign-req server server

Для подписи нужно ввести слово «yes» и указать пароль от центра сертификации.

Создаётся сертификат сервера:

  • C:\Program Files\OpenVPN\easy-rsa\pki\issued\server.crt

Сертификат сервера создаётся на 825 дней, это значение можно переопределить в файле vars.

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

Первый

  1. На клиентской машине генерируем запрос на сертификат клиента и ключ без пароля:

    . /easyrsa init-pki
    ./easyrsa gen-req client nopass
  2. Переносим REQ файл запроса на сертификат клиента на машину с нашим CA, импортируем, подписываем, отсылаем сгенерированный сертификат CRT обратно клиенту:
    ./easyrsa import-req /path/to/client.req client
    ./easyrsa sign-req client client

Второй

  1. а машине с CA генерируем сертификат клиента и ключ с паролем:

    ./easyrsa gen-req client
    ./easyrsa sign-req client client
  2. Переносим файлы клиенту, сообщаем пароль. Клиент снимает пароль с полученного ключа:
    openssl rsa -in client.key -out clientnew.key

Третий

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

Генерируем ключ и запрос на сертификат клиента, назовём клиента именем «client«:

./easyrsa gen-req client nopass

Нас просят указать Common Name для клиента, указываю «v. pupkin».

Операция проходит успешно.

Создаётся запрос на сертификат клиента:

  • C:\Program Files\OpenVPN\easy-rsa\pki\reqs\client.req

И ключ клиента:

  • C:\Program Files\OpenVPN\easy-rsa\pki\private\client.key

Для создания сертификата клиента нужно подписать запрос на сертификат:

./easyrsa sign-req client client

Для подписи нужно ввести слово «yes» и указать пароль от центра сертификации.

Создаётся сертификат клиента:

  • C:\Program Files\OpenVPN\easy-rsa\pki\issued\client.crt

Сертификат сервера создаётся на 825 дней, это значение можно переопределить в файле vars.

Генерируем ключ Диффи-Хеллмана:

./easyrsa gen-dh

Операция займёт некоторое время.

Создаётся файл:

  • C:\Program Files\OpenVPN\easy-rsa\pki\dh.pem

Я на сервере собираюсь использовать tls-auth для дополнительной проверки целостности, это обеспечит дополнительный уровень безопасности протокола SSL/TLS при создании соединения:

  • Сканирование прослушиваемых VPN-сервером портов
  • Инициация SSL/TLS-соединения несанкционированной машиной на раннем этапе
  • DoS-атаки и флуд на порты OpenVPN
  • Переполнение буфера SSL/TLS

При использовании tls-auth на клиенте не понадобится ключ Диффи-Хеллмана, но пусть будет. Генерируем ключ tls-auth. Для этого запускаем командную строку под администратором и выполняем:

cd C:\Program Files\OpenVPN\bin
openvpn --genkey secret ta.key

В папке C:\Program Files\OpenVPN\bin создаётся файл

ta.key.

Переносим его в папку C:\Program Files\OpenVPN\easy-rsa\pki.

Минимальный набор сертификатов сгенерирован.

Настройка OpenVPN сервера

Создадим конфигурационный файл сервера C:\Program Files\OpenVPN\config-auto\server.ovpn:

copy "C:\Program Files\OpenVPN\sample-config\server.ovpn" "C:\Program Files\OpenVPN\config-auto\server.ovpn"

Открываем блокнотом и редактируем:

notepad "C:\Program Files\OpenVPN\config-auto\server.ovpn"

Лучше изучить конфигурационный файл, я предлагаю свой вариант конфига:

port 1194
proto tcp
dev tun
ca "C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\ca.crt"
cert "C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\issued\\server. crt"
key "C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\private\\server.key"  # This file should be kept secret
dh "C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\dh.pem"
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
duplicate-cn
keepalive 10 120
tls-auth "C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\ta.key" 0 # This file is secret
cipher AES-256-GCM
persist-key
persist-tun
status "C:\\Program Files\\OpenVPN\\log\\status.log"
log         "C:\\Program Files\\OpenVPN\\log\\openvpn.log"
verb 4
mute 20
windows-driver wintun

У меня здесь указаны пути к ключам и сертификатам, используется порт TCP 1194. Параметр duplicate-cn позволяет подключаться всем клиентам по одному общему сертификату, но это небезопасно и не рекомендуется. Используйте только в тестовых целях. Я использую для того, чтобы с помощью одного и того же сертификата подключиться к OpenVPN серверу и с клиентской машины и со смартфона. Параметр windows-driver wintun подключает использование драйвера WinTun. И что им стоило этот параметр указать в примере конфигурации? Остальное по умолчанию.

ВНИМАНИЕ: в конфигурационных файлах допускается в путях использование прямого слеша:

ca «C:/Program Files/OpenVPN/easy-rsa/pki/ca.crt»

или двойного обратного слеша:

ca «C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\ca.crt»

Запуск OpenVPN сервера

Переходим к службам:

services.msc

Находим службу OpenVPNService.

Настраиваем на автоматический запуск при загрузке сервера.

Запускаем (перезапускаем) службу.

Согласно настройкам сервера в папке C:\Program Files\OpenVPN\log должны появиться логи. Это один из инструментов администратора OpenVPN сервера.

Активировался сетевой адаптер OpenVPN Wintun.

Согласно настройкам сервера IP адрес 10.8.0.1.

Проверяем поднялся ли порт tcp 1194:

netstat -tan | find "1194"

Порт должен прослушиваться.

Настройка firewall

Теперь нужно настроить firewall. Открываем Windows Defender Firewall with Advanced Security.

Переходим в Inbound Rules.

Создаём правило — New Rule…

Тип правила — Port. Next.

Протоколы и порты — TCP 1194. Как в настройках сервера. Next.

Действия — Allow the connection. Next.

Для всех сетей. Next.

Указываем название правила — OpenVPN. Next.

Правило создано, теперь firewall не блокирует входящие TCP соединения на 1194 порту.

Настройка OpenVPN клиента на ПК Windows

На компьютере клиента устанавливаем OpenVPN Connect.

Get OpenVPN

Я скачиваю версию для Windows.

Запускаем установку.

Next.

Принимаем лицензионное соглашение. Next.

Install.

OpenVPN Connect устанавливается.

Установка завершена. Finish.

На рабочем столе появляется иконка OpenVPN Connect.

На сервере файл примера конфигурации client.ovpn копируем как internet-lab.ru.ovpn.

И редактируем:

client
dev tun
proto tcp
remote internet-lab.ru 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
remote-cert-tls server
tls-auth ta.key 1
cipher AES-256-GCM
verb 0
connect-retry-max 25

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

Создаём директорию, например, C:\openvpn. Копируем в неё с сервера файлы:

  • ca.crt
  • client.crt
  • client.key
  • dh.pem
  • ta.key
  • internet-lab.ru.ovpn

Запускаем OpenVPN Connect.

Agree. Переключаемся на File.

Перетаскиваем мышкой в окно файл C:\openvpn\internet-lab. ru.ovpn, или указываем через кнопку Browse.

Ставим галку «Connect after import».

Коннектимся.

Соединение с OpenVPN сервером установлено.

В логах сервера видим, что соединился юзер v.pupkin.

Настройка OpenVPN клиента на смартфоне Android

Копируем на телефон все те же файлы, что и для клиента.

Устанавливаем приложение OpenVPN Connect.

Запускаем.

Agree.

Выбираем File. Указываем путь к файлу internet-lab.ru.ovpn.

Import.

Ставим галку «Connect after import».

Соединение с OpenVPN сервером установлено.

В логах сервера видим, что соединился второй юзер v.pupkin.

Отзыв сертификата

cd C:\Program Files\OpenVPN\easy-rsa
EasyRSA-Start.bat
./easyrsa revoke client

Ссылки

Установка OpenVPN сервера на Windows

Настройка OpenVPN-сервера на Windows 2008/2012

Это пошаговое руководство о том, как настроить OpenVPN-сервер в операционных системах Windows Server 2008/2012 и подключить клиентов к созданной виртуальной частной сети.

OpenVPN — открытая реализация технологии VPN — Virtual Private Network, которая предназначена для создания виртуальных частных сетей между группой территориально удаленных узлов поверх открытого канала передачи данных (интернет). OpenVPN подходит для таких задач, как безопасное удаленное сетевое подключение к серверу без открытия интернет-доступа к нему, как будто вы подключаетесь к хосту в своей локальной сети. Безопасность соединения достигается шифрованием OpenSSL.

Содержание:

Как это работает?

По окончанию настройки OpenVPN сервер сможет принимать внешние защищенные SSL сетевые подключения к созданному при запуске VPN-сервиса виртуальному сетевому адаптеру (tun/tap), не затрагивая правила обработки трафика других интерфейсов (внешний интернет-адаптер и др.) Имеется возможность настроить общий доступ клиентов OpenVPN к конкретному сетевому адаптеру из присутствующих на сервере. Во второй части инструкции рассмотрено такое туннелирование интернет-трафика пользователей. При этом способе переадресации обрабатывающий VPN-подключения хост будет выполнять и функцию прокси-сервера (Proxy) — унифицировать правила сетевой активности пользователей и осуществлять маршрутизацию клиентского интернет-трафика от своего имени.

Установка OpenVPN на сервер

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

Обратите внимание, что в этой инструкции дальнейшие команды приведены из расчета, что OpenVPN установлен в директорию по-умолчанию «C:\Program Files\OpenVPN».

Разрешаем добавление виртуального сетевого адаптера TAP в ответ на соответствующий запрос и дожидаемся завершения установки (может занять несколько минут).

Генерация ключей (PKI) центра сертификации, сервера, клиента; алгоритм Диффи-Хеллмана

Для управления парами «ключ/сертификат» всех узлов создаваемой частной сети используется утилита easy-rsa, работающая через командную строку по аналогии с консолью Linux. Для работы с ней откройте запустите командую строку (Сочетание клавиш Win+R, затем наберите cmd и нажмите Enter)

Файлы конфигурации

Скачайте наши файлы конфигурации и скрипты и замените их в каталоге C:\Program Files\OpenVPN\easy-rsa.

Если пути по умолчанию не совпадают, откорректируйте их во всех файлах.

В файле конфигурации openssl-1.0.0.conf обязательно задайте значения переменным, соответствующие вашим данным: countryName_default
stateOrProvinceName_default
localityName_default
0.organizationName_default
emailAddress_default

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

Генерация ключей Центра Сертификации и Сервера

  1. Переименуйте файл index.txt.start в index.txt, serial.start в serial с помощью следующих команд: cd \
    cd "C:\Program Files\OpenVPN\easy-rsa"
    ren index. txt.start index.txt
    ren serial.start serial

    Перейдем к созданию ключа/сертификата центра сертификации. Запустите скрипт: .\build-ca.bat

    В ответ на появляющиеся запросы вы можете просто нажимать Enter. Единственное исключение — поле KEY_CN (Common Name) — обязательно укажите уникальное имя и такое же имя вставьте в поле name.

  2. Аналогичным образом генерируем сертификат сервера. Здесь значение полей Common Name и Name — SERVER: .\build-key-server.bat server

     

    Примечание: аргумент server — имя будущего файла.

    Для всех генерируемых ключей теперь будет задаваться вопрос о том, подписать ли создаваемый сертификат (Sign the certificate) от имени центра сертификации. Отвечаем y (yes).

Генерация клиентских ключей и сертификатов

Для каждого клиента VPN необходимо сгенерировать отдельный SSL-сертификат.

В конфигурации OpenVPN присутствует опция, включив которую вы можете использовать один сертификат для нескольких клиентов (см. файл server.ovpn -> опция «dublicate-cn»), но это не рекомендуется с точки зрения безопасности. Сертификаты можно генерировать и в дальнейшем, по мере подключения новых клиентов. Поэтому сейчас создадим только один для клиента client1:

Выполните следующие команды для генерации клиентских ключей: cd \
cd "C:\Program Files\OpenVPN\easy-rsa"
.\build-key.bat client1

Примечание: аргумент client1 — имя будущего файла.

В поле Common Name указываем имя клиента (в нашем случае client1).

Параметры Diffie Hellman

Для завершения настройки шифрования, необходимо запустить скрипт генерации параметров Диффи-Хеллмана: .\build-dh.bat

Отображение информации о создании параметров выглядит так:

Перенос созданных ключей/сертификатов

Сгенерированные сертификаты находятся в директории C:\Program Files\OpenVPN\easy-rsa\keys. Скопируйте перечисленные ниже файлы в каталог C:\Program Files\OpenVPN\config:

  • ca.crt
  • dh3048.pem/dh2048.pem
  • server.crt
  • server.key

Конфигурация сервера OpenVPN

В дереве найдите каталог HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters. В правой части окна найдите переменную IPEnableRouter, двойным щелчком мыши перейдите в окно редактирования значения и измените его на 1, тем самым разрешив адресацию на VPS.

  1. Перейдем к настройке непосредственно VPN-сервера, используйте наш файл конфигурации с именем server.ovpn и поместите его в директорию C:\Program Files\OpenVPN\config.

    Откройте файл, находим пути до ключей (см. ниже). Проверяем в нем пути до скопированных ранее сертификатов ca.crt, dh2024.pem/dh3048.pem, server.key, server.crt и при необходимости меняем: port 1194
    proto udp
    dev tun
    server 10. 8.0.0 255.255.255.0
    ca "C:\\Program Files\\OpenVPN\\config\\ca.crt"
    cert "C:\\Program Files\\OpenVPN\\config\\server.crt"
    key "C:\\Program Files\\OpenVPN\\config\\server.key"
    dh "C:\\Program Files\\OpenVPN\\config\\dh3048.pem"
    push "redirect-gateway def1"
    push "dhcp-option DNS 8.8.8.8"
    keepalive 10 120
    comp-lzo
    persist-key
    persist-tun
    verb 3

    Сохраняем файл.

  2. Теперь необходимо разрешить пересылку трафика между адаптерами. Выполните следующие шаги: Панель управления -> Сеть и интернет -> Центр управления сетями и общим доступом -> Изменение параметров адаптера. Выберете адаптер который смотрит во внешнюю сеть Интернет (TAP-адаптер отвечает за VPN соединение). В нашем примере это Ethernet 2.

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

  3. Далее нужно включить IP-адресацию.

    С помощью поиска Windows найдите приложение REGEDIT.exe.

Автозапуск OpenVPN

Сразу настроим службу OpenVPN на автозапуск при старте системы. Открываем «Службы»(Services) Windows. Находим в списке OpenVPN -> ПКМ -> Свойства (Properties) -> Запуск: Автоматически

На этом базовая настройка сервера виртуальной частной сети завершена. Найдите файл C:\Program Files\OpenVPN\config\server.ovpn -> кликните правой кнопкой мыши -> «Start OpenVPN on this config» для запуска сервера виртуальной частной сети и подготовленного нами файла настроек.

Конфигурация клиента OpenVPN

Клиентские приложения OpenVPN доступны для всех популярных ОС: Windows / Linux / iOS / Android. Для MacOS используется клиент Tunnelblick. Все эти приложения работают с одними и теми же файлами конфигурации. Возможны лишь некоторые различия нескольких опций. Узнать о них вы можете, изучив документацию к своему клиенту OpenVPN. В этом руководстве мы рассмотрим подключение Windows-клиента с использованием того же дистрибутива программы, который мы устанавливали на сервер. При использовании приложений для других операционных систем логика настройки аналогична.

  1. Устанавливаем актуальную версию OpenVPN на клиентский компьютер.
  2. Копируем в директорию C:\Program Files\OpenVPN\config созданные ранее на сервере файлы клиентских сертификатов (2 сертификата с расширением .crt и ключ с расширением .key) и используем наш файл конфигурации клиента client.ovpn. Последний файл после копирования на устройство пользователя удаляем с сервера или переносим из папки config во избежание путаницы в будущем.
  3. Откройте файл client.ovpn. Найдите строку remote my-server-1 1194 и укажите в ней ip-адрес или доменное имя vpn-сервера:
    remote <ip-address> 1194</ip-address>

    Например: remote 111. 222.88.99 1194

  4. Находим пути до сертификатов. Указываем в нем пути до скопированных ранее сертификатов ca.crt, client1.key, client1.crt как в примере ниже:
    # See the server config file for more
    # description. It's best to use
    # a separate .crt/.key file pair
    # for each client. A single ca
    # file can be used for all clients.
    ca "C:\\Program Files\\OpenVPN\\config\\ca.crt"
    cert "C:\\Program Files\\OpenVPN\\config\\client1.crt"
    key "C:\\Program Files\\OpenVPN\\config\\client1.key"
    # This file should be kept secret
  5. Сохраните файл. Настройка клиентской части завершена.

Проверка правил Брандмауэра Windows

Внимание! Для корректной работы сервиса OpenVPN требуется, чтобы на севере были открыты соответствующие порты (по-умолчанию UDP 1194). Проверьте соответствующее правило в вашем Firewall’е: Брандмауэре Windows или стороннем антивирусном ПО.

Проверка OpenVPN-соединения

Запустите OpenVPN сервер, для этого перейдите в директорию C:\Program Files\OpenVPN\config и выберите файл конфигурации сервера (у нас server.ovpn -> ПКМ -> «Start OpenVPN on this config file»).

Запустите клиент, для этого перейдите в директорию C:\Program Files\OpenVPN\config и выберите файл конфигурации клиента (у нас client.ovpn -> ПКМ -> «Start OpenVPN on this config file»).

На экране отобразится окно статуса подключения. Через несколько секунд оно будет свернуто в трей. Зеленый индикатор ярлыка OpenVPN в области уведомлений говорит об успешном подключении.

Проверим доступность с клиентского устройства сервера OpenVPN по его внутреннему адресу частной сети:

  1. Нажимаем клавиши Win+R и появившемся окне вводим cmd для открытия командной строки.
  2. Выполняем команду ping до адреса нашего сервера в виртуальной частной сети (10.8.0.1): ping 10. 8.0.1
  3. В случае корректной настройки VPN начнется обмен пакетами с сервером

     

  4. С помощью утилиты tracert проверим по какому маршруту идут пакеты от клиента. В консоли введите следующую команду: tracert ya.ru
    Из результата работы утилиты мы видим, что сначала пакеты отправляются на сервер VPN, а уже потом во внешнюю сеть.

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

 

P. S. Другие инструкции:


Ознакомиться с другими инструкциями вы можете на нашем сайте. А чтобы попробовать услугу — кликните на кнопку ниже.

Спасибо за Вашу оценку! К сожалению, проголосовать не получилось. Попробуйте позже

Настройка OpenVPN сервера.

Автор: Decker

OpenVPN — свободная реализация технологии Виртуальной Частной Сети (VPN) с открытым исходным кодом для создания зашифрованных каналов типа точка-точка или сервер-клиенты между компьютерами. Она позволяет устанавливать соединения между компьютерами, находящимися за NAT-firewall, без необходимости изменения их настроек. OpenVPN была создана Джеймсом Йонаном (James Yonan) и распространяется под лицензией GNU GPL.

В этой статье в простой и доступной форме мы попытаемся рассказать вам о том как поднять собственный OpenVPN сервер. Мы не ставим своей целью, чтобы по окончании прочтения этой статьи вы досконально понимали все принципы «как это работает» или разбирались в тонкостях организации сетей, но хотим, чтобы в результате — вы могли настроить OpenVPN сервер «с нуля». Так что можно считать эту статью неким пошаговым руководством для пользователей. На самом деле в сети масса документации, мануалов, посвященных развертыванию OpenVPN, но они либо ориентированы на подготовленных пользователей или системных администраторов, либо же в качестве примера для демонстрации используются Linux-системы. Мы же пойдем другим путем и расскажем как настроить OpenVPN на компьютере среднестатического пользователя, т.е. рабочей станции с установленной ОС Windows. Зачем вам может пригодиться эта информация? Ну например вы хотите поиграть с друзьями в игру, которая не поддерживает игру через интернет, а только по локальной сети, или же, например, вы занимаетесь удаленной поддержкой пользователей, но по каким-то причинам использовать программное обеспечение вроде TeamViewer или Ammyy Admin не желаете, т.к. не хотите чтобы в процессе передачи ваших данных или установки соединения участвовали сервера сторонних компаний. В любом случае практический опыт организации собственной виртуальной частной сети (VPN) окажется для вас полезным.

Содержание

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

Итак, начнем. В нашем примере в качестве сервера OpenVPN будет выступать машина с установленной ОС Windows XP Professional SP3 (x86), в качестве клиентов — несколько машин с Windows 7 x64 и Windows 7 x86 (хотя на самом деле описываемая в статье схема заработает и на других конфигурациях). Предположим, что ПК который будет выступать в роли OpenVPN сервера имеет белый статический IP адрес в сети интернет (в случае если IP адрес, предоставляемый вашим провайдером динамический, то вам необходимо зарегистрироваться в DynDNS или No-IP), если это условие выполняется, но ПК находится за роутером или аппаратным firewall’ом — вам придется пробросить необходимые порты (об этом мы расскажем чуть ниже, когда перейдем непосредственно к настройке сервера), если вы не представляете что это такое и для чего это используется, то мы рекомендуем вам ознакомиться со статьей Port Forwarding. Как настроить и что это такое? на нашем сайте.

  1. Идем на официальный сайт проекта OpenVPN, в раздел Downloads — http://openvpn. net/index.php/open-source/downloads.html. Скачиваем оттуда, соответствующий вашему релизу ОС Windows дистрибутивай (32-bit или 64-bit Installer). На момент написания этой статье для 32-х битных ОС был доступен дистрибутив openvpn-install-2.3_rc1-I002-i686.exe, а для 64-х битных — openvpn-install-2.3_rc1-I002-x86_64.exe соответственно. Т.к. мы определились, что сервер мы будем поднимать на WinXP x86, т.е. на 32-битной ОС, то скачиваем дистрибутив по первой ссылке.
  2. Запускаем скачанный инсталлятор. На этапе где выбирается путь для установки вводим C:\OpenVPN (см. скриншот), это упростит нам настройку в дальнейшем: После чего нажимаем «Next» до тех пор, пока установка не будет завершена. Если в процессе установки, на этапе выбора компонент для установки у вас было «пустое окно», например, такое: То по всей видимости вы скачали «не тот» дистрибутив, в таком случае попробуйте скачать последнюю релизную версию openvpn-2.2.2-install.exe (она устанавливается как на x86, так и на x64 системы). При «правильной установке» окно выбора компонентов должно выглядеть так: Все галочки в нем при установке по-умолчанию стоят, менять дополнительно ничего не нужно. Если установка прошла успешно, то в Панели управления -> Сетевые подключения (или, если вы устанавливаете сервер на Windows 7 или Windows Vista, в Центр управления сетями и общим доступом -> Изменение параметров адаптера) у вас должен появиться TAP-Win32 Adapter V9, который будет называться «Подключение по локальной сети X» (X — автоматически присваиваемый системой номер): Состояние у него будет «Сетевой кабель не подключен», т.к. мы еще не конфигурировали наш сервер.
  3. Создаем в папке OpenVPN подпапку SSL, в ней будут храниться выданные сервером ключи и сертификаты. Далее запускаем блокнот и копируем в него следующий текст:
    #dev tun
    dev tap
    #dev-node "VPN"
    proto tcp-server
    #proto udp
    port 7777
    tls-server
    server 10.10.10.0 255.255.255.0
    comp-lzo
    # route-method exe
    # маршрут для сервера, чтобы видеть сети за клиентом
    # route 192. 168.x.0 255.255.255.0 10.10.10.x
    # маршрут добавляемый в таблицу маршрутизации каждого клиента, чтобы видеть сеть за сервером
    # push "route 192.168.x.0 255.255.255.0"
    # разрешает vpn-клиентам видеть друг-друга, в противном случае все vpn-клиенты будут видеть только сервер
    client-to-client
    # каталог с описаниями конфигураций каждого из клиентов
    client-config-dir C:\\OpenVPN\\config\\ccd
    # файл с описанием сетей между клиентом и сервером
    ifconfig-pool-persist C:\\OpenVPN\\config\\ccd\\ipp.txt
    # пути для ключей и сертификатов сервера
    dh C:\\OpenVPN\\ssl\\dh2024.pem
    ca C:\\OpenVPN\\ssl\\ca.crt
    cert C:\\OpenVPN\\ssl\\Server.crt
    key C:\\OpenVPN\\ssl\\Server.key
    #persist-key
    tls-auth C:\\OpenVPN\\ssl\\ta.key 0
    tun-mtu 1500
    tun-mtu-extra 32
    mssfix 1450
    keepalive 10 120
    status C:\\OpenVPN\\log\\openvpn-status.log
    log C:\\OpenVPN\\log\\openvpn.log
    verb 3
    На параметрах которые здесь описаны, мы остановимся чуть позже. После чего сохраняем его в файл C:\OpenVPN\Config\Server.ovpn, обратите внимание файл должен получиться именно с расширением .ovpn, для этого в диалоге сохранения опции должны стоять именно так, как показано на картинке: Если вы работаете под Windows 7 / Windows Vista и блокнот не дает вам сохранить файл Server.ovpn в папку C:\OpenVPN\Config\, значит его нужно запустить с правами администратора. Для этого щелкните в меню Пуск по ярлыку Блокнота правой кнопкой мыши и выберите «Запуск от имени администратора»: Теперь также с помощью блокнота создадим файл C:\OpenVPN\easy-rsa\vars.bat, скопировав в него нижеследующий текст:
    @echo off
    set path=%path%;c:\OpenVPN\bin
    set HOME=c:\OpenVPN\easy-rsa
    set KEY_CONFIG=openssl.cnf
    set KEY_DIR=c:\OpenVPN\ssl
    set KEY_SIZE=1024
    set KEY_COUNTRY=RU
    set KEY_PROVINCE=Kaluga
    set KEY_CITY=Kaluga
    set KEY_ORG=CompKaluga
    set [email protected] ru
    А также файл C:\OpenVPN\easy-rsa\openssl.cnf:
    #
    # OpenSSL example configuration file.
    # This is mostly being used for generation of certificate requests.
    #
    
    # This definition stops the following lines choking if HOME isn't
    # defined.
    HOME			= .
    RANDFILE		= $ENV::HOME/.rnd
    
    # Extra OBJECT IDENTIFIER info:
    #oid_file		= $ENV::HOME/.oid
    oid_section		= new_oids
    
    # To use this configuration file with the "-extfile" option of the
    # "openssl x509" utility, name here the section containing the
    # X.509v3 extensions to use:
    # extensions		= 
    # (Alternatively, use a configuration file that has only
    # X.509v3 extensions in its main [= default] section.)
    
    [ new_oids ]
    
    # We can add new OIDs in here for use by 'ca' and 'req'.
    # Add a simple OID like this:
    # testoid1=1.2.3.4
    # Or use config file substitution like this:
    # testoid2=${testoid1}. 5.6
    
    ####################################################################
    [ ca ]
    default_ca	= CA_default		# The default ca section
    
    ####################################################################
    [ CA_default ]
    
    dir		= $ENV::KEY_DIR		# Where everything is kept
    certs		= $dir			# Where the issued certs are kept
    crl_dir		= $dir			# Where the issued crl are kept
    database	= $dir/index.txt	# database index file.
    new_certs_dir	= $dir			# default place for new certs.
    
    certificate	= $dir/ca.crt	 	# The CA certificate
    serial		= $dir/serial 		# The current serial number
    crl		= $dir/crl.pem 		# The current CRL
    private_key	= $dir/ca.key	 	# The private key
    RANDFILE	= $dir/.rand		# private random number file
    
    x509_extensions	= usr_cert		# The extentions to add to the cert
    
    # Extensions to add to a CRL. Note: Netscape communicator chokes on V2 CRLs
    # so this is commented out by default to leave a V1 CRL. 
    # crl_extensions	= crl_ext
    
    default_days	= 3650			# how long to certify for
    default_crl_days= 30			# how long before next CRL
    default_md	= md5			# which md to use.
    preserve	= no			# keep passed DN ordering
    
    # A few difference way of specifying how similar the request should look
    # For type CA, the listed attributes must be the same, and the optional
    # and supplied fields are just that :-)
    policy		= policy_match
    
    # For the CA policy
    [ policy_match ]
    countryName		= match
    stateOrProvinceName	= match
    organizationName	= match
    organizationalUnitName	= optional
    commonName		= supplied
    emailAddress		= optional
    
    # For the 'anything' policy
    # At this point in time, you must list all acceptable 'object'
    # types.
    [ policy_anything ]
    countryName		= optional
    stateOrProvinceName	= optional
    localityName		= optional
    organizationName	= optional
    organizationalUnitName	= optional
    commonName		= supplied
    emailAddress		= optional
    
    ####################################################################
    [ req ]
    default_bits		= $ENV::KEY_SIZE
    default_keyfile 	= privkey.pem
    distinguished_name	= req_distinguished_name
    attributes		= req_attributes
    x509_extensions	= v3_ca	# The extentions to add to the self signed cert
    
    # Passwords for private keys if not present they will be prompted for
    # input_password = secret
    # output_password = secret
    
    # This sets a mask for permitted string types. There are several options. 
    # default: PrintableString, T61String, BMPString.
    # pkix	 : PrintableString, BMPString.
    # utf8only: only UTF8Strings.
    # nombstr : PrintableString, T61String (no BMPStrings or UTF8Strings).
    # MASK:XXXX a literal mask value.
    # WARNING: current versions of Netscape crash on BMPStrings or UTF8Strings
    # so use this option with caution!
    string_mask = nombstr
    
    # req_extensions = v3_req # The extensions to add to a certificate request
    
    [ req_distinguished_name ]
    countryName			= Country Name (2 letter code)
    countryName_default		= $ENV::KEY_COUNTRY
    countryName_min			= 2
    countryName_max			= 2
    
    stateOrProvinceName		= State or Province Name (full name)
    stateOrProvinceName_default	= $ENV::KEY_PROVINCE
    
    localityName			= Locality Name (eg, city)
    localityName_default		= $ENV::KEY_CITY
    
    0.organizationName		= Organization Name (eg, company)
    0.organizationName_default	= $ENV::KEY_ORG
    
    # we can do this but it is not needed normally :-)
    #1.organizationName		= Second Organization Name (eg, company)
    #1.organizationName_default	= World Wide Web Pty Ltd
    
    organizationalUnitName		= Organizational Unit Name (eg, section)
    #organizationalUnitName_default	=
    
    commonName			= Common Name (eg, your name or your server\'s hostname)
    commonName_max			= 64
    
    emailAddress			= Email Address
    emailAddress_default		= $ENV::KEY_EMAIL
    emailAddress_max		= 40
    
    # SET-ex3			= SET extension number 3
    
    [ req_attributes ]
    challengePassword		= A challenge password
    challengePassword_min		= 4
    challengePassword_max		= 20
    
    unstructuredName		= An optional company name
    
    [ usr_cert ]
    
    # These extensions are added when 'ca' signs a request.
    
    # This goes against PKIX guidelines but some CAs do it and some software
    # requires this to avoid interpreting an end user certificate as a CA.
    
    basicConstraints=CA:FALSE
    
    # Here are some examples of the usage of nsCertType. If it is omitted
    # the certificate can be used for anything *except* object signing.
    
    # This is OK for an SSL server.
    # nsCertType			= server
    
    # For an object signing certificate this would be used.
    # nsCertType = objsign
    
    # For normal client use this is typical
    # nsCertType = client, email
    
    # and for everything including object signing:
    # nsCertType = client, email, objsign
    
    # This is typical in keyUsage for a client certificate.
    # keyUsage = nonRepudiation, digitalSignature, keyEncipherment
    
    # This will be displayed in Netscape's comment listbox.
    nsComment			= "OpenSSL Generated Certificate"
    
    # PKIX recommendations harmless if included in all certificates.
    subjectKeyIdentifier=hash
    authorityKeyIdentifier=keyid,issuer:always
    
    # This stuff is for subjectAltName and issuerAltname.
    # Import the email address.
    # subjectAltName=email:copy
    
    # Copy subject details
    # issuerAltName=issuer:copy
    
    #nsCaRevocationUrl		= http://www.domain.dom/ca-crl.pem
    #nsBaseUrl
    #nsRevocationUrl
    #nsRenewalUrl
    #nsCaPolicyUrl
    #nsSslServerName
    
    [ server ]
    
    # JY ADDED -- Make a cert with nsCertType set to "server"
    basicConstraints=CA:FALSE
    nsCertType			= server
    nsComment			= "OpenSSL Generated Server Certificate"
    subjectKeyIdentifier=hash
    authorityKeyIdentifier=keyid,issuer:always
    
    [ v3_req ]
    
    # Extensions to add to a certificate request
    
    basicConstraints = CA:FALSE
    keyUsage = nonRepudiation, digitalSignature, keyEncipherment
    
    [ v3_ca ]
    
    
    # Extensions for a typical CA
    
    
    # PKIX recommendation.
    
    subjectKeyIdentifier=hash
    
    authorityKeyIdentifier=keyid:always,issuer:always
    
    # This is what PKIX recommends but some broken software chokes on critical
    # extensions.
    #basicConstraints = critical,CA:true
    # So we do this instead.
    basicConstraints = CA:true
    
    # Key usage: this is typical for a CA certificate. However since it will
    # prevent it being used as an test self-signed certificate it is best
    # left out by default.
    # keyUsage = cRLSign, keyCertSign
    
    # Some might want this also
    # nsCertType = sslCA, emailCA
    
    # Include email address in subject alt name: another PKIX recommendation
    # subjectAltName=email:copy
    # Copy issuer details
    # issuerAltName=issuer:copy
    
    # DER hex encoding of an extension: beware experts only!
    # obj=DER:02:03
    # Where 'obj' is a standard or added object
    # You can even override a supported extension:
    # basicConstraints= critical, DER:30:03:01:01:FF
    
    [ crl_ext ]
    
    # CRL extensions.
    # Only issuerAltName and authorityKeyIdentifier make any sense in a CRL.
    
    # issuerAltName=issuer:copy
    authorityKeyIdentifier=keyid:always,issuer:always
    
    Поздравляю! Вы только что создали основные конфигурационные файлы вашего сервера. Продолжим его настройку.
  4. Для дальнейшей настройки сервера нам будут необходимы некоторые навыки работы в командной строке. Прежде всего давайте разберемся, как ее запустить? Существует несколько способов, например, нажать Пуск -> Выполнить (или комбинацию кнопок Win+R) на клавиатуре и в появившемся поле ввести cmd и нажать кнопку Ок. Однако, пользователям Windows 7 / Windows Vista понадобится запустить консоль с правами администратора, для этого проще всего на рабочем столе создать соответствующий ярлык. Щелкаем правой кнопкой мыши по любому пустому месту рабочего стола и выбираем пункт «Создать ярлык», в поле «месторасположение объекта» просто указываем три буквы — cmd и называем ярлык cmd, либо командная строка. Далее, пользователи Windows XP просто запускают его, а пользователи Windows Vista и Windows 7 запускают его от имени администратора, так, как это делалось выше с блокнотом.
  5. Далее последовательно вводим в консоли строки:
    cd C:\OpenVPN\easy-rsa
    vars
    clean-all
    При этом на экране это должно выглядеть так: Далее не закрывая это окно вводим последовательно команды генерации ключей:
    openvpn --genkey --secret %KEY_DIR%\ta.key
    build-dh
    build-ca
    Последняя команда (build-ca) создаст сертификат и ключ центра сертификации (CA), в процессе, правда, она задаст вам несколько вопросов, ответить на которые надо по-умолчанию нажатием кнопки Enter: Теперь создадим ключ сервера:
    build-key-server server
    Обратите внимание, вторым аргументом в команде идет имя ключа (server), это же имя вы должны ввести при ответе на вопрос Common Name (eg, your name or your server’s hostname), на остальные вопросы можно ответить по-умолчанию нажатием кнопки Enter. Если вы все сделали правильно команда предложит подписать сертификат и подтвердить запрос, на оба вопроса нужно ответить Y (см. скриншот): Если вы все сделали правильно, то картинка у вас будет идентичной скриншоту, а в последних строчках вывода команды будет сообщение об успешном добавлении одной записи в базу данных.
  6. После этого идем в оснастку «Службы и приложения» консоли управления, сделать это можно щелкнув по ярлыку Компьютер (Мой компьютер) правой кнопкой мыши и выбрав пункт меню Управление, либо набрав в консоли команду services.msc, находим там службу «OpenVPN Service» и в меню по правой кнопки мыши выбираем «Пуск». Если до этого вы все сделали правильно, то служба перейдет в состояние «Работает». Теперь можно изменить ей тип запуска на «Авто», вместо «Вручную», который был там по-умолчанию. В результате должно получиться так: На этом настройка самого сервера закончена, осталось только сконфигурировать клиентов. Для этого необходимо также выдать им ключи и сертификаты, делается это практически аналогично серверу, только для сервера мы использовали команду build-key-server, а для клиентов будем использовать команду build-key.
  7. Предположим что у нас два клиента, назовем их client1 и client2. Выполним последовательно команды:
    build-key client1
    build-key client2
    
    При этом на вопрос Common Name (eg, your name or your server’s hostname) вы также должны указать имя клиента используемое в команде, т.е. если вы вводили команду build-key client1, то на вопрос Common Name отвечаем client1, если client2, то client2. На остальные вопросы можно ответить нажатием Enter, в конце вас также попросят подписать сертификат и подтвердить запрос, на оба пункта отвечаем утвердительно — Y. Теперь перезапускаем службу OpenVPN для того чтобы изменения вступили в силу, в оснастке управления службами, в меню по правой кнопке мыши «Перезапуск», либо же в консоли последовательно вводим:
    net stop openvpnservice
    net start openvpnservice
  8. Теперь если мы зайдем в папку, то увидим там сгенерированные нами файлы ключей и сертификатов: Каждому клиенту необходимы будут его файлы:
    ca.crt
    <clientname>.crt
    <clientname>.key
    ta.key
    Т.е. для клиента 1 мы собираем файлы ca.crt, client1.crt, client1.key и ta.key, для клиента 2 — ca.crt, client2.crt, client2.key и ta.key соответственно и т.п. И тем или иным образом отправляем ему их (имеется ввиду по почте, в архиве с паролем, или на флешке), файлы ключей и сертификатов должны быть переданы по надежным каналам связи и не должны попасть в «третьи руки», т.к. фактически с помощью них клиент может получить доступ в вашу виртуальную подсеть. В следующем разделе мы рассмотрим настройку клиента, при этом будет предполагаться что файлы ключей и сертификатов от вас он уже получил.
  9. Если на ПК используемом в качестве сервера используется firewall / брандмауэр, то необходимо добавить OpenVPN в список исключений. Для встроенного брандмауэра Windows в консоли это можно сделать следующей командой:
    netsh firewall add allowedprogram program = C:\OpenVPN\bin\openvpn.exe name = "OpenVPN Server" ENABLE scope = ALL profile = ALL

Настройка клиентов

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

  1. Ориентируясь на инструкцию по настройке сервера скачиваем дистрибутив OpenVPN с официального сайта, устанавливаем его и создаем в папке C:\OpenVPN подпапку SSL.
  2. Помещаем в нее файлы ca.crt, client1.crt, client1.key и ta.key, переданные нам владельцем сервера.
  3. Запускаем блокнот и создаем файл Client1.ovpn следующего содержания:
    # decker OpenVPN Config File (c) Decker, [email protected] 
    dev tap 
    # dev-node "OpenVPN"  
    proto tcp  
    remote x.x.x.x 7777  
    route-delay 3  
    client  
    tls-client  
    ns-cert-type server  
    ca C:\\OpenVPN\\ssl\\ca.crt  
    cert C:\\OpenVPN\\ssl\\client1.crt  
    key C:\\OpenVPN\\ssl\\client1.key  
    tls-auth C:\\OpenVPN\\ssl\\ta.key 1  
    comp-lzo  
    tun-mtu 1500  
    tun-mtu-extra 32  
    mssfix 1450  
    ping-restart 60  
    ping 10  
    status C:\\OpenVPN\\log\\openvpn-status.log  
    log C:\\OpenVPN\\log\\openvpn.log  
    verb 3
    Обратите внимание, здесь client1.crt и client1.key — это названия файлов полученные вами от владельца сервера. x.x.x.x — это IP адрес или доменное имя OpenVPN сервера, 7777 — номер порта сервера.
  4. Заходим в оснастку «Службы и приложения», так, как это описано в разделе настроек сервера и запускаем службу OpenVPN, если она успешно запустилась, то выставляем ей тип запуска в «Авто».
  5. Одновременно обращаем внимание на свойства нашего OpenVPN адаптера, если вы все настроили правильно, то через несколько секунд после запуска службы OpenVPN адаптер получит сетевой адрес от сервера:

Полезные ссылки

F.A.Q.

Вы можете присылать возникшие у вас вопросы на email указанный в разделе контактов, либо обсудить эту статью на нашем форуме.

А можно ли таким способом раздавать интернет?

Наверное большинство из вас хочет спросить «А можно ли посредством OpenVPN раздавать интернет, например, через локальную сеть провайдера?» и ответ скорее всего порадует вас. Можно! Рассмотрим пример. Допустим провайдер выдает всем «серые» адреса в своей локальной сети, а подключение к интернет идет через VPN или PPPoE, при этом пользователи локальной сети провайдера «видят» друг-друга в ней и могут свободно обмениваться файлами и т.п. напрямую через локальную сеть провайдера без подключения к интернет. Рассмотрим пример, как можно «поделиться» своим интернетом с друзьями (обращаем ваше внимание на то, что у большинства провайдеров перепродажа, равно как и другие способы передачи траффика интернет третьим лицам запрещены условиями договора, поэтому прежде чем настраивать подобную схему — убедитесь в ее легитимности в вашем случае). Допустим у пользователя у которого установлен OpenVPN сервер подключение к интернет и локальной сети провайдера осуществляется через роутер (!) IP адрес которого 172.31.1.1, также роутер выдает адреса для ПК подключенных к нему из диапазона 172.31.1.0/24. Таким образом для ПК с OpenVPN сервером получаем два интерфейса, один из них WAN (интерфейс подключенный к роутеру, на котором доступна локальная сеть провайдера и интернет), а другой — VPN, т.е. интерфейс OpenVPN сервера. Намомним, что в этом случае для корректной работы OpenVPN сервера (если вы настраивали все согласно приведенной выше инструкции) на роутере необходимо пробросить порт TCP 7777 из локальной сети провайдера (именно по этому IP к вам будут подключаться удаленные клиенты) на машину с OpenVPN-сервером.

  • Переименуем интерфейс подключенный к роутеру в WAN, а интерфейс OpenVPN сервера в VPN:
  • В конфигах OpenVPN сервера, в файле C:\OpenVPN\config\Server.ovpn добавим строки:
    dev-node "VPN" # имя интерфейса openvpn в системе
    push "route 0.0.0.0 0.0.0.0" # правило маршрутизации для КАЖДОГО клиента, основным шлюзом будет наш openvpn-сервер
    push "dhcp-option DNS 8.8.8.8" # DNS-сервера выдающиеся КАЖДОМУ клиенту
    push "dhcp-option DNS 8.8.4.4"
  • В свойствах интерфейса WAN на закладке «Дополнительно», включим общий доступ для подключения к интернет: Внимание! После того как вы сделаете это система автоматически пропишет в свойства адаптера VPN в свойства протокола TCP/IP IP адрес 192.168.0.1 и маску подсети 255.255.255.0 (!) Это неверно! Необходимо зайти в свойства протокола TCP/IP адаптера OpenVPN и выбрать там значение «Получить IP адрес автоматически», либо, если подсеть у вас такая же, как и в приведенных в инструкции по настройке сервера конфигах (10.10.10.0/255.255.255.0) прописать там IP адрес — 10.10.10.1 и маску подсети 255.255.255.0. Галочку общего доступа на подключении WAN больше не трогать (в тот момент когда мы ее установили, мы включили маршрутизацию пакетов в системе, что вообщем-то эквивалентно установке ключа реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters IPEnableRouter в значение 1), именно благодаря этому будет возможен общий доступ к интернет через VPN-соединение.
  • После этого обязательно отключаем брэндмауэр Windows на интерфейсе VPN, т.е. снимаем соответствующую галочку в настройках бранлмауэра:
  • После чего перезапускаем службу OpenVPN и удаленный клиент может попытаться подключиться к нам. Если все настроено верно, то в свойствах интерфейса OpenVPN на клиенте мы увидим следующее: Т.е. клиент в нашей виртуальной частной сети получил IP адрес 10.10.10.2, основным шлюзом для него является OpenVPN сервер — 10.10.10.1, и DNS серверы именно те, которые мы задавали. Если посмотреть трассировку маршрута до нашего сайта c клиента, то мы увидим что траффик идет именно через наш OpenVPN сервер: Чего собственно и требовалось добиться. Кстати, решение с OpenVPN универсальное, в отличие от обычного PPTP VPN. Многие провайдеры блокируют протокол GRE, используемый в PPTP VPN. OpenVPN сервер же работает только используя TCP или UDP протокол, причем номер порта вы определяете сами, получая таким образом крайне неприхотливый к «агрессивной среде провайдера» туннель 😉

От автора

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

Настройка OpenVPN сервера © Скорая Компьютерная Помощь г. Калуга // Decker

Примечание

В последнее время к нам на электронную почту приходит большое количество вопросов в стиле «Вопрос по Вашей статье http://compkaluga.ru/articles/172/ на шаге 5 после команды clean-all в результате у Вас копируется какой-то файл. У меня этого не происходит. команда openvpn —genkey —secret %KEY_DIR%\ta.key создает мне ключ а вот далее build-dh иbuild-ca не дают результата (cmd.exe пишет, что команда не является внутренней или внешней… или исполняемым файлом) файл ca.key не создается. Что я мог сделать не так?«. 

Основной смысл которых сводится к вашей же невнимательности. Проблема при запуске clean-all, build-key и других команд заключается в том, что при установке OpenVPN вы не поставили галочки OpenSSL Utilities и OpenVPN RSA Certificate Management Scripts (их нужно ставить обязательно!). Обратите внимание на скриншот с окном выбора компонентов в начале статьи, там эти галочки стоят!


Настройка OpenVPN на Windows Server 2008/2012

Ниже мы детально разберем все, что касается серверных настроек на Win Server2008 и Server2012, а также покажем, как сделать подключения юзеров к созданной сети.

OpenVPN – это представление открытой (от англ. «open» — «открыть») частной виртуальной сети (от англ. «Virtual Private Network»). Данная технология помогает создавать виртуальные подключения групп клиентов к расположенных на расстоянии машинам посредством передачи данных по открытому каналу, то есть интернету.

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

Принципы работы

Произведенная настройка позволит серверу взаимодействовать с внешним защищенным шифрованием SSL и создавать безопасное подключение к виртуальной сетевой машине (tun/tap). При этом не нужно будет волноваться об обработке трафика, поступающего от внешнего адаптера и аналогичных интерфейсов. Для серверных машин можно будет создать общий доступ к одному из указанных серверных адаптеров.

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

Способы установки виртуальной сети

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

Когда откроется окно установок, на третьем этапе необходимо отметить галочками все предлагаемые компоненты.

Когда всплывает вопрос о сетевом адаптере TAP, следует разрешить его установку.

Стандартно OpenVPN загружается в папку с программными файлами, расположенную на диске C. Поэтому в ходе инструкции мы будем ссылаться к папке «C:Program FilesOpenVPN». Вы хотите изменить месторасположение файлов? Тогда учитывайте этот нюанс в дальнейшем.

Как сгенерировать ключи и выполнить их шифрование, алгоритм Diffie-Hellman

Для каждой пары ключей существуют свои собственные сертификаты, обеспечивающие безопасность передачи информации. Управлять ими можно специальным приложением Easy-rsa, которое запускается и работает в командной строке, аналогично консоли Линукс. Консоль открывается через нажатие клавиш Win + R и ввода в появившемся окне слова cmd.

Как работать с конфигурационным файлом

Загрузив соответствующий конфигурационный файл, нужно внести его вместо одноименного файла/скрипта, найти который можно в папке OpenVPNeasy-rsa. Директория располагается на диске C в Program Files. Или укажите тот путь, куда вы запланировали установку виртуальной частной сети.

В папке необходимо найти конфигурационный файл openssl-1.0.0.conf, его значения должны соответствовать вашим данным:

countryName_default
stateOrProvinceName_default
localityName_default
0.organizationName_default
emailAddress_default

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

Как генерировать ключи в Центре Сертификации

1. Для начала следует переименовать два файла при помощи командной строки:

cd cd "C:Program FilesOpenVPNeasy-rsa" ren index.txt.start index.txt ren serial.start serial

2. Затем, чтобы создать новый ключ/сертификат, понадобится запуск скрипта:

.build-ca.bat

В окне будут возникать различные предложения, большинство из них можно подтверждать кнопкой Enter. А для поля KEY_CN (Common Name) следует ввести оригинальное название и его же продублировать для поля name.

3. Так же генерируются сертификаты серверу. В этой строке вместе server нужно ввести оригинальное имя:

.build-key-server.bat server

4. Система начнет спрашивать, следует ли подписывать сертификаты для создаваемых ключей от имени Центра сертификации? Введите «да» — y (yes).

Как генерировать клиентский ключ и сертификат

Всем юзерам виртуальной сети понадобится генерировать свои индивидуальные SSL-сертификаты.

Можно воспользоваться специальной опцией, которая позволяет присваивать 1 сертификат сразу нескольким пользователям. Она называется «dublicate-cn» и размещается в файле server.ovpn. Однако такой ход небезопасен.

Рассмотрим, как сгенерировать сертификат клиенту client2:

cd cd "C:Program FilesOpenVPNeasy-rsa" .build-key.bat client2

Внимание: под переменной client2 подразумевается вносимое название файла. Далее следует ввести client2 в запрос строчки Common Name.

Работа с алгоритмом Диффи-Хеллмана

В завершение всех действий понадобится запуск шифрования, чтобы сгенерировать группу параметров по Диффи-Хеллману:

.build-dh.bat

<img src="https://serverspace.ru/wp-content/uploads/2020/06/78_5.png" alt="OpenVPN" />

Перенос сгенерированных ключей/сертификатов

Все созданные данные располагаются в подпапке easy-rsakeys. Следующие наименования файлов следует перенести в другую подпапку — config, которая располагается в том же месте:

• dh3048.pem/dh2048.pem

• server.key

• ca.crt

• server.crt

Настройка конфигурации на сервере

Запустите редактор реестра и отыщите в нем:

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters.

Справа вы увидите IPEnableRouter. Кликните по переменной два раза – откроется новое окошко для изменения параметров. В поле «Значение» поставьте единицу:

Настраивать сервер мы будем через конфигурационный файл server.ovpn. Перед работой его следует переместить в папку config.

Открыв его, необходимо проверить правильность построение маршрутов к перенесенным сертификатам:

port 1194
proto udp
dev tun
server 10.8.0.0 255.255.255.0
ca "C:Program FilesOpenVPNconfigca.crt"
cert "C:Program FilesOpenVPNconfigserver.crt"
key "C:Program FilesOpenVPNconfigserver.key"
dh "C:Program FilesOpenVPNconfigdh3048.pem"
push "redirect-gateway def1"
push "dhcp-option DNS 8.8.8.8"
keepalive 10 120
comp-lzo
persist-key
persist-tun
verb 3

Если нужно, то меняем пути на правильные и пересохраняем.

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

Из нескольких предложенных вариантов надо взять тот, что отвечает за внешние подключения, то есть не TAP-тип, так как он работает с VPN-соединениями.

В свойствах зайдите на вкладку доступа и поставьте галочки на обоих пунктах:

Следующим шагом включается айпи-переадресация.

Зайдите в стандартный поиск ОС си введите следующее имя приложения:

Настройка автозапуска

Чтобы служба стартовала при включении компьютера, нужно зайти в базовую папку «Службы», в открывшемся окне среди прочих программ найти OpenVPN, кликнуть по нему правой кнопкой, а в свойствах в значениях запуска выставить режим «Автоматически».

Стандартные настройки окончены. Чтобы запустить сервер и его новые настройки, надо еще раз войти в файл server.ovpn и написать в него следующую строчку:

Start OpenVPN on this config

Настройки клиентской конфигурации

Виртуальная частная сеть имеет свое клиентское приложение, которое одинаково хорошо загружается для любой существующей операционной системы за исключением Mac – к нему разработан Tunnelblick. Версии приложений функционируют одинаково, затрагивают определенные конфигурационные файлы. В зависимости от версий, могут различаться отдельные опции. Более подробная информация расписана в документации OpenVPN.

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

1. Для начала на ПК клиента ставится актуальная версия (желательно последняя) OpenVPN.

2. Конфигурационные файлы клиента client.ovpn вместе с сертификатами *.crt и ключами *.key, которые перед этим мы сгеренировали, необходимо поместить в подпапку config, хранящуюся в разделе OpenVPN. При этом желательно файл клиента удалить с директории сервера, чтобы не запутаться при будущих настройках.

3. При открытии client.ovpn необходимо отыскать строчку remote my-server-1 1194. Задайте ей айпи и домен работающего сервера:

remote 1194

Например:

remote 111.222.88.99 1194

4. Ниже в файле обозначен путь к каждому сертификату, меняем их на путь к скопированным версиям:

# See the server config file for more
# description. It's best to use
# a separate .crt/.key file pair
# for each client. A single ca
# file can be used for all clients.
ca "C:Program FilesOpenVPNconfigca.crt"
cert "C:Program FilesOpenVPNconfigclient2.crt"
key "C:Program FilesOpenVPNconfigclient2.key"
# This file should be kept secret

5. После сохранения базовые настройки будут окончены.

Как проверить правила брендмауэра

Чтобы функционирование виртуальной частной сети проходило корректно, на стороне сервера необходимо открыть соответствующий порт. Стандартно его имя UDP 1194.

Зайдите в установленный системный Firewall и посмотрите, разрешен ли доступ к порту антивирусным программным обеспечением и брендмауэром.

Как проверить OpenVPN-подключение

После запуска сервера потребуется зайти в папку config. В ней нужно отыскать конфигурационный server.ovpn файл. Кликнуть по нему правой кнопкой, вызвать контекстное меню и внести новую строчку:

Start OpenVPN on this config file

Те же действия необходимо проделать для клиента. Только в этот раз открывается client.ovpn. Остальные действия аналогичны.

Следом должно показаться окно, где отобразится статус соединения. Окно самостоятельно свернется в трею, там же загорится ярлык компьютера с зеленым индикатором (это будет свидетельствовать об успешно проведенной настройке).

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

1. Запустим командную строку комбинацией клавиш Win + R и введением команды cmd.

2. Осуществим пинг к выбранному серверу (10.8.0.1). Для этого введем:

ping 10.8.0.1

3. Если настройка прошла отлично, в окне строки покажется передача пакетов ПК клиента к серверу:

4. Специальная утилита Tracert покажет маршрут, по которому происходит передача клиентских пакетов. Для этого в консоль вводится команда:

tracert ya.ru

Как показывает результат, клиентский пакет отправляется к виртуальному серверу, после чего перенаправляется к внешней сети:

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

Средняя оценка: 5.0 Оценили: 1

191028 Санкт-Петербург Литейный пр., д. 26, Лит. А

+7 (812) 403-06-99 700 300 ООО «ИТГЛОБАЛКОМ ЛАБС»

191028 Санкт-Петербург Литейный пр., д. 26, Лит. А

+7 (812) 403-06-99 700 300 ООО «ИТГЛОБАЛКОМ ЛАБС» 700 300

Как настроить OpenVPN на Windows Server Tucha.ua

Приветствуем, друзья! Продолжая тему настроек VPN, сегодня поговорим об OpenVPN, а точнее – о его настройке на сервере под управлением операционной системы Windows. Задача хоть и нехитрая, но многошаговая, поэтому не теряем ни минуты и приступаем.

1. Скачайте самый свежий дистрибутив OpenVPN на официальном сайте.

2. Дальше всё стандартно – запустите установку и нажимайте Next. Обратите внимание на пару моментов.

  • На этапе выбора компонентов проследите, чтобы все пункты из списка были отмечены.

      • Для примера мы выбрали путь установки C:\Program Files\OpenVPN. Вы можете указать любой путь, но не забудьте подставлять нужное значение при следующих шагах нашей инструкции.

3. Нажмите Install. Во время установки система предложит дополнительно установить TAP-драйвер. Не отказывайтесь, снова нажмите Install и дождитесь окончания установки.

С этим всё. Теперь нужно сформировать сертификаты и ключи.

4. Перейдите в C:\Program Files\OpenVPN и создайте папку ssl.

5. В папке C:\Program Files\OpenVPN\easy-rsa создайде файл vars.bat, откройте его на редактирование и приведите к аналогичному виду:

set HOME=%ProgramFiles%\OpenVPN\easy-rsa
set KEY_CONFIG=openssl-1.0.0.cnf
set KEY_DIR=keys
set KEY_SIZE=2048
set KEY_COUNTRY=UA
set KEY_PROVINCE=Kiev
set KEY_CITY=Kiev
set KEY_ORG=Tucha
set [email protected]
set KEY_CN=TUCHA
set KEY_OU=TUCHA
set KEY_NAME=server.domain.ua
set PKCS11_MODULE_PATH=TUCHA
set PKCS11_PIN=12345678

Значение KEY_CONFIG лучше сверить по названию соответствующего файла в папке easy-rsa, а KEY_NAME – полное имя сервера.

6. Запустите командную строку: Win + R > cmd > OK.

7. Одну за другой запустите в строке такие команды:

cd %ProgramFiles%\OpenVPN\easy-rsa

vars.bat

clean-all.bat

vars.bat

build-ca.bat

После этого система начнёт запрашивать подтверждение данных, которые мы изменили в конфигурационном файле (пункт 5). Подтверждайте их нажатием Enter.

8. Запустите в строке ещё две команды:

build-dh.bat

build-key-server.bat ****

Где **** – это имя сертификата.

9. Подтверждайте запросы нажатием Enter.

Система задаст вам два вопроса:

Sign the certificate? [y/n]
1 out of 1 certificate requests certified, commit? [y/n]

На оба ответьте утвердительно: Y.

10. Перенесите содержимое папки C:\Program Files\OpenVPN\easy-rsa\keys в созданную ранее C:\Program Files\OpenVPN\ssl.

Теперь к настройкам сервера.

11. Перейдите в C:\Program Files\OpenVPN\config и создайте файл server.ovpn. Откройте его и приведите к аналогичному виду:

port 443
proto udp
dev tun
dev-node "VPN Server"
dh "C:\\Program Files\\OpenVPN\\ssl\\dh3048.pem"
ca "C:\\Program Files\\OpenVPN\\ssl\\ca.crt"
cert "C:\\Program Files\\OpenVPN\\ssl\\cert.crt"
key "C:\\Program Files\\OpenVPN\\ssl\\cert.key"
server 172.16.10.0 255.255.255.0
max-clients 32
keepalive 10 120
client-to-client
comp-lzo
persist-key
persist-tun
cipher DES-CBC
status "C:\\Program Files\\OpenVPN\\log\\status.log"
log "C:\\Program Files\\OpenVPN\\log\\openvpn.log"
verb 4
mute 20

Значением port укажите любой из свободных сетевых портов, а dev-node – сетевой интерфейс.

12. Откройте управление адаптерами в сетевых подключениях Windows и переименуйте TAP-адаптер в соответствии с dev-node (в нашем случае это «VPN Server»).

13. Откройте службы Windows: Win + R > services.msc > OK.

14. Найдите службу OpenVpnService, откройте её, в поле Sturtup type выберите Automatic и нажмите Start. Готово, VPN-сервер запущен.

Теперь нужно выполнить настройки клиента.

15. Перейдите в C:\Program Files\OpenVPN\easy-rsa\keys и очистите файл index.txt.

16. Запустите командную строку и выполните такие команды:

cd %ProgramFiles%\OpenVPN\easy-rsa

vars.bat

build-key.bat clients

17. Вернитесь в C:\Program Files\OpenVPN\easy-rsa\keys, скопируйте файлы clients.crt, clients.key, ca.crt, dh3048.pem и перенесите их на клиентскую машину.

18. Установите OpenVPN на клиентском компьютере так же, как это было описано в самом начале инструкции.

19. Перейдите в C:\Program Files\OpenVPN\config на клиентском компьютере и скопируйте туда файлы clients.crtclients.keyca.crt, dh3048.pem, которые перенесли с сервера.

20. Откройте Блокнот под администратором и вставьте такую запись:

client
resolv-retry infinite
nobind
remote ******** 443
proto udp
dev tun
comp-lzo
ca ca.crt
cert clients.crt
key clients.key
dh dh3048.pem
float
cipher DES-CBC
keepalive 10 120
persist-key
persist-tun
verb 0

Значением remote укажите IP-адрес сервера и порт (в нашем случае 443).

21. Сохраните этот файл под именем config.ovpn в папке C:\Program Files\OpenVPN\config.

22. Запустите под администратором OpenVPN GUI. Нажмите правой кнопкой мыши на значок OpenVPN в системном трее и выберите Connect. Готово!

В процессе работы вы можете столкнуться с некоторыми распространёнными проблемами, но все они успешно решаются с помощью логов в папке C:\Program Files\OpenVPN\log.

На этом всё. Как видите, ничего сложного, главное – не запутаться в очерёдности шагов. :) Заботьтесь о безопасной работе в интернете и храните свои данные на защищённом сервере. А по всем околооблачным вопросам обращайтесь к нам за консультацией 24/7.

Всего хорошего, друзья, и до связи!

Настройка OpenVPN сервера и клиентов на Windows

OpenVPN — технология виртуальной частной сети используемая для создания шифрованных каналов связи. Она позволяет устанавливать защищенные соединения используя библиотеку OpenSSL. OpenVPN быстрое, надежное и безопасное решение для создания VPN. Итак рассмотрим настройку OpenVPN сервера и клиентов на Windows.

Настройка OpenVPN сервера на Windows


Для начала скачаем с официального сайта файл openvpn-install в зависимости от ОС 32-bit или 64-bit.

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

Указываем путь установки OpenVPN. По умолчанию C:\Program Files\OpenVPN.

Соглашаемся с установкой TAP адаптера.

Жмем Next.

И Finish.

После установки перейдем в каталог C:\Program Files\OpenVPN\easy-rsa и найдем файл vars.bat.sample. Из названия файла vars.bat.sample удалим .sample и откроем получившийся файл vars.bat с помощью блокнота.

Тут, по желанию можно отредактировать последние 10 строк.

set KEY_COUNTRY=RU

set KEY_PROVINCE=RU

set KEY_CITY=Moscow

set KEY_ORG=OpenVPN

set [email protected]

set KEY_CN=changeme

set KEY_NAME=changeme

set KEY_OU=changeme

set PKCS11_MODULE_PATH=changeme

set PKCS11_PIN=1234


Далее заходим в управление компьютером → службы → и находим OpenVPN Service → ставим тип запуска автоматически, нажимаем применить и запустить.

Запускаем командную строку от администратора, для этого открываем Пуск → Все программы → Стандартные → и нажимаем правой кнопкой на командную строку → запустить от имени администратора.

Набираем в командной строке cd «C:\Program Files\OpenVPN\easy-rsa» и жмем Enter.

Далее набираем vars и также Enter.

Запустим команду clean-all.

Создадим сертификат сервера Root CA набрав build-ca. И заполняем параметры для сертификата.

Создадим ключ Диффи Хельмана командой build-dh.

Создадим сертификат сервера командой build-key-server server.

Далее будем создавать сертификаты для клиентов командой build-key имя-клиента. Имена создаваемых клиентов должны быть уникальны. 

Теперь созданные сертификаты можно увидеть в C:\Program Files\OpenVPN\easy-rsa\keys.

После закрытия командной строки, для генерации новых клиентов необходимо заново запускать командную строку от администратора и вводить команды: cd «C:\Program Files\OpenVPN\easy-rsa»,  vars, build-key имя-клиента.


Дальше скопируем файлы ca, server, server.key и dh2024.pem в папку C:\Program Files\OpenVPN\config. Также скопируем файл server из C:\Program Files\OpenVPN\sample-config в C:\Program Files\OpenVPN\config и отредактируем его с помощью блокнота.

# Тип сервер

mode server 

# Туннель tun

dev tun 

# Протокол

proto tcp 

# Порт который использует впн

port 1197

# Ключи и сертификаты

ca ca.crt

cert server.crt

key server.key 

dh dh2024.pem

# Пул адресов для клиентов

server 192.168.100.0 255.255.255.0

# Грубо говоря экономим адреса

topology subnet

# чтобы клиенты видели друг друга

client-to-client

# Немного улучшит пинг

mssfix

# Время жизни клиентов, если не откликнулся — отключает

keepalive 10 120

# Уровень отладки

verb 3 

Теперь, для того чтобы клиенты OpenVPN имели доступ с ресурсам в локальной сети за OpenVPN сервером включим маршрутизацию на компьютере с OpenVPN сервером. Для этого запустим редактор системного реестра через меню поиска в пуске (regedt32.exe) и откроем следующий раздел: 

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters и в параметре IPEnableRouter укажем значение: 1. Затем перезапустим компьютер.


На этом настройка компьютера OpenVPN сервера закончена. Откроем сетевые подключения и видим новое подключение по локальной сети с IP адресом 192.168.100.1, данную сеть мы указали в конфигурации server.

Теперь надо перенаправить на интернет маршрутизаторе выбранный нами порт для работы с OpenVPN, указанный в конфигурационном файле server (в нашем случае 1197 tcp) до нашего OpenVPN сервера. Также, чтобы OpenVPN клиенты получили доступ к ресурсам нашей сети нужно на маршрутизаторе (или основном шлюзе сети) указать что сеть 192.168.100.0/24 находится за OpenVPN сервером.

Настройка OpenVPN клиента на Windows

Установим OpenVPN. Все значения оставим по умолчанию.

Соглашаемся с установкой TAP адаптера.

Далее скопируем файлы: ca, test, test.key с OpenVPN сервера в каталог клиента C:\Program Files\OpenVPN\config. Скопируем файл client из C:\Program Files\OpenVPN\sample-config в C:\Program Files\OpenVPN\config и отредактируем его с помощью блокнота.

client

dev tun

proto tcp

# Адрес и порт сервера

remote 95.95.95.95 1197

# Ключи должны лежать в папке с конфигом

ca ca.crt

cert test.crt

key test.key

nobind

persist-key

persist-tun

verb 3

# Добавление маршрутов

route-method exe

route-delay 5

route 192.168.1.0 255.255.255.0 192.168.100.1

Далее заходим в управление компьютером → службы → и находим OpenVPN Service → ставим тип запуска автоматически, нажимаем применить и запустить.

На этом настройка компьютера с OpenVPN клиентом закончена. Откроем сетевые подключения и видим новое подключение по локальной сети с IP адресом 192.168.100.10.

Запустим ping с OpenVPN клиента до нашего OpenVPN сервера. Как видим отправлено 4, получено 4, потеряно 0. OpenVPN работает!!!

Настройка клиентов OpenVPN для Виртуальной глобальной сети Azure

  • Чтение занимает 5 мин

В этой статье

Эта статья поможет вам настроить клиенты протокола OpenVPN® . Для подключения через протокол OpenVPN можно также использовать VPN-клиент Azure для Windows 10. Дополнительные сведения см. в статье Настройка VPN-клиента для подключений «точка — сеть» по протоколу OpenVPN. Аутентификация Azure AD.

Перед началом

Создайте пользовательскую конфигурацию VPN-подключения типа «точка — сеть». Убедитесь, что выбран тип туннеля «OpenVPN». Описание шагов см. в разделе о создании конфигурации подключения типа «точка — сеть» для Виртуальной глобальной сети Azure.

Клиенты Windows

  1. Загрузите и установите официальный клиент OpenVPN (версии 2.4 или выше) с веб-сайта OpenVPN.

  2. Скачайте пакет профиля VPN-клиента с портала Azure или используйте командлет New-AzVpnClientConfiguration в PowerShell.

  3. Распакуйте профиль. Затем откройте файл конфигурации vpnconfig.ovpn из папки OpenVPN в Блокноте.

  4. Экспортируйте сертификат клиента P2S, который вы создали и отправили. Ознакомьтесь со следующими статьями.

  5. Извлеките закрытый ключ и отпечаток base64 из PFX-файла. Это можно сделать несколькими способами. Это можно сделать с помощью OpenSSL на компьютере. Файл profileinfo.txt содержит закрытый ключ, отпечаток для ЦС и сертификат клиента. Не забудьте использовать отпечаток сертификата клиента.

    openssl pkcs12 -in "filename.pfx" -nodes -out "profileinfo.txt"
    
  6. Откройте profileinfo.txt в Блокноте. Чтобы получить отпечаток сертификата клиента (дочерний), выделите текст между «——BEGIN CERTIFICATE——» и «——END CERTIFICATE——» (включая эти строки) для дочернего сертификата и скопируйте его. Дочерний сертификат можно определить, просмотрев строку subject=/.

  7. Переключитесь на файл vpnconfig.ovpn, который вы открыли в Блокноте на шаге 3. Найдите раздел, указанный ниже, и замените весь код между cert и /cert.

    # P2S client certificate
    # please fill this field with a PEM formatted cert
    <cert>
    $CLIENTCERTIFICATE
    </cert>
    
  8. Откройте файл profileinfo.txt в Блокноте. Чтобы получить закрытый ключ, выделите текст между «——BEGIN PRIVATE KEY——» и «——END PRIVATE KEY——» (включая эти строки) и скопируйте его.

  9. Вернитесь к файлу vpnconfig.ovpn в Блокноте и найдите этот раздел. Вставьте закрытый ключ, заменив все между и key и /key.

    # P2S client root certificate private key
    # please fill this field with a PEM formatted key
    <key>
    $PRIVATEKEY
    </key>
    
  10. Не изменяйте остальные поля. Для подключения к VPN используйте заполненную конфигурацию на входе клиента.

  11. Скопируйте файл vpnconfig.ovpn в папку C:\Program Files\OpenVPN\config.

  12. Щелкните правой кнопкой мыши значок OpenVPN в области уведомлений и щелкните «Подключить».

Клиенты Mac

  1. Скачайте и установите клиент OpenVPN, например TunnelBlik.

  2. Скачайте пакет профиля VPN-клиента с портала Azure или используйте командлет New-AzVpnClientConfiguration в PowerShell.

  3. Распакуйте профиль. Откройте файл конфигурации vpnconfig.ovpn из папки OpenVPN в текстовом редакторе.

  4. Заполните раздел сертификата клиента подключения «точка — сеть» открытым ключом сертификата клиента P2S в формате base64. В сертификате с форматированием PEM вы можете открыть файл CER и скопировать ключ в формате base64, находящийся между заголовками сертификата. Дополнительные сведения о том, как экспортировать сертификат для получения закодированного открытого ключа, см. в следующих статьях.

  5. Заполните раздел секретного ключа закрытым ключом сертификата клиента P2S в base64. Дополнительные сведения о том, как извлечь закрытый ключ, см. в статье Экспорт закрытого ключа.

  6. Не изменяйте остальные поля. Для подключения к VPN используйте заполненную конфигурацию на входе клиента.

  7. Дважды щелкните файл профиля, чтобы создать профиль в Tunnelblik.

  8. Запустите Tunnelblik из папки приложения.

  9. Нажмите значок Tunneblik на панели задач и выберите подключение.

Важно!

Протокол OpenVPN поддерживают только iOS 11.0 и MacOS 10.13 и их более поздние версии.

Клиенты iOS

  1. Установите клиент OpenVPN (версии 2.4 или выше) из App Store.

  2. Скачайте пакет профиля VPN-клиента с портала Azure или используйте командлет New-AzVpnClientConfiguration в PowerShell.

  3. Распакуйте профиль. Откройте файл конфигурации vpnconfig.ovpn из папки OpenVPN в текстовом редакторе.

  4. Заполните раздел сертификата клиента подключения «точка — сеть» открытым ключом сертификата клиента P2S в формате base64. В сертификате с форматированием PEM вы можете открыть файл CER и скопировать ключ в формате base64, находящийся между заголовками сертификата. Дополнительные сведения о том, как экспортировать сертификат для получения закодированного открытого ключа, см. в следующих статьях.

  5. Заполните раздел секретного ключа закрытым ключом сертификата клиента P2S в base64. Дополнительные сведения о том, как извлечь закрытый ключ, см. в разделе Экспорт закрытого ключа на сайте OpenVPN.

  6. Не изменяйте остальные поля.

  7. Отправьте файл профиля (.ovpn) по электронной почте в учетную запись электронной почты, настроенную в приложении «Почта» на устройстве iPhone.

  8. Откройте сообщение электронной почты в приложении «Почта» на устройстве iPhone и нажмите вложенный файл.

  9. Нажмите Еще, если пункт Копировать в OpenVPN не отображается.

  10. Нажмите Копировать в OpenVPN.

  11. Нажмите ДОБАВИТЬ на странице Импорт профиля.

  12. Нажмите ДОБАВИТЬ на странице Импортированный профиль.

  13. Запустите приложение OpenVPN и сдвиньте переключатель на странице Профиль вправо, чтобы установить подключение.

Клиенты Linux

  1. Запустите новый сеанс терминала. Новый сеанс можно начать, нажав CTRL+ALT+Т.

  2. Для установки необходимых компонентов введите следующую команду.

    sudo apt-get install openvpn
    sudo apt-get -y install network-manager-openvpn
    sudo service network-manager restart
    
  3. Загрузите профиль VPN для шлюза. Это можно сделать со вкладки конфигурации «точка — сеть» на портале Azure.

  4. Экспортируйте сертификат клиента P2S, который вы создали и отправили в конфигурацию P2S на шлюзе. Ознакомьтесь со следующими статьями.

  5. Извлеките закрытый ключ и отпечаток base64 из PFX-файла. Это можно сделать несколькими способами. Это можно сделать с помощью OpenSSL на компьютере.

    openssl pkcs12 -in "filename.pfx" -nodes -out "profileinfo.txt"
    

    Файл profileinfo.txt содержит закрытый ключ, отпечаток для ЦС и сертификат клиента. Не забудьте использовать отпечаток сертификата клиента.

  6. Откройте файл profileinfo.txt в текстовом редакторе. Чтобы получить отпечаток сертификата клиента (дочерний), выделите текст между «——BEGIN CERTIFICATE——» и «——END CERTIFICATE——«, включая эти строки, для дочернего сертификата и скопируйте его. Дочерний сертификат можно определить, просмотрев строку subject=/.

  7. Откройте файл vpnconfig.ovpn и найдите раздел, показанный ниже. Замените весь код между cert и /cert.

    # P2S client certificate
    # please fill this field with a PEM formatted cert
    <cert>
    $CLIENTCERTIFICATE
    </cert>
    
  8. Откройте файл profileinfo.txt в текстовом редакторе. Чтобы получить закрытый ключ, выделите текст между «——BEGIN PRIVATE KEY——» и «——END PRIVATE KEY——» (включая эти строки) и скопируйте его.

  9. Откройте файл vpnconfig.ovpn в текстовом редакторе и найдите этот раздел. Вставьте закрытый ключ, заменив все между и key и /key.

    # P2S client root certificate private key
    # please fill this field with a PEM formatted key
    <key>
    $PRIVATEKEY
    </key>
    
  10. Не изменяйте остальные поля. Для подключения к VPN используйте заполненную конфигурацию на входе клиента.

  11. Чтобы подключиться с помощью командной строки, введите следующую команду:

    sudo openvpn --config <name and path of your VPN profile file>&
    
  12. Чтобы подключиться с помощью графического пользовательского интерфейса, перейдите в параметры системы.

  13. Щелкните + для добавления нового подключения VPN.

  14. В разделе Добавить VPN выберите Импорт из файла…

  15. Просмотрите файл профиля и дважды щелкните или выберите Открыть.

  16. Щелкните Добавить в окне Добавить VPN.

  17. Вы можете подключиться, выбрав для VPN Вкл. на странице Параметры сети или под значком сети на панели задач.

Дальнейшие действия

Дополнительные сведения о пользовательском VPN-подключении типа «точка — сеть» см. в статье о создании пользовательского соединения VPN с помощью Виртуальной глобальной сети Azure.

OpenVPN является товарным знаком OpenVPN Inc.

ресурсов сообщества | OpenVPN

Q: Я отредактировал свой статический ключ OpenVPN, изменив некоторые шестнадцатеричные байты, но ключ по-прежнему подключается к удаленному узлу, который использует исходный ключ. Это ошибка?

Когда я изменяю предварительно общий 2048-битный статический ключ на стороне инициатора туннеля (не тестировал другой способ), я в любом случае могу установить туннель и отправлять пакеты через туннель. Я не понимаю разделение и обработку ключей, как описано ниже, но я думаю, что ключи на обеих сторонах туннеля должны быть идентичны для создания туннеля.

Я могу изменить каждый Char в строке 2,3,4,7,8,9,10,11,12,13,14,15,16 без какого-либо эффекта и думаю, что это возможная ошибка.

A: Нет, это не ошибка. 2048-битный статический ключ разработан так, чтобы быть достаточно большим, чтобы из него можно было извлекать 512-битные ключи шифрования, дешифрования, отправки HMAC и получения HMAC.

Однако этот размер ключа слишком велик для текущего обычного использования OpenVPN. OpenVPN по умолчанию использует 128-битный шифр blowfish. Он также использует 160-битный HMAC-SHA1 в качестве криптографической подписи пакетов для защиты от подделки.Поскольку вы, вероятно, не указали параметр направления ключа, ключи шифрования / дешифрования для обоих направлений одинаковы, и ключи HMAC для обоих направлений также одинаковы.

Это означает, что OpenVPN фактически использует только 128 + 160 = 288 бит из файла — намного меньше, чем 2048 бит, которые доступны.

Ниже я покажу образец 2048-битного ключа OpenVPN, заключенный в скобки, чтобы показать, какие биты фактически используются для материала ключа, при условии, что настройки шифрования по умолчанию:

#
# 2048 бит OpenVPN статический ключ
#
—— BEGIN OpenVPN статический ключ V1 ——
[eac9ae92cd73c5c2d6a2338b5a22263a] 128 битов для шифра
4ef4a22326d2a996e0161d25d41150c8

38bebc451ccf8ad19c7d1c7ce09742c3 2047ba60f1d97d47c88f7ab0afafb2ce
[f702cb04c7d15ff2606736c1825e830a 160 бит для HMAC SHA1
7e30a796] 4b82825d6767a04b3c8f4583

d4928127262c3a8603776bd6da339f69 dece3bbfee35f1dceb7cbceaef4c6933
2c2cef8ac550ed15213b216b825ab31e

49840f99ff9df3c5f31156439ed6b99c 4fc1bff417d33d77134365e38c9d71cd

e294ba6e65d51703d6d4a629d5fc618e adddb889b8173ac79b4261328770bbbe

74294bc79e357c82af9ef53f2968be6a 007e6022da0a1a39f2ed5660f94a5926

35d72e5838dd78dd680d91f6edcf6988 —— END OpenVPN Статический ключ V1 ——

Как видите, на самом деле используются только строки 1, 5 и 6.И, конечно же, это полностью соответствует тому, что вы наблюдали.

Чтобы проверить это, запустите OpenVPN следующим образом:

openvpn —dev null —verb 7 —секретный ключ | grep ‘crypt:’

, где «ключ» — это файл, содержащий указанный выше ключ.

Статическое шифрование: шифр «BF-CBC», инициализированный 128-битным ключом
Статическое шифрование: КЛЮЧ ШИФРА: eac9ae92 cd73c5c2 d6a2338b 5a22263a
Статическое шифрование: использование 160-битного хэша сообщения «SHA1» для аутентификации HMAC
cd73cdACbff2: faticdACb02 606736c1 825e830a 7e30a796
Статическая расшифровка: шифр «BF-CBC», инициализированный 128-битным ключом
Статическая расшифровка: КЛЮЧ ШИФРА: eac9ae92 cd73c5c2 d6a2338b 5a22263a
Декодирование статической аутентификации: использование 160-битного сообщения KACS для HAC-кода HACSHA : f702cb04 c7d15ff2 606736c1 825e830a 7e30a796

Обратите внимание, что ключи, которые показаны в выходных данных OpenVPN, точно соответствуют заключенному в квадратные скобки разделу источника ключей.

Теперь, если вы хотите использовать больше ключевого материала, можно использовать два набора ключей шифрования / HMAC, по одному для каждого направления:

openvpn —dev null —verb 7 —secret key 0 | grep ‘crypt:’

(обратите внимание, что «0» после ключа выбирает одно симметричное направление — противоположный одноранговый узел будет использовать «1» для выбора другого направления).

Статическое шифрование: шифр «BF-CBC», инициализированный 128-битным ключом
Статическое шифрование: КЛЮЧ ШИФРА: eac9ae92 cd73c5c2 d6a2338b 5a22263a
Статическое шифрование: использование 160-битного хэша сообщений «SHA1» для аутентификации HMAC
cd73cdACb02: fstaticdACb02 606736c1 825e830a 7e30a796
Статическая расшифровка: шифр ‘BF-CBC’ инициализирован 128-битным ключом
Статическая расшифровка: CIPHER KEY: 2c2cef8a c550ed15 213b216b 825ab31e
Статическая расшифровка: Использование 160-битного хэша сообщения для HACry1 ‘HACry1’
: adddb889 b8173ac7 9b426132 8770bbbe 74294bc7

Теперь обратите внимание, что ключи шифрования и дешифрования больше не идентичны.Ключи шифрования извлекают ключевой материал из строк 1, 5 и 6 в файле ключей, а ключи дешифрования — из строк 9, 13 и 14.

Теперь противоположный узел будет использовать ключевое направление 1:

.

openvpn —dev null —verb 7 —secret key 1 | grep ‘crypt:’

Статическое шифрование: шифр «BF-CBC», инициализированный 128-битным ключом
Статическое шифрование: КЛЮЧ ШИФРА: 2c2cef8a c550ed15 213b216b 825ab31e
Статическое шифрование: использование 160-битного хэша сообщения «SHA1» для аутентификации HMAC
Static Encrypt817 9b426132 8770bbbe 74294bc7
Статическая расшифровка: шифр «BF-CBC», инициализированный 128-битным ключом
Статическая расшифровка: КЛЮЧ ШИФРА: eac9ae92 cd73c5c2 d6a2338b 5a22263a
Статическая расшифровка: Использование 160-битного хэша сообщения HACry1 для HACry1 : f702cb04 c7d15ff2 606736c1 825e830a 7e30a796

Обратите внимание, как меняются местами ключи шифрования и дешифрования по сравнению с примером направления ключа 1.

Итак, вы можете спросить, почему файл статических ключей OpenVPN такой большой, если в настоящее время используется такой небольшой процент битов? Ответ состоит в том, чтобы приспособить будущие шифры и хэши HMAC, которые используют большие ключи. Очевидно, что изменение формата файла проблематично с точки зрения совместимости, поэтому было выбрано 2048 бит, чтобы можно было получить два набора 512-битных ключей шифрования и HMAC для двух отдельных ключевых направлений.

Исходный код | OpenVPN

Использование разрабатываемых версий OpenVPN

Получение снимков OpenVPN

Мы предлагаем несколько различных типов сборок и снимков для разработки:

  • Установщики Windows, созданные на основе каждой фиксации
  • FreeBSD openvpn-devel port.Также можно использовать как отдельный исходный снимок на других платформах.

Обратите внимание, что эти снимки либо полностью не тестировались, либо тестировались очень кратко. Так что нет никаких гарантий, что они работают правильно. Тем не менее, в большинстве случаев они, вероятно, работают нормально.

Получение исходников с помощью git

Второй вариант — получить исходники с помощью Git. Этот метод предпочтительнее, так как он позволяет легко продолжать использовать последний код. Инструкции смотрите здесь.

Исходный код для OpenVPN 2 (серверная и клиентская библиотека)

Исходный код OpenVPN 2 доступен здесь.

Исходный код для OpenVPN 3 (клиентская библиотека)

Исходный код OpenVPN 3 доступен здесь.

Исходный код для OpenVPN 2 GUI для Windows

Исходный код графического интерфейса OpenVPN 2 для Windows доступен здесь.

Исходный код OpenVPN для Android

Исходный код OpenVPN для Android от Арне Швабе доступен здесь.

Исходный код для клиента OpenVPN 3 Linux

Исходный код клиента OpenVPN 3 Linux доступен здесь и здесь.

Исходный код для OpenVPN Connect v3

Программное обеспечение OpenVPN Connect v3 с графическим интерфейсом пользователя OpenVPN Inc., которое входит в состав OpenVPN Access Server и OpenVPN Cloud, не является открытым исходным кодом. Однако его можно бесплатно загрузить и использовать для подключения к серверам OpenVPN. Он использует клиентскую библиотеку OpenVPN 3 с открытым исходным кодом, указанную выше.

Корпус

Если вы используете исходные снимки / порты, вы можете извлечь их следующим образом:

  gzip -dc openvpn-.tar.gz | tar xvf -
компакт-диск openvpn- /  

В Git этот шаг можно пропустить. Следующая подготовка к сборке (не требуется для стабильных выпусков):

  autoreconf -vi  

Следующая настройка (см. Доступные параметры времени сборки в ./configure —help):

  ./конфигурация  

Наконец, скомпилируйте:

  марка [-j]  

После запуска make вы можете установить OpenVPN с помощью

.
  сделать установить  

Сборка на MacOS X с помощью homebrew

Homebrew не устанавливает библиотеки openssl по стандартным путям.Если вы получаете такие ошибки, как неопределенные символы для архитектуры x86_64: «_SSL_CTX_get0_certificate» …, вам необходимо передать CPPFLAGS / LDFLAGS (правильные значения отображаются в brew info openssl).

  make [-j] CPPFLAGS = -I / usr / local / opt / openssl / include LDFLAGS = -L / usr / local / opt / openssl / lib  

Отладка TAP-драйвера

Взгляните сюда.

Отладка OpenVPN

Если OpenVPN дает сбой, вы можете помочь разработчикам разобраться в проблеме, предоставив им информацию о сбое.Если вы используете выпущенную (стабильную) версию OpenVPN, вам следует установить пакеты openvpn debug и gdb, а затем запустить openvpn через gdb. На «тестировании» включите отладку перед компиляцией. В любом случае вы можете получить след аварии следующим образом:

  $ gdb / usr / sbin / openvpn
  

[информационное сообщение gdb … blablabla …]

(gdb) запустить —config [—other-arguments-you-might-pass]

[ждать сбоя]

(gdb) bt [должна появиться полная трассировка]

Включить дамп ядра

В некоторых случаях невозможно вызвать ошибку при запуске через gdb напрямую.В этом случае вы можете включить дампы ядра. В большинстве современных дистрибутивов и ОС * nix вам необходимо включить это из своей оболочки перед запуском OpenVPN.

  $ ulimit -c неограниченно  

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

  $ gdb openvpn {основной файл}
  

[информационное сообщение gdb … blablabla…]

(gdb) bt [должна появиться полная трассировка]

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

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

Сообщения об ошибках

Если вы не уверены, действительно ли ваша проблема является ошибкой, вы можете спросить об этом на каналах поддержки OpenVPN.

Если вы действительно обнаружили ошибку, посмотрите, было ли сообщено о той же проблеме в Trac и исправлена ​​ли она. Если вы обнаружили новую, не исправленную ошибку, убедитесь, что вы знаете, как эффективно сообщать об ошибках; хорошие отчеты об ошибках помогают быстро решить проблему. В каждом отчете об ошибке вы должны задокументировать несколько вещей:

  • Операционная система (e.грамм. OpenBSD 4.3)
  • Полный вывод openvpn —version, или …
  • … полное имя файла установщика Windows, который вы использовали
  • Соответствующие части клиентских и / или серверных журналов OpenVPN (если они есть) на глаголе 5 многословность (см. справочную страницу)
  • Если вы создали OpenVPN самостоятельно: в командной строке ./configure, которую вы использовали и вы хотите, чтобы это было исправлено как можно скорее, вы можете помочь, выполнив Git пополам.Этот метод описан здесь:

    • Поиск проблем — Git Bisect
    • Отладка с помощью Git

    Разделение пополам — это продвинутый метод, и от вас не ждут, что вы сделаете это до подачи отчетов об ошибках.

    Установка

    OpenVPN для [Windows 7 и Vista] — База знаний


    Чтобы подключиться к OpenVPN в Windows 7 и Vista, вам необходимо установить клиент OpenVPN и загрузить файл конфигурации VPN.

    Easy VPN Setup
    Загрузите OpenVPN, предварительно упакованный с нашими файлами конфигурации, и пропустите шаги настройки ниже!
    Скачать здесь: https: // www.frostvpn.com/downloads/FrostVPN_OpenVPN.exe

    Шаг 1
    Загрузите клиент OpenVPN для Windows 7 и Vista, мы рекомендуем использовать 32-разрядную версию, если вы не уверены, какую Windows используете.
    32bit — https://www.frostvpn.com/downloads/Openvpn_ALL_32.exe
    64bit — https://www.frostvpn.com/downloads/Openvpn_ALL_64.exe

    Step 2
    После загрузки файла дважды щелкните файл, чтобы запустить установщик.

    Step 3
    Появится окно установщика, нажмите «Далее», чтобы начать процесс установки.

    Step 4
    Следующее окно содержит условия, если вы согласны с условиями, нажмите «Я согласен».

    Шаг 5
    Выберите все компоненты для установки и нажмите «Далее».

    Step 6
    Появится новое окно с вопросом, хотите ли вы установить это программное обеспечение устройства. Нажмите «Установить».

    Step 7
    Процесс установки займет несколько минут.По завершении нажмите «Далее».

    Step 8
    OpenVPN успешно установлен! Нажмите «Готово».

    Шаг 9
    Загрузите файл конфигурации VPN ( Щелкните здесь, чтобы перейти к файлам конфигурации VPN ). Есть 2 способа загрузки файлов конфигурации * .ovpn.

    Шаг 10
    После загрузки сохраните файл конфигурации сервера OVPN, который вы хотите использовать, в C: \ Program Files \ OpenVPN \ config (64-битный OpenVPN) или C: \ Program Files (x86) \ Config (32-битный OpenVPN).

    Step 11
    Перейдите на рабочий стол, там должен быть значок OpenVPN. Щелкните правой кнопкой мыши значок и перейдите в свойства. Выберите вкладку «Совместимость» и убедитесь, что выбрано «Запускать эту программу от имени администратора». Затем нажмите ОК.

    Step 12
    Теперь вы готовы запустить OpenVPN! Запустите OpenVPN, дважды щелкнув графический интерфейс OpenVPN на рабочем столе или в меню «Пуск».

    Step 13
    Щелкните правой кнопкой мыши значок OpenVPN в правом нижнем углу.Должно появиться меню со всеми файлами OVPN, которые были загружены в папку Config. Для подключения выберите сервер, к которому вы хотите подключиться, и нажмите «Подключиться».

    Шаг 14
    Появится всплывающее окно с запросом на ввод имени пользователя и пароля FrostVPN из электронного письма с «активацией VPN». После ввода имени пользователя и пароля нажмите OK, чтобы подключиться к нашим VPN-серверам.

    Step 15
    После подключения к нашим серверам в правом углу появится всплывающее окно.Он скажет что-то вроде «сервер теперь подключен». Назначенный IP: 10.8.0.xx.

    Step 16
    Теперь вы подключены к FrostVPN! Вы также можете подтвердить, что подключены к нашей VPN, перейдя на ipchicken.com.

    Как настроить OpenVPN GUI для Windows (все версии) — База знаний

  • Сначала загрузите установщик Windows OpenVPN GUI 2.3 по одной из ссылок ниже:

    Запустите загруженный установщик и следуйте приведенным ниже инструкциям по установке:

    1.) Щелкните кнопку «Далее».

  • 2.) Щелкните кнопку «Я согласен».

  • 3.) Щелкните кнопку «Далее».

  • 4.) Нажмите кнопку «Установить».

  • При появлении следующего сообщения нажмите «Установить».

  • 6.) Щелкните кнопку «Далее».

  • 7.) Нажмите кнопку «Готово».

  • 8.) ДАЛЕЕ, нажмите здесь, чтобы загрузить файлы конфигурации TorGuard OpenVPN, и распакуйте их содержимое в папку установки OpenVPN по следующему пути: C: \ Program Files \ OpenVPN \ config .

  • 9.) Теперь на панели инструментов вы должны увидеть символ OpenVPN (два красных экрана). У вас также должен быть значок графического интерфейса OpenVPN на рабочем столе.

    Найдите значок графического интерфейса OpenVPN на рабочем столе, щелкните его правой кнопкой мыши и выберите «Свойства» в контекстном меню.

    10.) Щелкните Изменить настройки для всех пользователей.
    a) В окне «Свойства» отметьте Запустить эту программу от имени администратора .
    b) Щелкните OK, чтобы закрыть окно свойств.
    c) Щелкните OK, чтобы закрыть окно свойств графического интерфейса OpenVPN.

    Как подключиться

  • 11.)
    a) Найдите значок графического интерфейса OpenVPN на рабочем столе и дважды щелкните его, чтобы запустить OpenVPN.
    b) На панели задач щелкните правой кнопкой мыши значок графического интерфейса OpenVPN.
    c) Найдите сайт, к которому нужно подключиться, в меню и выберите «Подключиться» в подменю сайта.
    d) Введите имя пользователя и пароль TorGuard VPN, когда будет предложено, и нажмите OK.
    e) Значок графического интерфейса OpenVPN на панели задач станет зеленым после того, как будет установлено безопасное соединение.

  • Руководство

    : Создание VPN с клиентским программным обеспечением OpenVPN connect и Windows Server 2019

    Введение

    VPN (виртуальная частная сеть) — это виртуальная частная сеть, которая позволяет вам безопасно подключаться к Интернету для удаленного доступа к ИТ-сети вашей компании.Таким образом, через VPN можно получить доступ к услугам и ресурсам компании даже из ненадежной сети, как если бы вы физически присутствовали на месте.

    VPN могут быть реализованы с помощью обычных операционных систем, включая Windows, и таких сервисов, как OpenVPN. Это программное обеспечение с открытым исходным кодом, которое позволяет создавать зашифрованный виртуальный туннель на основе протоколов TLS / SSL (Transport Layer Security / Secure Sockets Layer), используя сертификаты, чтобы разрешить трафику безопасно проходить между сервером и одним или несколькими клиентами.

    В этом руководстве вы узнаете, как реализовать VPN на своем облачном сервере, установив и настроив клиентское программное обеспечение OpenVPN connect на Windows Server 2019.

    Предпосылки

    Для подключения к одной сети два или более устройства (клиент и сервер), подключенные к VPN, должны иметь доступ к порту 1194.

    Это можно сделать, разрешив трафик UDP на этот порт, добавив правило к вашему брандмауэру.

    Установка OpenVPN

    Первым делом загрузите установщик OpenVPN для Windows Server 2019 прямо с официального сайта.

    После загрузки файла откройте его и запустите процедуру установки. Убедитесь, что вы поставили галочку в разделе «Сценарии управления сертификатами EasyRSA 2», а затем нажмите «Далее».

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

    Создание сертификатов и ключей для сервера

    После завершения этапа предварительной установки OpenVPN сгенерируйте сертификаты и ключи для доступа к VPN.

    Сначала откройте терминал вашего Windows Server. Для этого нажмите «Пуск», введите «cmd» и щелкните правой кнопкой мыши значок командной строки, затем выберите «Запуск от имени администратора».

    Перейдите в папку, в которой установлен OpenVPN, и запустите скрипт «init-config».

      cd "C: \ Program Files \ OpenVPN \ easy-rsa"  
      инициализация конфигурации  

    Должен быть показан результат, аналогичный показанному на рисунке ниже.

    На этом этапе примените изменения к «vars.bat »в папке« C: \ Program Files \ OpenVPN \ easy-rsa »:

      блокнот vars.bat  

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

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

    После ввода этой информации сохраните файл и закройте текстовый редактор. Затем введите следующие команды, чтобы применить эти изменения:

      варс  
      чистые  

    Затем начните создание сертификата. В терминале (запущенном от имени администратора и всегда в папке «C: \ Program Files \ OpenVPN \ easy-rsa») введите:

      build-ca  

    Если файл «vars» уже был отредактирован с вашей информацией, она уже будет присутствовать в квадратных скобках каждого обязательного поля.В этом случае просто нажмите «Enter», чтобы выбрать это значение в качестве параметра по умолчанию.

    С другой стороны, элементу «Общее имя» нужно дать легко запоминающееся имя r: в этом случае будет использоваться «OpenVPN-CA».

    Чтобы убедиться, что операция создания сертификата прошла успешно, в папке easy-rsa \ keys будут созданы два файла «ca.crt» и «ca.key».

    На этом этапе создайте ключи сервера. Для запуска процедуры используйте команду:

      build-key-server имя_сервера  

    В этом случае присвойте серверу общее имя, указав его в поле «Общее имя».Как показано на следующем изображении, здесь использовалось имя «сервер».

    В конце процедуры вам будет предложено дважды подтвердить сохранение набора данных. В обоих случаях введите y и нажмите «Enter».

    Генерация ключа для клиента

    Поскольку в VPN все подключенные устройства должны быть узнаваемыми, клиентам также нужна пара ключей для связи. Все еще внутри вашего сервера, с терминала и в папке «C: \ Program Files \ OpenVPN \ easy-rsa») введите:

      ключ сборки имя_клиента  

    В этом случае укажите общее имя для назначения Клиенту (как на изображении, в этом случае использовался «клиент-рабочий стол») в пункте «Общее имя».

    Теперь необходимо запустить криптографический протокол Диффи-Хеллмана, позволяющий двум собеседникам (Сервер и Клиент) согласовать, какой «общий» ключ они будут использовать в качестве ключа аутентификации для идентификации друг друга. Затем введите:

      сборка dh  

    Эта операция может занять много времени в зависимости от оборудования сервера и не требует вмешательства пользователя.

    Наконец, сгенерируйте ключ «ta.key» для дальнейшего повышения безопасности VPN.Точнее, определите аутентификацию TLS, которая проверяет целостность пакетов, движущихся по сети. Затем введите:

      "C: \ Program Files \ OpenVPN \ bin \ openvpn.exe" --genkey --secret "C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ ta.key"  

    Файл конфигурации сервера

    OpenVPN уже предоставляет образцы файлов конфигурации, которые можно использовать для создания конфигурации, необходимой для правильного функционирования VPN.

    Откройте Пуск -> Все программы -> OpenVPN -> Образцы файлов конфигурации OpenVPN и скопируйте файл «server.ovpn «в папку» «C: \ Program Files \ OpenVPN \ easy-rsa \ keys». После копирования откройте его в Блокноте:

      блокнот "C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ server.ovpn"  

    Затем определите предметы:

    • ок. Crt
    • сертификат server.crt
    • ключ server.key
    • dh dh3048.pem

    и замените их на:

    • ca «C: \ Program Files \ OpenVPN \ config \ ca.crt»
    • cert «C: \ Program Files \ OpenVPN \ config \ server.crt «
    • ключ «C: \ Program Files \ OpenVPN \ config \ server.key»
    • dh «C: \ Program Files \ OpenVPN \ config \ dh3048.pem»

    Примените эти изменения, сохраните и закройте файл.

    Файл конфигурации клиента

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

    Откройте Пуск -> Все программы -> OpenVPN -> Образцы файлов конфигурации OpenVPN и скопируйте файл «client.ovpn «в папку» «C: \ Program Files \ OpenVPN \ easy-rsa \ keys». После копирования переименуйте его, присвоив ему то же имя «Общее имя», которое использовалось на этапе генерации ключа (в данном случае «клиент-рабочий стол»), и откройте его в Блокноте.

      блокнот "C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ client-desktop.ovpn"  

    Затем определите предметы:

    • ок. Crt
    • сертификат server.crt
    • ключ server.key

    и замените их на:

    • ca «C: \ Program Files \ OpenVPN \ config \ ca.crt «
    • cert «C: \ Program Files \ OpenVPN \ config \ client-desktop.crt»
    • ключ «C: \ Program Files \ OpenVPN \ config \ client-desktop.key»

    Также определите удаленную запись my-server-1 1194 и замените «my-server-1» на IP-адрес вашего Сервера. Примените эти изменения, сохраните и закройте файл.

    На этом этапе скопируйте следующие файлы:

    • ca.crt
    • ключ
    • дх3048.pem
    • server.crt
    • server.key
    • server.ovpn

    Внутри папки «C: \ Program Files \ OpenVPN \ config», операция, которую можно выполнить напрямую с помощью инструмента robocopy .

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

    Просто скопируйте следующие файлы:

    • ca.crt
    • т.ключ
    • client-desktop.crt
    • client-desktop.key
    • client-desktop.ovpn

    В вашем клиенте в папке «C: \ Program Files \ OpenVPN \ config \».

    NB графический интерфейс OpenVPN должен быть уже установлен на клиенте, как объяснялось в начале руководства для сервера.

    На этом этапе щелкните Пуск -> Все программы -> OpenVPN -> OpenVPN GUI как на сервере, так и на клиенте.

    Графический интерфейс OpenVPN откроется в панели задач в правом нижнем углу. Щелкните правой кнопкой мыши соответствующий значок OpenVPN, затем нажмите «Подключиться».

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

    Как настроить OpenVPN на Windows Server 2019

    Как настроить OpenVPN на Windows Server 2019.Openvpn в настоящее время является самым популярным и широко используемым протоколом в качестве VPN. В отличие от других протоколов туннелирования на основе IPSec (таких как L2tp), Openvpn полагается на SSL / TLS для аутентификации и шифрования данных. В этой статье мы научим вас, как установить OpenVpn на Windows Server 2019.

    Эта стандартная технология безопасности предназначена для создания безопасных удаленных подключений из одного места в другое или из одной точки в другую. Использование SSL для защиты финансовых транзакций, передачи данных, электронной почты и прочего очень популярно.

    OpenVPN совместим со всеми основными операционными системами, такими как Windows, Android, iOS, Mac и Linux. Openvpn имеет открытый исходный код и поддерживает 256-битное шифрование.

    Купить виртуальный частный сервер

    OpenVPN состоит из трех частей:

    1. Сервер OpenVPN-AS
    2. Веб-интерфейс администратора / графический интерфейс администратора
    3. Соединение Рекомендуемая статья для клиентов

    : Как временно или навсегда отключить SELinux

    Установка OpenVPN

    На сервере Windows мы начинаем с загрузки установщика Windows, а затем запускаем его на нашем сервере Windows.

    Сертификаты и ключи

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

    Перейдите к

    Перейдите по следующему пути:

      C: \ Program Files \ OpenVPN \ easy-rsa  

    Папка с предварительными условиями

    административная командная строка:

    1. Откройте меню «Пуск» и введите cmd. Затем щелкните правой кнопкой мыши в командной строке и выберите «Запуск от имени администратора».

    2. Щелкните правой кнопкой мыши в командной строке.Нажмите Да в окне «Контроль учетных записей пользователей » .

    3. Перейдите в папку ниже:

      cd "C: \ Program Files \ OpenVPN \ easy-rsa"  

    4. Теперь вы можете начать настройку OpenVPN:

      init-config  

    5. На этом шаге вам нужно открыть файл vars.bat в текстовом редакторе:

      notepad vars.bat  

    6. Отредактируйте следующие строки, переключив «US», «CA, » так далее.с данными вашего бизнеса.

      установить KEY_COUNTRY = US установить KEY_PROVINCE = CA установить KEY_CITY = SanFrancisco установить KEY_ORG = OpenVPN установить [электронная почта защищена]  

    7. Сохраните файл текстового редактора и выйдите из него.

    Примечание 1: Поля KEY_CN и KEY_NAME будут уникальными для каждого запроса сборки.

    Примечание 2: Параметры KEY_CN и KEY_NAME относятся к полю общего имени и имени сертификата.

    Примечание 3: Параметр KEY_OU относится к «организационной единице» и может иметь любое значение, если для этого нет требований.

    Note4: Значения PKCS11_ относятся к настройкам, используемым для аппаратных модулей безопасности и смарт-карт, если вы их используете.

    На следующем шаге выполните следующие команды:

      vars clean-all  

    Building Certificates and Keys

    1. Для создания сертификата и ключа центра сертификации (CA) нам потребуется для выполнения следующей команды:

      build-ca  

    2. Вам будет предложено ввести вашу страну, штат и город. Эти параметры также будут иметь значения по умолчанию, которые указаны в скобках.

      Центр сертификации «OpenVPN-CA»: Название страны (двухбуквенный код) [США]: Название штата или провинции (полное имя) [CA]: Название населенного пункта (например, город) [SanFrancisco]: Название организации (например, компании) [OpenVPN]: Название организационной единицы (например, раздел) []: Общее имя (например, ваше имя или имя хоста вашего сервера) []: Адрес электронной почты OpenVPN-CA [[защищенный адрес электронной почты]]:  

    3. Используя следующую команду, мы запускаем сертификат и ключ сервера:

      build-key-server server  
    • При появлении запроса введите «Общее имя » как « server »
    • Когда будет предложено подписать сертификат, введите « y »
    • При появлении запроса на фиксацию введите « y »

    Сертификаты и ключи сервера

      C: \ Program Files \ OpenVPN \ easy-rsa> build-key- сервер.bat Создание закрытого ключа RSA ............................................ .................................................. .................................................. .................................................. ............................................ ++++ .. .............................. ++++ запись нового закрытого ключа в 'keys \ .key' ----- Вас сейчас попросят ввести информацию, которая будет включена в ваш запрос на сертификат. То, что вы собираетесь ввести, называется отличительным именем или DN.Здесь довольно много полей, но вы можете оставить некоторые пустыми. Для некоторых полей будет значение по умолчанию. Если вы введете '.', Поле останется пустым. ----- Название страны (двухбуквенный код) [США]: Название штата или провинции США (полное название) [MI]: Название населенного пункта (например, город) [Lansing]: Название организации (например, компания) [OpenVPN] : Название организационной единицы (например, раздел) [changeme]: Общее имя (например, ваше имя или имя хоста вашего сервера) [changeme]: Имя сервера [changeme]: Адрес электронной почты [[email protected]]: Пожалуйста, введите следующее 'extra 'атрибуты, которые будут отправлены с вашим запросом на сертификат. Пароль запроса []: XXXXXXXXXXXXXXXX Необязательное название компании []: Используя конфигурацию из openssl-1.0.0.cnf Не удается открыть ключи / index.txt.attr для чтения, Нет такого файла или каталога 1832: ошибка: 02001002: системная библиотека: fopen: Нет такого файла или каталога: crypto / bio / bss_file.c: 74: fopen ('keys / index.txt.attr', 'r') 1832: ошибка: 2006D080: подпрограммы BIO: BIO_new_file: нет такого файла: crypto / bio / bss_file.c: 81: Убедитесь, что запрос соответствует подписи Подпись ok Отличительное имя субъекта выглядит следующим образом countryName: PRINTABLE: 'US' stateOrProvinceName: PRINTABLE: 'MI' localityName: PRINTABLE: 'Lansing' organizationName: PRINTABLE: 'OpenVPN' organizationUnitName: PRINTABLE: 'changeme' commonName: PRINTABLE: 'Server' name: ПЕЧАТЬ: 'changeme' emailAddress: IA5STRING: '[email protected]' Сертификат должен быть сертифицирован до 24 декабря 19:01:08 2029 по Гринвичу (3650 дней) Подпишите сертификат? [y / n]: y 1 из 1 запросов на сертификат сертифицирован, зафиксировать? [y / n] y Записать базу данных с 1 новой записью База данных обновлена ​​C: \ Program Files \ OpenVPN \ easy-rsa>  

    Сертификаты и ключи клиентов

    Для каждого клиента, который будет подключаться к серверу, мы должны выбрать уникальное имя для идентификации этого компьютера пользователя, такое как «Michael-PC» в примере ниже:

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

      C: \ Program Files \ OpenVPN \ easy-rsa> build-key Michael-PC Создание закрытого ключа RSA ...................... .................................................. .................................................. .................................................. . ++++ ............................................. ................................. ++++ запись нового закрытого ключа в 'keys \ Michael-PC.key '----- Вас попросят ввести информацию, которая будет включена в ваш запрос на сертификат. То, что вы собираетесь ввести, называется отличительным именем или DN. Здесь довольно много полей, но вы можете оставить некоторые пустыми. Для некоторых полей будет значение по умолчанию. Если вы введете '.', Поле останется пустым. ----- Название страны (двухбуквенный код) [США]: Название штата или провинции (полное название) [MI]: Название населенного пункта (например, город) [Lansing]: Название организации (например, компания) [OpenVPN]: Название организационной единицы (например, раздел) [changeme]: Общее имя (например, ваше имя или имя хоста вашего сервера) [changeme]: Имя Michael-PC [changeme]: Адрес электронной почты Майкла Джордана [[email protected]]: Пожалуйста, введите следующие «дополнительные» атрибуты, которые будут отправлены с вашим запросом на сертификат. Пароль запроса []: XXXXXXXXXXXXXXXX Необязательное название компании []: Использование конфигурации из openssl-1.0.0.cnf Убедитесь, что запрос соответствует подписи Подпись ok Отличительное имя субъекта имеет следующий вид countryName: PRINTABLE: 'US' stateOrProvinceName: PRINTABLE: 'MI' localityName: PRINTABLE: 'Lansing' organizationName: PRINTABLE: 'OpenVPN' organizationUnitName: PRINTABLE : 'changeme' commonName: ПЕЧАТЬ: 'Michael-PC' имя: ПЕЧАТЬ: 'Michael Jordan' emailAddress: IA5STRING: '[email protected]' Сертификат должен быть сертифицирован до 24 декабря 19:06:10 2029 по Гринвичу (3650 дней) Подпишите сертификат? [y / n]: y 1 из 1 запросов на сертификат сертифицирован, зафиксировать? [y / n] y Записать базу данных с 1 новой записью База данных обновлена ​​C: \ Program Files \ OpenVPN \ easy-rsa>  

    В этой части нам нужно сгенерировать параметры «Диффи Хеллмана», используя build-dh команда.Этот шаг необходим для настройки модели шифрования.

      C: \ Program Files \ OpenVPN \ easy-rsa> build-dh.bat Создание параметров DH, безопасное простое число длиной 2048 бит, генератор 2 Это займет много времени .......... ....................... + .......................... .................................................. .......................... + ....................... .................................................. .................... + ............................. ..................................................... + .................................................. ....... ........................................... .................................. + ............... ............. + .......... + ........ + ................ ............................ + ..................... ......................... + .... ++ * ++ * ++ * ++ * C: \ Program Files \ OpenVPN \ easy-rsa>  

    Создайте общий секретный ключ (который требуется при использовании tls-auth):

      "C: \ Program Files \ OpenVPN \ bin \ openvpn.exe "--genkey --secret" C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ ta.key " 

    Файлы конфигурации

    OpenVPN предоставляет образцы данных конфигурации, которые можно легко найти с помощью меню« Пуск » :

    Откройте меню «Пуск» . , щелкните «Все программы». Затем выберите «Образцы файлов конфигурации OpenVPN» в параметрах OpenVPN.

    Файл конфигурации сервера

    1. Скопируйте образец файла «конфигурации сервера» на папка easy-rsa.Эта команда и ее выходные данные выглядят следующим образом:

      copy "C: \ Program Files \ OpenVPN \ sample-config \ server.ovpn" "C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ server.ovpn" C : \ Program Files \ OpenVPN \ easy-rsa> "C: \ Program Files \ OpenVPN \ bin \ openvpn.exe" --genkey --secret "C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ ta.key "C: \ Program Files \ OpenVPN \ easy-rsa> скопировать" C: \ Program Files \ OpenVPN \ sample-config \ server.ovpn "" C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ server.ovpn " Скопирован 1 файл (ы). C: \ Program Files \ OpenVPN \ easy-rsa>  

    2. Теперь вам нужно отредактировать файл server.ovpn.

      блокнот "C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ server.ovpn"  

    3. Найдите в файле следующие строки:

      ca.crt cert server. crt key server.key dh dh3048.pem  

    4. Затем отредактируйте их следующим образом:

      ca "C: \ Program Files \ OpenVPN \ config \ ca.crt" cert "C : \ Program Files \ OpenVPN \ config \ server.crt "ключ" C: \ Program Files \ OpenVPN \ config \ server.key "dh" C: \ Program Files \ OpenVPN \ config \ dh3048.pem  

    5. Наконец, сохраните и закройте файл.

    Настройка OpenVPN на Windows Server.

    Файлы конфигурации клиента

    Модификация файла клиента очень похожа на изменения конфигурации сервера.

    Скопируйте образец файл конфигурации сервера в папку easy-rsa с общим именем клиента в качестве имени файла.

    Помните : у каждого клиента должно быть уникальное имя файла.

      копия "C: \ Program Files \ OpenVPN \ sample-config \ client.ovpn" "C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ Michael-PC.ovpn" C: \ Program Files \ OpenVPN \ easy-rsa> copy "C: \ Program Files \ OpenVPN \ sample-config \ client.ovpn" "C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ Michael-PC.ovpn" Скопировано 1 файл (ы). C: \ Program Files \ OpenVPN \ easy-rsa>  
    Отредактируйте файл конфигурации клиента.
      блокнот "C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ Michael-PC.ovpn " 

    1. Найдите в файле следующие настройки и отредактируйте их следующим образом:

      ca ca.crt cert client.crt key client.key к ca" C: \ Program Files \\ OpenVPN \ config \ ca.crt "cert" C: \ Program Files \ OpenVPN \ config \ Michael-PC.crt "ключ" C: \ Program Files \ OpenVPN \ config \ Michael- PC.key " 

    2. Затем мы отредактируем строку» my-server-1 «, заменив ее общедоступным IP-адресом сервера или доменным именем.

      remote my-server-1 1194 # Имя хоста / IP и порт сервера. # У вас может быть несколько удаленных записей # для балансировки нагрузки между серверами. удаленный my-server-1 69.16.236.167; удаленный my-server-2 1194  

    3. Сохраните и закройте файл.

    Копирование файлов клиента и сервера в соответствующие каталоги

    Теперь вы можете скопировать эти файлы из C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ в C: \ Program Files \ OpenVPN \ config \ на сервер с помощью команды robocopy :

    • ca.crt
    • ta.key
    • dh3048.pem
    • server.crt
    • server.key
    • server.ovpn

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

      C: \ Program Files \ OpenVPN \ easy-rsa> robocopy" C : \ Program Files \ OpenVPN \ easy-rsa \ keys \ "" C: \ Program Files \ OpenVPN \ config \ "ca.crt ta.key dh3048.pem server.crt server.key server.ovpn ---------------------------------------- --------------------------------------- ROBOCOPY :: Надежное копирование файлов для Windows --- -------------------------------------------------- -------------------------- Начато: пятница, 27 декабря 2019 г., 12:16:02 Источник: C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ Dest: C: \ Program Files \ OpenVPN \ config \ Files: ca.crt ta.key dh3048.pem server.crt server.key server.ovpn Параметры: / DCOPY: DA / COPY: DAT / R : 1000000 / Вт: 30 -------------------------------------------- ---------------------------------- 4 C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ 100 % Новый файл 2482 ок.crt 100% Новый файл 432 dh3048.pem 100% Новый файл 10901 server.ovpn 100% Новый файл 657 ta.key ------------------------- -------------------------------------------------- --- Всего скопированных пропущенных несоответствий FAILED Extras Dirs: 1 0 1 0 0 0 Files: 4 4 0 0 0 0 Bytes: 14.1 k 14.1 k 0 0 0 0 Times: 0:00:00 0:00:00 0:00 : 00 0:00:00 Скорость: 452250 Байт / сек. Скорость: 25,877 Мбайт / мин. Завершено: 16 июля 2020 г., 12:16:02 C: \ Program Files \ OpenVPN \ easy-rsa>  

    Вы можете скопировать следующие файлы из C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ на сервере в C: \ Program Files \ OpenVPN \ config \ для каждого клиента, который будет использовать VPN (например,g., Michael-PC, в этом примере)

    • ca.crt
    • ta.key
    • Michael-PC.crt
    • Michael-PC.key
    • Michael-PC.ovpn
    Рекомендуемая статья: Установить LAMP стек в Ubuntu 18.04 [быстрый старт]

    Настройки брандмауэра

    Если у вас возникли проблемы с подключением, убедитесь, что вы установили правило на брандмауэре сервера, разрешающее входящий UDP-трафик на порт 1194.(Win + R «wf.msc»)

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

    Настройка OpenVPN на Windows Server.

    Гудлак.

    Также см .:

    Учебное пособие по установке OpenSSL на Windows Server 2019

    Как установить и активировать SSL-сертификат

    Учебное пособие Установка SSL-сертификата на IIS Web Server

    Узнайте, как открыть порт на брандмауэре Windows

    Конфигурация OpenVPN для клиента Windows со ссылкой для скачивания

    Прежде всего, вы должны найти соответствующую информацию о вашей службе VPN, такую ​​как имя пользователя, пароль и IP-адрес VPN.

    Не пропустите доступные предложения веб-хостинга до 1 доллара США →

    Вы можете найти эту информацию, выполнив следующие действия:

    1. Войдите в свою учетную запись в области клиентов: https://billing.hostens.com/clientarea/

    2. Выберите «Службы» слева и нажмите «VPN».

    3. Выберите свой VPN-сервис из списка, и вы попадете на страницу с основной информацией

    Загрузите и установите OpenVPN

    1. Сначала вам нужно установить программное обеспечение OpenVPN GUI.Мы рекомендуем скачать OpenVPN по этой ссылке:

    https://openvpn.net/index.php/open-source/downloads.html

    Выберите установщик openvpn-install-2.4.4-I601.exe для Windows Vista и более поздних версий.

    2. Установите приложение OpenVPN. Подробное руководство по установке приложения можно найти здесь:

    https://openvpn.net/index.php/access-server/docs/admin-guides-sp-859543150/howto-connect-client-configuration/395-how-to-install-the-openvpn-client-on -окна.html

    3. Загрузите файл конфигурации OpenVPN для Windows из клиентской системы. Нажмите кнопку «Загрузить», выберите «Сохранить» в диалоговом окне загрузки.
    По завершении загрузки щелкните «Открыть папку».

    4. Теперь, после установки графического интерфейса OpenVPN, вам необходимо вставить ваш уникальный файл конфигурации в папку конфигурации графического интерфейса OpenVPN.
    Скопируйте загруженный файл конфигурации. Теперь перейдите на свой диск «C:», затем в папку «Program Files», затем в папку «OpenVPN» и, наконец, в папку «config».
    Щелкните правой кнопкой мыши и выберите «Вставить». После вставки файла конфигурации содержимое папки должно выглядеть так:

    5. Теперь перейдите на Рабочий стол. Перед запуском графического интерфейса OpenVPN вам необходимо изменить параметры приложения. Если вы этого не сделаете, вы получите сообщение «Ошибка создания ключа HKLM \ SOFTWARE \ OpenVPN-GUI». сообщение об ошибке, или приложение запустится и подключится, но IP-адрес не изменится (потому что не будет никаких разрешений на изменение таблицы маршрутизации для отправки всего трафика через VPN-туннель).Для этого щелкните правой кнопкой мыши значок графического интерфейса OpenVPN и выберите «Свойства». Перейдите на вкладку «Совместимость», установите флажок «Запускать эту программу от имени администратора», нажмите кнопку «ОК». Дважды щелкните значок графического интерфейса OpenVPN на рабочем столе. Это запустит приложение и создаст маленький значок в форме экрана компьютера и замок на панели задач.

    6. Щелкните правой кнопкой мыши значок и выберите «Подключиться» и введите учетные данные для входа, которые вы можете найти в клиентской системе.

    7.Программа покажет окно подключения с журналом, а значок на панели задач станет желтым. Когда VPN подключен, окно журнала исчезнет, ​​а значок станет зеленым.

    .

    Leave a comment