UMGUM.COM (лучше) 

Windows OpenVPN клиент ( Инсталляция и настройка клиента OpenVPN для Windows. )

10 июля 2013  (обновлено 15 февраля 2017)

OS: MS Windows 2000/XP/2003/Vista/2008/Seven/2012.
Application: Windows client OpenVPN v.2.3.

В операционной системе "MS Windows" встроенная поддержка протокола OpenVPN отсутствует, очевидно потому следуем на сайт разработчиков и загружаем необходимое клиентское программное обеспечение:

http://openvpn.net/ ;
"Community" ( http://openvpn.net/index.php/open-source.html );
"Community Downloads" ( http://openvpn.net/index.php/open-source/downloads.html );
Загружаем целевой дистрибутив: "Windows Installer (32-bit/64-bit)".

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

Запускаем установку, везде соглашаясь с замыслом разработчиков, одобряя все опции, кроме двух необязательных: "OpenSSL Utilites" и "OpenVPN RSA Certificate Management":

размер: 320 400 640 800 1024 1280
OpenVPN-client for MS Windows: выбираем компоненты для установки.
OpenVPN-client for MS Windows: выбираем компоненты для установки.


Инсталлятор OpenVPN озаботится поддержкой системой псевдо-устройства "tun" (в процессе установки драйверов будет создано новое устройство - виртуальный сетевой TUN/TAP интерфейс), наша задача состоит в том, чтобы не помешать ему в этом (предоставив по требованию привилегии суперпользователя системы). Мы будем использовать технологию "Layer 3 based IP" туннеля для пропускания IP-трафика между клиентом и окружением сервера VPN (OpenVPN поддерживает и "Layer 2 based Ethernet", но в нашем решении пропуск трафика уровня Ethernet не требуется):

OpenVPN-client for MS Windows: соглашаемся с установкой драйверов виртуальных сетевых устройств TUN/TAP.
OpenVPN-client for MS Windows: соглашаемся с установкой драйверов виртуальных сетевых устройств TUN/TAP.

Прежде всего, если мы желаем инициировать VPN-соединения вручную, с помощью графического интерфейса, следует подправить условия запуска GUI, указав работать ему от имени суперпользователя системы - иначе клиент OpenVPN не сможет создать виртуальный сетевой интерфейс и применить полученные с сервера маршруты следования трафика (если планируется использовать только фоновый сервис, то в модификации условий запуска клиента OpenVPN нет необходимости):

OpenVPN-client for MS Windows: переходим к редактированию свойств ярлыка запуска клиента OpenVPN.
OpenVPN-client for MS Windows: переходим к редактированию свойств ярлыка запуска клиента OpenVPN.

OpenVPN-client for MS Windows: предписываем запускать клиента OpenVPN с привилегиями суперпользователя операционной системы.
OpenVPN-client for MS Windows: предписываем запускать клиента OpenVPN с привилегиями суперпользователя операционной системы.

Очень важно! Прежде чем производить дальнейшие работы с конфигурационными файлами, необходимо отключить маскировку расширений файлов в названиях таковых, заставив операционную систему "MS Windows" позволять явно указывать тип файла с помощью вручную задаваемых расширений. В нашем случае мы в процессе настройки создаём обычный текстовый файл (plain text), изменяя после его расширение с принятого в системе ".txt" на зарезервированный для OpenVPN ".ovpn". Так вот, если позволить системе "скрывать расширения для зарегистрированных типов файлов", то у нас получится не желаемое "client.name.ovpn", а "client.name.ovpn.txt" - только оконечивающего имя файла реального расширения ".txt" мы не увидим, потому как оно скрыто, а настраиваемый OpenVPN-клиент не примет конфигурации, потому что ожидает её хоть и в текстовом файле, но с расширением ".ovpn".

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

OpenVPN-client for MS Windows: Снимаем "галочку" с пункта "скрывать расширения для зарегистрированных типов файлов" в наборе опций "Параметры папок".
OpenVPN-client for MS Windows: Снимаем "галочку" с пункта "скрывать расширения для зарегистрированных типов файлов" в наборе опций "Параметры папок".

Приложение не предоставляет никаких средств "интуитивно понятной" настройки. Единственный предусмотренный способ - создание конфигурационного файла VPN-соединения вручную в соответствующей предопределённой директории:

OpenVPN-client for MS Windows: переходим в предопределённую разработчиками директорию конфигураций VPN-туннелей.
OpenVPN-client for MS Windows: переходим в предопределённую разработчиками директорию конфигураций VPN-туннелей.

Конфигураций может быть несколько - они различаются по именам файлов и могут быть использованы как все вместе одновременно, так и по отдельности. Для простоты разместим файлы конфигурации и сертификатов, используемые нашим пока единственным VPN-соединением в одном месте. В дальнейшем, в случае необходимости использования множественных соединений, не составит труда распределить файлы по выделенным директориям. А пока, копируем полученные от администратора VPN-сервера сертификаты и ключи в директорию "C:\Program Files\OpenVPN\config\" и там же создаём конфигурационный файл "сlient.name.ovpn" следующего содержания:

# Режим работы соединения: begin

# включаем режим работы в качестве клиента VPN
client

# ничего не прослушиваем, работаем только в качестве клиента
nobind

# включаем Layer 3 based IP туннель
dev          tun

# используемый транспортный протокол
proto        tcp

# Режим работы соединения: end

# IP или доменное имя сервера VPN и прослушиваемый сервером порт
remote       vpn.example.net 443

# Сертификаты, шифрование и сжатие: begin
ca           ca.crt
cert         сlient.name.crt
key          сlient.name.key
; tls-auth     ta.key 1

# включаем сжатие трафика между сервером и клиентом
comp-lzo

# включаем шифрование повышенного уровня относительно стандартного
cipher       AES-256-CBC

# Сертификаты, шифрование и сжатие: end

# Журналирование событий
verb         3

# Запрос дополнительной проверки подлинности по логину
; auth-user-pass

Естественно, в вышеприведённой конфигурации адрес сервера удалённого доступа "vpn.example.net" заменяем на предоставленный администратором. Так же, вместо "ca.crt", "сlient.name.crt", "сlient.name.key" и "ta.key" подставляем имена файлов сертификатов и ключей созданных для обеспечения вашего VPN-подключения администратором (эти файлы вы уже должны были разместить рядом с "конфигом").

Конфигурационные файлы OpenVPN имеют единый формат для всех поддерживаемых версий операционных систем (Linux, Mac, Windows). Применительно к MS Windows отличие лишь в указании двойных "бэкслешей" в пути к файлам ключей и сертификатов и заключение полных путей к файлам в двойные кавычки.

Подключатся к удалённой сетевой инфраструктуре можно двумя способами: запуская клиента OpenVPN в качестве фоновой задачи при старте операционной системы в автоматическом режиме или вручную, через контекстное меню индикатора графического интерфейса "OpenVPN GUI for Windows", размещающегося в "трее":

OpenVPN-client for MS Windows: пример содержимого директории VPN-конфигураций и контекстного меню интерфейса клиента OpenVPN.
OpenVPN-client for MS Windows: пример содержимого директории VPN-конфигураций и контекстного меню интерфейса клиента OpenVPN.

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

OpenVPN-client for MS Windows: перечень активных сетевых соединений, включающий VPN-туннель.
OpenVPN-client for MS Windows: перечень активных сетевых соединений, включающий VPN-туннель.

Я упоминал ранее, что для полноценной работы OpenVPN-клиента требуются права суперпользователя. В частности, высокий уровень доступа необходим для применения полученных от VPN-сервера маршрутов на частные сети удалённой инфраструктуры. Для расширения кругозора после первого подключения можно проверить, действительно ли маршруты приняты операционной системой в работу (в командной строке ввести и исполнить "route print"):

OpenVPN-client for MS Windows: таблица маршрутизации, включающая ссылки за шлюзы VPN-туннеля.
OpenVPN-client for MS Windows: таблица маршрутизации, включающая ссылки за шлюзы VPN-туннеля.

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

OpenVPN-client for MS Windows: инициирование автоматического запуска фонового сервиса OpenVPN.
OpenVPN-client for MS Windows: инициирование автоматического запуска фонового сервиса OpenVPN.

Если подключение используется эпизодически и в автоматизации процесса нет необходимости, то в качестве минимальной оптимизации можно настроить автозапуск графического интерфейса, индикатор которого будет размещён в "трее" и предоставит возможность инициировать VPN-туннель одним кликом мыши в контекстном меню:

OpenVPN-client for MS Windows: внесение в список автозапуска утилиты графического интерфейса клиента OpenVPN.
OpenVPN-client for MS Windows: внесение в список автозапуска утилиты графического интерфейса клиента OpenVPN.

Если конфигураций VPN-туннелей несколько, то, в случае автоматического запуска фонового сервиса, все они будут инициированы одна за другой, последовательно. Естественно, что вручную можно запускать VPN-соединения в произвольном порядке, выбирая подпункты контекстного меню графического интерфейса "OpenVPN GUI for Windows" в "трее".


Заметки и комментарии к публикации:


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