Установка VPN клиента Citrix Secure Access Client (NetScaler Gateway Client) на Debian GNU/Linux 12 (Bookworm)

Installing VPN client Citrix Secure Access Client (NetScaler Gateway Client) on Debian GNU/Linux 12 BookwormВ этой заметке мы рассмотрим то, как можно установить VPN-клиент Citrix Secure Access Client (Netscaler Gateway Client) на компьютер с ОС Debian GNU/Linux Bookworm 12.5 c графической средой Gnome 43.9 и оконным интерфейсом Wayland.

С точки зрения поддержки клиентов на базе Linux, на сайте Citrix можно найти информацию о deb-пакетах, ориентированных на разные версии Ubuntu Linux. Информация о пакетах текущей актуальной версии 23.10.3:

nsgclient18_64.deb
Citrix Secure Access client 23.10.3 for Ubuntu 18/20 (Oct 16, 2023)
464406 bytes
Checksum SHA-256 :fb33cd7fbe990d8ecd217a8666eadedab652366fe3d115fdf44ce49c2562308a 

nsginstaller64.deb
Citrix Secure Access client 23.10.3 for Ubuntu 22 (Oct 16, 2023)
465486 bytes
Checksum SHA-256 :f312a6663c2c3a42d64c769aefe05131c221dfd49a2a07a5a85a5fb719dcc5bb

Скачать файлы актуальной версии пакета ранее можно было со страницы загрузки: Citrix Gateway Plug-Ins/Clients. Однако сейчас эта страница не доступна с российских IP. Но даже если зайти на неё через VPN или публичные веб-прокси, то скачать файлы без регистрации на сайте не получится. В свою очередь, с некоторого времени пройти процедуру регистрации на сайте человеку не связанному с действующим профилем какой-либо организации, имеющей коммерческие отношения с Citrix, как я понял, не получится.

Один из способов получения пакета – зайти через веб-браузер с нашей Linux системы на опубликованную в Интернете веб-страницу Citrix NetScaler Gateway, пройти аутентификацию и выбрать вариант "Network Access Connect with the Citrix Gateway Plug-In". Через некоторое время появится предложение скачать deb-пакеты:

Citrix NetScaler Gateway - Network Access Connect with the Citrix Gateway Plug-InЕщё один альтернативный способ, которым можно попытаться найти нужный файл, это обращение в группу Telegram: Citrix User Group - RU&CIS. В ходе своих экспериментов, я обратился к участникам этой группы и получил живой отклик и помощь, за что выражаю участникам группы свою благодарность.

В нашем случае будет использоваться пакет nsginstaller64.deb. Посмотрим информацию о скачанном пакете:

# dpkg -I nsginstaller64.deb

 new Debian package, version 2.0.
 size 465486 bytes: control archive=1288 bytes.
...
 Package: nsgclient
 Version: 23.10.3
 LastSupportedVersion: 23.10.3
 Architecture: amd64
 Essential: no
 Priority: optional
 Maintainer: Citrix Inc 
 Section: non-free/net
 Description: Citrix Secure Access
 Citrix Secure Access is the Ubuntu VPN Client for connecting to Enterprise Network via NetScaler Gateway. Users can connect to corporate network and access remote resources securely. Please access the NetScaler Gateway User’s guide for more information.
 Installed-Size: 3072
 Depends: libappindicator1, libnotify4, libcurl3-gnutls|libcurl4-gnutls-dev, libproxy1-plugin-webkit, libnm0, libglib2.0-0, libnl-cli-3-200, libnl-route-3-200, libnl-3-200, libnl-genl-3-200, resolvconf, dpkg-sig, libcurl4</support@citrix.com>

Прямая установка этого пакета на чистой Debian Bookworm положительного результата не даст, так как мы получим ошибки неразрешённых зависимостей. Зависимости, которые нам придётся разрешить перед установкой пакета nsginstaller64.deb, связаны со следующими пакетами:

libappindicator1
libnl-cli-3-200
resolvconf
dpkg-sig

