Для подключения к системе VPNKI по протоколу Openconnect вам необходимо:
Но обо всем по порядку ...
Здесь вы можете создать новый туннель или использовать уже существующий.
Есть только один нюанс - для корректной работы подключения по протоколу Openconnect в нашей системе необходимо, чтобы IP адрес туннеля в сети VPNKI (сеть 172.16.x.x) находился в нужном поддиапазоне.
Это мы рассмотрим чуть позже, а пока создайте туннель в личном кабинете системы и назначьте ему пароль для подключения.
Туннель для Openconnect ничем не отличается от туннелей, подключающихся по PPTP, L2TP, L2TP/IPsec, IKEv2/IPsec, SSTP и OpenVPN.
Установите клиента Openconnect для вашего устройства. В нашем примере мы будем использовать клиент для Windows.
Установите его отсюда для Windows 10/11:
https://gui.openconnect-vpn.net/download/
Для более ранних версий есть архив на той же странице внизу.
На этом все.
Как было сказано выше, для корректной работы соединения Openconnect с сервером VPNKI необходимо изменить IP адрес туннеля.
Это необходимо для корректной маршуртизации на сервере. Адрес туннеля должен находиться в диапазоне 172.16.0.34 - 172.16.0.62.
Адрес VPN сервера после подключения будет 172.16.0.33.
После изменения адреса ваш туннель по-прежнему сможет подключаться к VPNKI и по другим протоколам (PPTP, L2TP, L2TP/IPsec, IKEv2/IPsec, SSTP, OpenVPN).
Однако, перед изменением IP адреса, стоит оценить насколько изменение IP адреса туннеля повлияет на уже эксплуатируемую вами систему.
Если изменение IP адреса не повредит или вы создали новый туннель только с целью использования Openconnect, то переходите в личный кабинет на страницу изменения IP адреса.
Меню "Мои настройки" - "Для Openconnect".
На скриншоте показаны три туннеля. Два из которых уже обладают нужными IP адресами, а для одного туннеля можно изменить IP адрес.
Чтобы добавить новый профиль подключения в клиенте Openconnect нажмите на иконку с шестеренкой
Выберите "Добавить новый профиль" ("New profile")
Добавьте в описания профиля данные, отмеченные галочками:
Сохраните профиль и попробуйте подключиться.
После установления соединения на ваше устройство поступили два маршрута:
Эти маршруты позволят вашему устройству иметь доступ к IP адресам сети VPNKI.
Выполните в вашем Windows команду route print
Теперь можно выполнить пинг двух адресов сервера VPNKI - адреса 172.16.0.33 (это сервер Openconnect) и 172.16.0.1 (основной сервер VPNKI)
Таким образом, соединение Openconnect успешно установлено и таким образом вы сможете получить доступ к адресам сервера и других своих туннелей.
Однако если у вас есть домашние сети, доступные через другие ваши туннели (например 192.168.1.0 и т.д.), то этих маршрутов будет недостаточно.
Если это ваш случай, то переходите к следующему разделу.
А пока отключите соединение.
Этих маршрутов окажется недостаточно, если у вас где-то есть домашние сети, например, с адресами 192.168.1.0/24 и 192.168.2.0/24 и эти сети уже доступны через другие ваши туннель VPNKI.
Чтобы на вашем клиенте Openconnect в ОС Windows прописать новый маршрут(ы) необходимо после установления соединения выполнить скрипт, который осуществит эту работу на вашем устройстве.
Для этого в Openconnect на Windows есть выполняемый скрипт с названием vpnc-script.js.
Обычно он находится в той же директории, что и сам исполняемый файл openconnect.
Например - C:\Program Files\OpenConnect-GUI\vpnc-script.js
Допустим, что у нас есть две сети (дачная и домашняя сети), эти сети имеют адреса 192.168.1.0/24 и 192.168.2.0/24 . Чтобы прописать эти маршруты в вашем Windows необходимо добавить в файл следующие семь строк. Сделать это можно любым текстовым редактором:
env("CISCO_SPLIT_INC") = 3; // how many IP networks / addresses to reach in VPN network
env("CISCO_SPLIT_INC_0_ADDR") = '172.16.0.0'; // net address
env("CISCO_SPLIT_INC_0_MASK") = '255.255.0.0'; // mask
env("CISCO_SPLIT_INC_1_ADDR") = '192.168.1.0'; // net address
env("CISCO_SPLIT_INC_1_MASK") = '255.255.255.0'; // mask
env("CISCO_SPLIT_INC_2_ADDR") = '192.168.2.0'; // net address
env("CISCO_SPLIT_INC_2_MASK") = '255.255.255.0'; // mask
Добавьте их после строки
var REDIRECT_GATEWAY_METHOD = 0;
В итоге должно получиться так, как отмечено на скриншоте ниже:
Обратите внимание, что всего строк семь и добавляем мы по-сути три маршрута:
Теперь давайте отредактируем профиль подключения Openconnect и укажем, что хотим выполнить скрипт C:\Program Files\OpenConnect-GUI\vpnc-script.js после установления соединения к VPNKI.
Важные и интересные места выделены галочками.
Нажмите "Сохранить".
Теперь подключите соединение и посмотрите какие маршруты добавились в вашу операционную систему.
Снова выполните команду route print
На этом скриншоте:
1 - это ваш маршут по умолчанию. Он не изменился и должен вести к вашему провайдеру Интернет
2 - это маршруты к серверу Openconnect сети VPNKI
3 - маршрут к основной сети VPNKI, где расположены ваши туннели по протоколам PPTP, L2TP, L2TP/IPsec, IKEv2/IPSec, SSTP, OpenVPN, WireGuard
4 и 5 - маршруты к домашней и дачной сетям, которые мы указывали в файле скрипта
Осталось проверить, что все работает как надо
Выполните пинги - адреса сервера Openconnect VPNKI, сервера VPNKI и адресов в домашней и дачных сетях.
На этом все!