Установка и настройка

Установка

Важно

Перед началом установки необходимо произвести настройку окружения. Все команды выполняются только от суперпользователя.

Режим суперпользователя:

sudo -i

Для Linux

Внимание

Имеется поддержка аутентификации пользователя с использованием смарт-карты. Подробнее здесь.

  1. Установите пакет RSclient:

    • из репозитория Python-пакетов:

      pip3 install rs-client
      

    После установки linux версии rs-client имеется возможность доустановки дополнительного функционала:

    • для возможности работы со smart картами выполните следующее:

      pip3 install rs-client[smart]
      

    Данное действие установит следующие пакеты:

    pykcs11
    pyopenssl
    pyasn1
    
    • для работы авторизации sso совместно с webgard выполните следующее:

      apt install libkrb5-dev libcurl4-openssl-dev libssl-dev
      pip3 install rs-client[sso]
      

    Данное действие установит следующие пакеты:

    pycurl
    kerberos
    pyyaml
    
    • для работы авторизации kerberos совместно с keystone выполните следующее:

      apt install libkrb5-dev libcurl4-openssl-dev libssl-dev
      pip3 install rs-client[kerberos]
      

    Данное действие установит следующие пакеты:

    pycurl
    kerberos
    pyyaml
    keystoneauth1
    

Для Astra Linux 1.7

Для установки RSclient на Astra Linux выполните следующее:

  1. Подключите предоставленный Вам репозиторий с пакетами AccentOs.

  2. Установите пакет командой:

    sudo apt install -y aos-rs-client
    

Внимание

Функционал получения виртуальных машин по тикетам Kerberos на Для Astra Linux 1.7 доступен только при установке пакета через pip.

Для корректной установки RSclient через pip на Astra Linux 1.7 выполните следующее:

  1. Подключите представленные Вам репозитории с пакетами AccentOs для Astra Linux 1.7.

  2. Установите пакеты, необходимые для Linux.

  3. Дополнительно установите необходимые для работы пакеты командой:

    apt install  python3-pyside2.qt3dcore python3-pyside2.qt3dinput python3-pyside2.qt3dlogic python3-pyside2.qt3drender python3-pyside2.qtconcurrent \
        python3-pyside2.qtcore  python3-pyside2.qtgui python3-pyside2.qthelp python3-pyside2.qtlocation python3-pyside2.qtmultimedia  python3-pyside2.qtmultimediawidgets \
        python3-pyside2.qtnetwork python3-pyside2.qtopengl python3-pyside2.qtpositioning python3-pyside2.qtprintsupport python3-pyside2.qtqml python3-pyside2.qtquick  \
        python3-pyside2.qtquickwidgets  python3-pyside2.qtscript  python3-pyside2.qtscripttools  python3-pyside2.qtsensors  python3-pyside2.qtsql  python3-pyside2.qtsvg  \
        python3-pyside2.qttest  python3-pyside2.qttexttospeech python3-pyside2.qtuitools  python3-pyside2.qtwebchannel python3-pyside2.qtwebenginecore  \
        python3-pyside2.qtwebenginewidgets  python3-pyside2.qtwebsockets  python3-pyside2.qtwidgets  python3-pyside2.qtx11extras  python3-pyside2.qtxml  python3-pyside2.qtxmlpatterns
    
  4. Создайте симлинк для недостающей библиотеки:

    sudo ln -s /usr/lib/x86_64-linux-gnu/libxcb-util.so.0 /usr/lib/x86_64-linux-gnu/libxcb-util.so.1
    
  5. Установите пакет командой:

    pip3 install -y aos-rs-client
    

Для Windows

Внимание

Поддерживается только 64-разрядная версия Windows.

Установка RSclient при помощи установщика

  1. Перейдите по cсылке в репозиторий с дистрибутивами клиента.

  2. Выберите совместимую с операционной системой версию RSclient:

    ../../_images/trs_files_aos.png

    Перечень клиентов

  3. Скачайте и запустите установочную программу RSclient.1.30.0x64.Setup.exe.

  4. Выберите язык установки:

    ../../_images/trs_install_language.png

    Окно выбора языка

  5. Ознакомьтесь с программным продуктом:

    ../../_images/trs_copyright.png

    Окно с информацией о модуле

  6. Выберите директорию для установки:

    ../../_images/trs_directory.png

    Окно выбора директории для установки приложения

  7. Выберите папку в меню «Пуск»:

    ../../_images/trs_start_directory.png

    Окно выбора директории для ярлыка приложения

  8. Подтвердите параметры установки:

    ../../_images/trs_start_install.png

    Окно запуска установки

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

    ../../_images/trs_finish_install.png

    Окно завершения установки

    Установите необходимое значение и завершите установку кнопкой «Завершить».