Проблема заключается в том, пакет dpkg-sig отсутствует в официальных репозиториях Debian Bookworm  и может быть найден лишь в репозиториях предыдущих версий Debian. А первые три пакета, несмотря на то, что они имеются в стандартных репозиториях Bookworm, потребуют наличия в системе других пакетов, зависимости которых, также придётся разрешать.

После некоторых экспериментов, стал понятен порядок действий, которые нужно предпринять для возможности установки Citrix Secure Access Client 23.10.3 в Debian 12.

В первую очередь, установим пакеты, доступные в стандартных репозиториях Debian Bookworm:

# apt-get install libnl-cli-3-200 resolvconf libayatana-appindicator1 libconfig-file-perl

Пакет libconfig-file-perl потребуется для дальнейшей возможности установки пакета dpkg-sig. После установки пакета resolvconf могут начаться проблемы с разрешением имён. Поэтому после установки пакетов можно просто перезагрузить систему, чтобы работа механизма разрешения имён нормализовалась.

Затем скачаем по прямой ссылке пакет dpkg-sig, относящийся к другой версии Debian и выполним его установку:

# wget http://ftp.ru.debian.org/debian/pool/main/d/dpkg-sig/dpkg-sig_0.13.1+nmu4_all.deb
# dpkg -i dpkg-sig_0.13.1+nmu4_all.deb

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

# dpkg -i nsginstaller64.deb

После завышения установки в главном меню графической оболочки появится ссылка на приложение nsgclient.

nsgclient - Citrix Secure Access Client in Gnome Applications menu

Чтобы при запуске этого графического приложения видеть его значок, в оболочке Gnome должно быть установлено расширение, позволяющее выводить индикацию приложений, например
AppIndicator and KStatusNotifierItem Support.

Citrix Secure Access Client (NetScaler Gateway Client) icon in top panel - AppIndicator and KStatusNotifierItem Support

При запуске ПО у нас будет запрошен URL VPN-сервера Citrix NetScaler Gateway и данные для аутентификации пользователя. При успешном подключении получим соответствующее уведомление.

Citrix Netscaler Gateway Client Login successful

Может получиться так, что после указания URL сервера Citrix NetScaler Gateway, клиент вместо того, чтобы запросить логин/пароль пользователя, будет циклично выдавать запрос на указание клиентского сертификата и это будет препятствовать успешному подключению.

Citrix Secure Access Client (NetScaler Gateway Client) prompts for client certificate when connecting to server

Попытка подключения через CLI командой типа "/opt/Citrix/NSGClient/bin/NSGClient -c" также может приводить в этом случае к ошибке вида "ERROR: Client certificate info is not provided".

Если на стороне сервера Citrix NetScaler Gateway не включена двух-факторная аутентификация, такое поведение клиента может быть связано с тем, что он не может договориться с сервером на уровне SSL согласования. В документе Citrix Secure Access client for Linux есть примечание, которое имеет к описанной ситуации непосредственное отношение:

Citrix Secure Access Client (NetScaler Gateway Client) - For Ubuntu 22.04 to work with Citrix Secure Access client and Citrix EPA client, set the SSL parameter denySSLReneg to NONSECURE on the NetScaler CLI

То есть, чтобы избежать проблемы с подключением современной версии Citrix Secure Access Client на Linux на стороне сервера Citrix NetScaler Gateway потребуется установка параметра "Deny SSL Renegotiation" в режим "NONSECURE". Через NetScaler UI это можно сделать в пройдя в "Traffic Management" –> "SSL" –> "Change advanced SSL settings" –> "Deny SSL Renegotiation":

On the Citrix NetScaler Gateway server side, you will need to set the "Deny SSL Renegotiation" parameter to "NONSECURE" mode

Либо эту опцию можно изменить через NetScaler CLI командой следующего вида:

set ssl parameter -denySSLReneg NONSECURE

Для возможности дополнительной отладки клиентского подключения, как и в предыдущих версиях Citrix Secure Access Client, в домашнем каталоге пользователя в подкаталоге .citrix доступны лог-файлы. Уровень детализации логирования можно настроить в графическом интерфейсе клиента на вкладке "Configuration" > "Logging".

Citrix Secure Access Client (NetScaler Gateway Client) on Debian 12 Linux - Logging Configuration

Добавить комментарий