Установка OpenVPN на Windows VPS

Видео-инструкция установки и настройки

Установка

1) На сайте openvpn.net переходим в раздел Community. Во вкладке Downloads нажимаем на Community Downloads.

2) Выбираем установочный файл в соответствии с разрядностью ОС (32bit/64bit), установленной на Windows сервер и скачиваем его.

Выбрать Windows VPS для установки OpenVPN

3) Запускаем установочный файл и выполняем шаги установки.

4) На шаге выбора компонентов рекомендуется установить галочки перед OpenSSL Utilities и OpenVPN RSA Certificate Management Scripts, чтобы стало возможным сгенерировать SSL сертификат для шифрованного соединения.

Openvpn на Windows VPS

5) В процессе установки OpenVPN программа может запросить подтверждение установки TAP-драйвера. Данный запрос необходимо подтвердить нажатием на кнопку Установить.

Openvpn на Windows VPS

6) На этом процесс установки завершается.

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

Рассмотрим пример настройки OpenVPN-соединения с использованием самоподписанного SSL-сертификата.

1) Запускаем командную строку.

Пуск (Start) -> Выполнить (Run) -> cmd

2) Переходим в директорию C:\Program Files\OpenVPN\easy-rsa при помощи команды:

cd \Program Files\OpenVPN\easy-rsa

3) Запускаем файл init-config.bat в командной строке:

init-config.bat

После запуска файла будет создан файл vars.bat.

4) Файл vars.bat необходимо открыть в текстовом редакторе (блокнот или Wordpad) и изменить данные для подписи ключей на свои личные. Отредактировать можно информацию в следующих строках:

set KEY_COUNTRY=US		#Страна
set KEY_PROVINCE=CA		#Область
set KEY_CITY=SanFrancisco		#Город
set KEY_ORG=OpenVPN	#Название компании
set KEY_EMAIL=mail@host.domain		#Контактный e-mail

Также, в случае отсутствия записи вида:

set OPENSSL_CONF=C:\Program Files\OpenVPN\easy-rsa\openssl-1.0.0.cnf

необходимо её добавить под строкой:

set KEY_CONFIG=openssl-1.0.0.cnf

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

5) Для создания index и serial файлов, выполняем поочередно следующие команды в командной строке:

vars
clean-all

6) Следующей командой создается СА-ключ, которым будет подписываться будущий SSL-сертификат. После запуска команды будут запрошены значения параметров. Если до этого вы внесли корректировки в файл vars.bat, то на параметры, указанные в 4-м шаге можно отвечать путём нажатия Enter. Исключением является параметр – Common Name. В нём необходимо ввести хостнейм сервера, либо доменное имя.

build-ca

7) Создаем ключ Диффи-Хельмана.

build-dh

8) Далее создаем сертификат и ключ для сервера:

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

В нашем случае будет следующая команда:

build-key-server server

Заполнение производится по аналогии 6-го шага. В поле Common Name в нашем случае указываем server. На оба вопроса "Sign the certificate? [y/n]" и "1 out of 1 certificate requests certified, commit? [y/n]" отвечаем согласием путём ввода "y", и затем нажимаем Enter.

9) Cоздаем отдельный ключ для каждого клиента:

build-key client1

Вводим необходимые контактные данные. В Common Name указываем client1.

Переносим файлы из папки /keys в папку /config.

10) Из папки /sample-config копируем файл server.ovpn в папку /config

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

Убеждаемся в том, что порты 5194 и 1194 не заблокированы файерволом, иначе добавляем разрешающие правила на входящий и исходящий трафик:

11) Переходим в Start (Пуск) -> All programs -> Administrative Tools -> Windows Firewall with Advanced Security.

12) Нажимаем в левой части окна на Inbound Rules и в разделе Actions нажимаем на New rule. В результате должен появиться мастер создания правил.

13) Предложенные 5 шагов заполняем следующим образом:

Шаг 1 - Rule type: Port;

Шаг 2 - Protocol and Ports: По умолчанию в настройках OpenVPN сервера используется UDP-протокол. Если данная конфигурация не изменялась, то выбираем в данном шаге UDP. В противном случае - TCP. В поле Specific local ports указываем 5194.

Шаг 3 – Action: Allow the connection;

Шаг 4 – Profile: Оставляем галочки включенными.

Шаг 5 – Name: Указываем название правила на своё усмотрение и нажимаем Finish.

Openvpn на Windows VPS

14) Аналогичным образом добавляем правило для порта 1194, после чего переходим в Outbound Rules и создаем два правила, идентичные тем, которые были созданы в Inbound.

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

15) Запускаем сервер OpenVPN путём нажатия правой кнопкой мыши на файле server.ovpn и в контекстном меню выбираем пункт Sarting OpenVPN on this config file.

Openvpn на Windows VPS

16) В результате появится командная строка, в которой будет отображен процесс запуска VPN-сервера. Если по окончанию будет выведена строка Initialization Sequence Completed, значит запуск прошел успешно.

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

Следующие шаги предполагают наличие уже установленного OpenVPN-клиента.

1) Из папки /sample-config на сервере скачиваем на компьютер файл client.ovpn в папку OpenVPN/config/

2) Из папки /config на сервере скачиваем файлы ca.crt, client1.crt, client1.key на компьютер в папку OpenVPN/config/

3) Открываем скачанный файл client.ovpn в текстовом редакторе и вносим следующие корректировки:

В записи remote my-server-1 1194 заменяем my-server-1 на IP-адрес сервера. В cert client.crt изменяем client.crt на client1.crt В key client.key изменяем client.key на client1.key

После этого сохраняем изменения.

4) Запускаем OPENVPN-GUI. В системном трее нажимаем правой кнопкой на иконке OpenVPN и в контекстном меню выбираем пункт Edit config.

Openvpn на Windows VPS

Если открывшаяся конфигурация не соответствует файлу client.ovpn, то приводим настройки в соответствующий вид. Если соответствует, то закрываем редактор, вновь нажимаем правой кнопкой на иконке в системном трее и выбираем пункт Connect. Если в появившемся окне процесса соединения отобразятся строки:

Initialization Sequence Completed
MANAGEMENT: >STATE: ********,CONNECTED,SUCCESS

значит cоединение можно считать успешным и теперь можно произвести попытку подключения к локальному IP сервера.

Арендовать Windows VPS и установить OpenVPN

Возможные ошибки

failed to update database
TXT_DB error number 2

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

Решение: указание другой контактной информации.

WARNING: can't open config file: /etc/ssl/openssl.cnf

Причина: некорректно установленный путь в переменной окружения OPENSSL_CONF.

Решение: необходимо объявить данную переменную в файле vars.bat, как указано в шаге 4 настройки на стороне сервера.