Запуск RSclient из образа AppImage

В случае необходимости запуска RScleint на неподдерживаемых unix системах имеется возможность работы через AppImage, для этого скачайте необходимую версию клиента по ссылке.

Дайте необходимые для запуска права:

chmod +x rsclient-*.AppImage

Запустите RSclient:

./rsclient-*.AppImage

Внимание

Для ряда систем запуск AppImage возможен только от root.

Файл конфигурации

При первом запуске RSclient в домашней директории пользователя, в каталоге .rsclient создается конфигурационный файл client.conf.

Некоторые параметры, представленные в конфигурационном файле, также можно задать в окне «Настройки RSclient». Конфигурационный файл представлен в ini формате и состоит из следующих секций:

Параметр Описание Значение по умолчанию Обязательность Имеется ли возможность задать параметр в графическом интерфейсе
cloud Первичный адрес сервера. Необходимо вводить либо IP-адрес сервера, либо имя хоста. Например: localhost или 10.10.10.10. Параметр является обязательным. В случае использования протокола HTTPS, адрес сервера требуется указывать в формате https://<имя хоста>:<порт HTTPS>, например, https://accentos.ru:8889. В случае использования HTTPS не забудьте использовать опцию ca_bundle_path.   Да Да
ignore_domain Параметр, который игнорирует параметр domain_name при формировании rdp-файла, для подключения к гостевой операционной системе.   Нет Нет
secondary_cloud Вторичный адрес сервера. Используется для подключения в случае отсутствия ответа с первичного адреса. Необходимо вводить либо IP-адрес сервера, либо имя хоста. Например: localhost или 10.10.10.10.   Нет Да
domain_name Имя домена. default Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Да
log_level

Уровень логирования. Доступные значения:

  • DEBUG;
  • INFO;
  • WARNING;
  • ERROR;
  • CRITICAL.

Значения являются регистронезависимыми. Подробное описание параметров доступно в разделе Уровни логирования.

INFO Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Да
connect

Команда запуска клиента удаленного доступа, можно использовать следующие подстановки:

  • {ip} - IP-адрес;
  • {user} - имя пользователя;
  • {password} - пароль;
  • {domain} - доменное имя;
  • {spice_host} - доменное имя или IP-адрес SPICE консоли;
  • {spice_port} - порт SPICE консоли;
  • {cups} - при использовании параметра use_cups передает в себе значение --use-cups;
  • {rdp_config} - файл протокола удаленного рабочего стола, генерируется автоматически на платформе Windows.
  Да Нет
log_file_location Путь до директории, в которой необходимо создать файл c логами. Лог файл создается в корневой папке клиента.   Нет Нет
store_session

Параметр, отвечающий за сохранение настроек подключения, флаг «Запомнить» в графическом интерфейсе. Доступные значения:

  • True - сохранение параметров каждой сессии;
  • False - удаление параметров каждой сессии.

Значения являются регистронезависимыми.

True Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
use_cups

Параметр, отвечающий за работу с CUPS на уровне гостевой операционной системы. Доступные значения:

  • True - подключение к гостевой виртуальной машине с аргументами CUPS;
  • False - не передает аргументы CUPS в гостевую ВМ.

Значения являются регистронезависимыми.

False Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Да
language Язык интерфейса графического клиента. Если этот параметр не указан, то берётся локализация операционной системы, на которой запущен клиент.   Нет Да
project

Изменение настройки отображения поля «Проект» в главном окне RSclient:

  • True - поле «Проект» отображается;
  • False - поле «Проект» скрыто, подключение осуществляется без указания проекта.

Значения являются регистронезависимыми.

True Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
show_settings

Изменение настройки отображения кнопки «Настройки»:

  • True - кнопка «Настройки» отображается;
  • False - кнопка скрыта.

Значения являются регистронезависимыми.

True Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
store_password

Параметр, отвечающий за сохранение пароля в настройках. Не зависит от значения параметра store_session. Доступные значения:

  • True - сохранение пароля для каждой сессии;
  • False - удаление пароля для каждой сессии.

Значения являются регистронезависимыми.

False Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
PYKCS11LIB Путь до файла libisbc_pkcs11_main.so, необходимого для работы со смарт-картами. При отсутствии поиск файла осуществляется в каталоге .rsclient домашней директории пользователя и в текущем каталоге.   Нет Нет
SMARTCARD_OID Расширение EKU искомого сертификата должно содержать указанный OID. При отсутствии параметра фильтрация сертификатов по OID не выполняется.   Нет Нет
ikecfg Параметр указывает IP-адрес клиента. Позволяет при необходимости передавать на сервер IP-адрес, отличающийся от текущего. Используется для создания правил группы безопасности передаваемой клиенту TRS машины.   Нет Нет
additional_clouds Дополнительные адреса RSserver. Используется для подключения в случае отсутствия ответа с первичного и вторичного адреса. Необходимо вводить либо IP-адрес сервера, либо имя хоста через запятую. Например: localhost, 10.10.10.10, myhost.aos.loc.   Нет Нет
retries

Количество повторных попыток подключения к серверам. Например:

  • -1 - Попытки будут выполняться бесконечно;
  • 1 - Попытка повторного подключения будет выполняться один раз;
  • 2 - Кроме основной попытки будут выполнены два повторных цикла подключений;
  • 3 - Кроме основной попытки будут выполнены три повторных цикла подключений.
2 Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
timeout Время ожидания перед следующей попыткой подключения в секундах. 15 Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
contact_support_message_ru Настраиваемое сообщение для обращения к администратору на русском языке. Выводятся только первые 250 символов. Обратитесь к системному администратору. Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
contact_support_message_en Настраиваемое сообщение для обращения к администратору на английском языке. Выводятся только первые 250 символов. Please contact system administrator. Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
get_vm_timeout Время ожидания перед следующей попыткой получения статуса задачи на получение TRS машины (get-vm) в секундах. Значение должно быть целым числом больше или равно 0. 5 Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
request_timeout Максимальная длительность запроса в секундах. По истечении времени соединение прерывается. 30 Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
web_guard

Включение поддержки WebGard. Доступные значения:

  • True - поддержка WebGard включена;
  • False - поддержка WebGard выключена.
False Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
use_cert

Включение аутентификации по клиентскому сертификату. Доступные значения:

  • True - аутентификация по сертификату включена;
  • False - аутентификация по сертификату выключена.
False Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
cert Путь к файлу сертификата пользователя.   Нет Нет
key Путь к файлу приватного ключа пользователя.   Нет Нет
identity_url Адрес службы Keystone, используется для аутентификации по клиентскому сертификату. Для указания нескольких адресов используйте запятую в качестве разделителя.   Нет Нет
rds Параметр, позволяющий переопределить полученный от службы Broker API IP-адрес.   Нет Да
kerb_cloud_url Параметр, указывающий адрес для авторизации через Kerberos   Нет Нет
minimize_to_tray Параметр, отвечающий за сворачивание окна в системный трей после подключения к виртуальной машине. False Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
single_launch Параметр, отвечающий за ограничение количества одновременно запущенных процессов приложения одним экземпляром. False Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
custom_credentials Параметр, разрешающий использование авторизационных данных для подключенения к получаемой ВМ отличных от тех, которыми происходит авторизация в OpenStack. False Нет Да
use_spice Параметр, при указании которого в RSserver, в дополнение к IP-адресу виртуальной машины запрашивается адрес SPICE консоли. False Нет Нет
ca_bundle_path Путь к файлу цепочки сертификатов.   Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение из переменной окружения REQUESTS_CA_BUNDLE. Нет
rds_enabled Параметр, отвечающий за скрытие/включение отображения поля RDS в графическом интерфейсе. True Нет Нет
use_sso

Использование технологии единого входа SSO. Доступные значения:

  • True - технология SSO активна;
  • False - технология SSO не активна.
False Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Да
eye_pass_icon Параметр, отвечающий за возможность скрыть/отобразить пароль в графическом интерфейсе. True Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
host_addr Параметр, отвечающий за получение IP-адреса от сетевого интерфейса системы. False Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
vpn_after_connect

Параметр, отвечающий за порядок подключения к сети vpn. Доступные значения:

  • True - подключение к vpn после авторизации;
  • False - подключение к vpn до авторизации.
False Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет
vpn_cert_path Путь к файлу конфигурации vpn.   Нет, в случае отсутствия файла конфигурации vpn подключение к сети не производится. Нет
user_unassign

