Для подключения к системе 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 адрес.
Нажатие кнопки позволит изменить IP адрес туннеля на требуемый.
Чтобы добавить новый профиль подключения в клиенте Openconnect нажмите на иконку с шестеренкой.
Выберите "Добавить новый профиль" ("New profile").
Добавьте в описания профиля данные, отмеченные галочками:
Сохраните профиль и попробуйте подключиться.
После установления соединения на ваше устройство поступили два маршрута:
*** А в идеальной ситуации поступит и маршрут к другим вашим сетям, указанным как "сеть за туннелем" на главной странице системы.
Например, к сети 192.168.1.0/24.
*** почему в идельной ситуации? Дело в том, что когда вы меняете настройки туннелей на главной странице системы, то маршруты к сетям "за туннелем" должны быть доступны и для сервера Openconnect. Однако, пока нам добиться этого в автоматическом режиме не удалось. Пришлось сделать специальную кнопку для обновления данных в сервере Openconnect.
Воспользуйтесь ей. И переподключите соединение.
Эти маршруты позволят вашему устройству иметь доступ к IP адресам сети VPNKI.
Выполните в вашем Windows команду route print
Теперь можно выполнить пинг двух адресов сервера VPNKI - адреса 172.16.0.33 (это сервер Openconnect) и 172.16.0.1 (основной сервер VPNKI).
Таким образом, соединение Openconnect успешно установлено и вы сможете получить доступ к адресам сервера и других своих туннелей.
Однако если у вас есть домашние сети, доступные через другие ваши туннели (например 192.168.1.0 и т.д.), то только этих маршрутов будет недостаточно.
Если у вас есть сети, которые расположены за другим вашим туннелем, то убедитесь, что маршрут к такой сети тоже поступил в ваш Windows в выводе команды
route print
Если такой маршрут поступил (например к сети 192.168.1.0 255.255.255.0), то выполните пинг известного адреса в этой сети.
ping 192.168.1.1
Надеемся, что все заработало!
На всякий случай, если маршруты с сервера не поступили, то вы можете прописать их в вашем Windows при помощи скрипта для Openconnect.
Это справочный материал и приведен в целях решения проблем с маршрутизацией.
Допустим, у вас где-то есть домашние сети, например, с адресами 192.168.1.0/24 и 192.168.2.0/24 и эти сети уже доступны через другие ваши туннель VPNKI.
Данные об этих сетях почему-то не поступили в ваш Windows после установки соединения.
Чтобы на вашем клиенте 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 и адресов в домашней и дачных сетях.
На этом все!