Установка и настройка¶
Установка¶
Важно
Перед началом установки необходимо произвести настройку окружения. Все команды выполняются только от суперпользователя.
Режим суперпользователя:
sudo -i
Для Linux¶
Внимание
Имеется поддержка аутентификации пользователя с использованием смарт-карты. Подробнее здесь.
Установите пакет 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 выполните следующее:
Подключите предоставленный Вам репозиторий с пакетами AccentOs.
Установите пакет командой:
sudo apt install -y aos-rs-client
Внимание
Функционал получения виртуальных машин по тикетам Kerberos на Для Astra Linux 1.7 доступен только при установке пакета через pip.
Для корректной установки RSclient через pip на Astra Linux 1.7 выполните следующее:
Подключите представленные Вам репозитории с пакетами AccentOs для Astra Linux 1.7.
Установите пакеты, необходимые для Linux.
Дополнительно установите необходимые для работы пакеты командой:
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
Создайте симлинк для недостающей библиотеки:
sudo ln -s /usr/lib/x86_64-linux-gnu/libxcb-util.so.0 /usr/lib/x86_64-linux-gnu/libxcb-util.so.1
Установите пакет командой:
pip3 install -y aos-rs-client
Для Windows¶
Внимание
Поддерживается только 64-разрядная версия Windows.
Установка RSclient при помощи установщика¶
Перейдите по cсылке в репозиторий с дистрибутивами клиента.
Выберите совместимую с операционной системой версию RSclient:
Скачайте и запустите установочную программу
RSclient.1.30.0x64.Setup.exe
.Выберите язык установки:
Ознакомьтесь с программным продуктом:
Выберите директорию для установки:
Выберите папку в меню «Пуск»:
Подтвердите параметры установки:
После успешной установки в окне завершения по умолчанию установлен флаг запуска программы:
Установите необходимое значение и завершите установку кнопкой «Завершить».
Запуск 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 |
Уровень логирования. Доступные значения:
Значения являются регистронезависимыми. Подробное описание параметров доступно в разделе Уровни логирования. |
INFO |
Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. | Да |
connect |
Команда запуска клиента удаленного доступа, можно использовать следующие подстановки:
|
Да | Нет | |
log_file_location |
Путь до директории, в которой необходимо создать файл c логами. Лог файл создается в корневой папке клиента. | Нет | Нет | |
store_session |
Параметр, отвечающий за сохранение настроек подключения, флаг «Запомнить» в графическом интерфейсе. Доступные значения:
Значения являются регистронезависимыми. |
True |
Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. | Нет |
use_cups |
Параметр, отвечающий за работу с CUPS на уровне гостевой операционной системы. Доступные значения:
Значения являются регистронезависимыми. |
False |
Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. | Да |
language |
Язык интерфейса графического клиента. Если этот параметр не указан, то берётся локализация операционной системы, на которой запущен клиент. | Нет | Да | |
project |
Изменение настройки отображения поля «Проект» в главном окне RSclient:
Значения являются регистронезависимыми. |
True |
Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. | Нет |
show_settings |
Изменение настройки отображения кнопки «Настройки»:
Значения являются регистронезависимыми. |
True |
Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. | Нет |
store_password |
Параметр, отвечающий за сохранение пароля в настройках. Не зависит от значения параметра
Значения являются регистронезависимыми. |
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 |
Количество повторных попыток подключения к серверам. Например:
|
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. Доступные значения:
|
False |
Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. | Нет |
use_cert |
Включение аутентификации по клиентскому сертификату. Доступные значения:
|
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 |
Использование технологии единого входа
|
False |
Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. | Да |
eye_pass_icon |
Параметр, отвечающий за возможность скрыть/отобразить пароль в графическом интерфейсе. | True |
Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. | Нет |
host_addr |
Параметр, отвечающий за получение IP-адреса от сетевого интерфейса системы. | False |
Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. | Нет |
vpn_after_connect |
Параметр, отвечающий за порядок подключения к сети vpn. Доступные значения:
|
False |
Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. | Нет |
vpn_cert_path |
Путь к файлу конфигурации vpn. | Нет, в случае отсутствия файла конфигурации vpn подключение к сети не производится. | Нет | |
user_unassign |
Параметр, отвечающий за поведение TRS машины при закрытии RSclient. Доступные значения:
|
`` `` | Нет, в случае отсутствия значения параметра в конфигурационном файле применяется значение по умолчанию. | Нет |
Важно
В случае если RSclient используется с kerberos и webgard, настроенным по https, то необходимо:
- Адрес webgard указывать с типом протокола и портом. Пример:
https://wg.loc:9365
. - Указать путь до сертификата, либо цепочки сертификатов в параметре
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.
Для того, чтобы модуль функционировал со смарт-картами, необходимо проделать следующие шаги:
Для низкоуровневой работы с картами установите пакет
opensc
, а такжеpcsc-lite
и его утилиты:# Debian: apt-get install opensc apt-get install pcsc-lite pcsc-tools
Примечание
Дополнительно для операционной системы CentOS:
Загрузите и установите из репозитория последнюю версию EPEL:
rpm -Uvh epel-release*rpm
Установите пакет
pcsc-tools
:yum install pcsc-tools
Смарт-карты работают через API PKCS11 и PC/SC. Первоначально установите необходимые зависимости:
# Debian: apt-get install libpcsclite-dev apt-get install python-module-OpenSSL
Установите пакет
pykcs11
для работы со смарт-картой через API PKCS11:pip3 install pykcs11
Установите
python-module-pyscard
для работы со смарт-картой через API PC/SC:# Debian: apt-get install python-module-pyscard
Скачайте архив с библиотеками ESMART Token 4.2 (PKCS#11) для Linux. Его можно найти по сcылке.
После чего найдите в архиве файл
libisbc_pkcs11_main.so
и укажите путь до файла в параметреPYKCS11LIB
конфигурационного файла или задайте в качестве переменной окружения:export PYKCS11LIB="path to libisbc_pkcs11_main.so"
Для возможности работы со смарт-картой без прав суперпользователя выполните следующие команды:
sed -i "s/no/yes/" /usr/share/polkit-1/actions/org.debian.pcsc-lite.policy systemctl restart pcscd.socket
Для корректного отображения текста при перебросе графической среды X11 установите следующие пакеты:
yum install xorg-x11-fonts* yum install dejavu-lgc-sans-fonts