Параметр, отвечающий за поведение TRS машины при закрытии RSclient. Доступные значения:

  • `` `` - не совершать дополнительных действий;
  • unassign - отвязать пользователя от назначенной TRS машины;
  • delete - удалить назначенную TRS машину.
`` `` Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. Нет

Важно

В случае если RSclient используется с kerberos и webgard, настроенным по https, то необходимо:

  1. Адрес webgard указывать с типом протокола и портом. Пример: https://wg.loc:9365.
  2. Указать путь до сертификата, либо цепочки сертификатов в параметре ca_bandle_path.

Примеры конфигурационных файлов

Для Windows:

[DEFAULT]
cloud = main.aos.ru
ignore_domain = False
secondary_cloud = 10.10.10.13
domain_name = default
log_level = DEBUG
connect = mstsc {rdp_config}
log_file_location = %USERPROFILE%\.rsclient\
store_session = False
language = ru
project = True
show_settings = True
pykcs11lib =
ikecfg =
additional_clouds = slave.aos.ru, 10.10.10.14
retries = 2
timeout = 15
contact_support_message_ru = Обратитесь к системному администратору.
contact_support_message_en = Please contact system administrator.
сa_bundle_path = /home/user/rootCa.crt
vpn_after_connect = False
vpn_cert_path =

Для Linux (с использованием NX клиента):

[DEFAULT]
cloud = main.aos.ru
ignore_domain = False
secondary_cloud = 10.10.10.13
domain_name = default
log_level = INFO
connect = /home/user/trs.sh {user} {password} {ip} 2> /dev/null
log_file_location = $HOME/.rsclient/
store_session = False
language = ru
project = True
show_settings = True
pykcs11lib = /usr/lib64/libisbc_pkcs11_main.so
SMARTCARD_OID = 1.3.6.1.4.1.311.20.2.2
ikecfg =
additional_clouds = slave.aos.ru, 10.10.10.14
retries = -1
timeout = 15
contact_support_message_ru = Обратитесь к системному администратору.
contact_support_message_en = Please contact system administrator.
сa_bundle_path = /home/user/rootCa.crt
vpn_after_connect = False
vpn_cert_path =

При первом запуске RSclient в домашней директории пользователя, в каталоге .rsclient создается конфигурационный файл rdp.conf.sample. В этом файле заданы базовые настройки для подключения по протоколу RDP для ОС Windows, которые можно редактировать.

Настройка для работы со смарт-картами

Примечание

Работа со смарт-картой поддерживается только на операционных системах Linux.

Для того, чтобы модуль функционировал со смарт-картами, необходимо проделать следующие шаги:

  1. Для низкоуровневой работы с картами установите пакет opensc, а также pcsc-lite и его утилиты:

    # Debian:
    apt-get install opensc
    apt-get install pcsc-lite pcsc-tools
    

    Примечание

    Дополнительно для операционной системы CentOS:

    1. Загрузите и установите из репозитория последнюю версию EPEL:

      rpm -Uvh epel-release*rpm
      
    2. Установите пакет pcsc-tools:

      yum install pcsc-tools
      
  2. Смарт-карты работают через API PKCS11 и PC/SC. Первоначально установите необходимые зависимости:

    # Debian:
    apt-get install libpcsclite-dev
    apt-get install python-module-OpenSSL
    
  3. Установите пакет pykcs11 для работы со смарт-картой через API PKCS11:

    pip3 install pykcs11
    
  4. Установите python-module-pyscard для работы со смарт-картой через API PC/SC:

    # Debian:
    apt-get install python-module-pyscard
    
  5. Скачайте архив с библиотеками ESMART Token 4.2 (PKCS#11) для Linux. Его можно найти по сcылке.

  6. После чего найдите в архиве файл libisbc_pkcs11_main.so и укажите путь до файла в параметре PYKCS11LIB конфигурационного файла или задайте в качестве переменной окружения:

    export PYKCS11LIB="path to libisbc_pkcs11_main.so"
    
  7. Для возможности работы со смарт-картой без прав суперпользователя выполните следующие команды:

    sed -i "s/no/yes/" /usr/share/polkit-1/actions/org.debian.pcsc-lite.policy
    systemctl restart pcscd.socket
    
  8. Для корректного отображения текста при перебросе графической среды X11 установите следующие пакеты:

    yum install xorg-x11-fonts*
    yum install dejavu-lgc-sans-fonts