Конфигурационные файлы сервера Termidesk

Конфигурационный файл termidesk.conf

Для настройки сервера Termidesk («Универсальный диспетчер», «Агрегатор», «Менеджер рабочих мест», «Брокер сообщений TermideskMQ») используется конфигурационный файл /etc/opt/termidesk-vdi/termidesk.conf.

Каталог хранения конфигурационного файла termidesk.conf и указанные ниже параметры можно изменить через утилиту termidesk-config.

При установке пакета termidesk-vdi возможно активировать режим отладки инсталлятора через переменную окружения TDSK_DEBUG=1.

Полный перечень параметров, задающихся через файл, приведен в таблице (см. таблицу Параметры файла termidesk.conf).

Таблица 1. Параметры файла termidesk.conf
Параметр Значение по умолчанию Описание

Настройка режима работы ПО

TERMIDESK_FARM_MODE

Не задано

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора», «Брокера сообщений TermideskMQ».

Определяет режим работы Termidesk.

Возможные значения:

  • BROKER - установка фермы «Универсального диспетчера»;

  • AGGREGATOR - установка фермы «Агрегатора».

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

Настройки установленных ролей Termidesk

NODE_ROLES

Не задано

Параметр обязателен и задается на этапе установки на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора», «Брокера сообщений TermideskMQ».

Определяет тип роли, с которой будет установлен Termidesk. Возможные значения:

  • ADMIN - роль «Портал администратора» (ферма «Универсального диспетчера») или «Агрегатор администратора» (ферма «Агрегатора»);

  • USER - роль «Портал пользователя» (ферма «Универсального диспетчера») или «Агрегатор пользователя» (ферма «Агрегатора»);

  • CELERYMAN - роль «Менеджер рабочих мест»;

  • TERMQ - роль «Брокер сообщений».

При переустановке значение параметра в конфигурационном файле будет перезаписано

Настройка языка сервера Termidesk

LANGUAGE_CODE

en

Параметр обязателен и задается на этапе установки.

Определяет язык сервера Termidesk, использующийся по умолчанию. Значение соответствует коду языка согласно ISO-639-1

Настройка уникального имени узла

NODE_NAME

Не задано

Параметр обязателен и задается на этапе установки.

Определяет уникальное имя узла для его идентификации в различных структурах Termidesk.

В частности:

* для идентификации узлов «Агрегатора» во время балансировки подключений к ним; * для отображения узла в разделе «Инфраструктура» «Портала администратора»

Следует задавать уникальное имя узла понятным и отражающим его роль, например «AdminPortal-01», «UserPortal-01».

По умолчанию для заполнения параметра используется заданный в системе hostname и буквенно-числовой идентификатор

Настройка проверки данных при взаимодействии компонентов Termidesk

DJANGO_SECRET_KEY

Не задано

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Используется для проверки данных, пересылаемых между компонентами Termidesk. Значение генерируется при установке Termidesk и должно быть одинаковым для всех узлов при распределенной установке.

Параметр может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему:

DJANGO_SECRET_KEY='hvac-kv://secret#termidesk-admin/django/key'

Если параметр располагается в хранилище паролей, то все параметры, ранее заданные с преобразованными через утилиту scramble значениями, должны быть указаны с открытыми значениями (RABBITMQ_URL, DBPASS и др.). Это ограничение связано с тем, что при выборе на этапе установки хранилища для параметров подразумевается, что защита чувствительных данных реализуется только через хранилище

Настройки токена доступа к API для проверок состояния служб Termidesk

HEALTH_CHECK_ACCESS_KEY

Не задано

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет токен доступа к API проверки состояния сервера. Начальное значение генерируется на этапе установки.

При задании значения параметра следует руководствоваться правилом, что:

  • размер должен составлять от 0 до 64 символа;

  • должны использоваться символы в шестнадцатеричной системе (0-9, a-f).

Значение также может быть сгенерировано через openssl: openssl rand -hex 32.

Параметр может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему:

HEALTH_CHECK_ACCESS_KEY='hvac-kv://secret#termidesk-admin/tokens/healthcheck'

Настройки токена доступа к API получения метрик узла

METRICS_ACCESS_KEY

Не задано

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет токен доступа к API получения метрик узла. Начальное значение генерируется на этапе установки.

При задании значения параметра следует руководствоваться правилом, что:

  • размер должен составлять от 0 до 64 символа;

  • должны использоваться символы в шестнадцатеричной системе (0-9, a-f).

Значение также может быть сгенерировано через openssl: openssl rand -hex 32.

Параметр может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему:

METRICS_ACCESS_KEY='hvac-kv://secret#termidesk-admin/tokens/metrics'

Настройки подключения к СУБД

DB_CLUSTER_MODE

Не задано

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет тип установки СУБД, к которой осуществляется подключение.

Возможные значения:

  • single - подключение производится к отдельному серверу СУБД;

  • cluster - подключение производится к кластеру СУБД, адреса нод которого заданы в DBHOST, DBHOST2, DBHOST3. Termidesk будет последовательно обращаться к заданным адресам нод, пока не подключится к мастер-ноде

DBHOST

Не задано

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет IP-адрес или FQDN СУБД PostgreSQL.

Начальное значение задается на этапе подготовке среды функционирования и установки Termidesk

DBHOST2

Не задано

Параметр необязательный, может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет IP-адрес или FQDN дополнительного узла СУБД PostgreSQL, если используется подключение к кластеру СУБД (см. параметр DB_CLUSTER_MODE).

Начальное значение задается на этапе установки Termidesk

DBHOST3

Не задано

Параметр необязательный, может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет IP-адрес или FQDN дополнительного узла СУБД PostgreSQL, если используется подключение к кластеру СУБД (см. параметр DB_CLUSTER_MODE).

Начальное значение задается на этапе установки Termidesk

DBPORT

5432

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет порт соединения с сервером БД

DBSSL

Не задано

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет протокол подключения к БД.

Возможные значения:

  • Disable;

  • TLSv1.2;

  • TLSv1.3.

Начальное значение задается на этапе установки Termidesk

DBNAME

Не задано

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет имя БД.

Начальное значение задается на этапе подготовки среды функционирования перед установкой Termidesk

DBUSER

Не задано

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет имя пользователя, имеющего доступ к БД.

Начальное значение задается на этапе подготовки среды функционирования перед установкой Termidesk

DBPASS

Не задано

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет пароль пользователя, имеющего доступ к БД.

Начальное значение задается на этапе подготовки среды функционирования во время установки Termidesk и хранится в конфигурационном файле termidesk.conf в преобразованном виде.

В стандартных установках значение менять не следует.

Чтобы получить преобразованное значение пароля, следует воспользоваться утилитой scramble:

  • для получения значения по стандартному алгоритму (не рекомендуется): /opt/termidesk/bin/scramble --value <пароль> --type AES256;

  • для получения значения с увеличенным числом итераций преобразования (рекомендуется): /opt/termidesk/bin/scramble --value <пароль> --type AES256_V2

Если значение пароля указывается в формате ключа (значение предваряется символом «-»), то следует изменить его передачу в параметр --value: /opt/termidesk/bin/scramble --value=←пароль> --type AES256_V2

Если конфигурационный файл termidesk.conf хранится в каталоге, отличном от /etc/opt/termidesk-vdi/, может потребоваться указание дополнительного параметра --config в утилите scramble.

DBCERT

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к клиентскому сертификату mTLS для защищенного подключения к БД.

mTLS - метод обеспечения защищенного соединения с БД через двустороннюю аутентификацию с использованием сертификатов.

Для использования сертификата нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.crt

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.crt

  • установить корневой сертификат ЦС.

Сертификат может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему:

DBCERT='hvac-kv://secret#termidesk-admin/ssl-cert-snakeoil/pem'

DBKEY

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к ключу mTLS для защищенного подключения к БД.

Ключ может иметь парольную защиту. Для использования ключа нужно преобразовать его к начальному значению:

openssl rsa -in <путь_к_файлу_ключа.key> -out <путь_сохранения_преобразованного_ключа.key>

Для использования ключа нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.key

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.key

  • установить корневой сертификат ЦС, если ранее он не был установлен.

Ключ может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему:

DBKEY='hvac-kv://secret#termidesk-admin/ssl-cert-snakeoil/key'

DBCHAIN

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к промежуточному сертификату mTLS для защищенного подключения к БД.

Для использования сертификата нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.pem

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.pem

  • установить корневой сертификат ЦС, если ранее он не был установлен.

Сертификат может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему.

Пример задания сертификата из хранилища:

DBCHAIN='hvac-kv://secret#termidesk-admin/ssl-cert-snakeoil/ca'

DB_CONN_MAX_AGE

0

Максимально допустимое время (в секундах) существования одного подключения к БД.

Параметр управляет жизненным циклом подключения к БД для Django. Для корректной работы это значение должно быть меньше аналогичной настройки на БД, которая может закрывать простаивающие подключения по истечении времени.

Значение 0:

  • обеспечивает совместимость с предыдущими версиями Termidesk;

  • определяет, что подключения к БД будут закрыты после обработки HTTP-запроса

CELERY_DB_REUSE_MAX

1000

Количество фоновых задач, которое может быть выполнено в рамках одного подключения к БД. По достижении этого количества подключение к БД пересоздастся.

Параметр управляет жизненным циклом подключения к БД для служб celery «Менеджера рабочих мест»

DB_CONN_TIMEOUT

10

Время ожидания (в секундах) подключения к БД

Настройки «Менеджера рабочих мест» для распределенной установки

CELERY_BEAT_PRIMARY_CHECK_INTERVAL

30

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет интервал (в секундах) проверки доступности главного процесса среди всех экземпляров «Менеджера рабочих мест» (службы termidesk-celery-beat).

Параметры CELERY_BEAT_PRIMARY_CHECK_INTERVAL и CELERY_BEAT_PRIMARY_LOCK_TIMEOUT реализуют механизм корректной работы termidesk-celery-beat при распределенной установке:

  • при запуске нескольких экземпляров termidesk-celery-beat каждый из них пытается сделать запись в кеше БД. БД используется одна на все экземпляры;

  • если экземпляр termidesk-celery-beat:

    • делает запись в БД, то он отправляет сообщения в очередь брокера сообщений;

    • не делает запись в БД, то он ожидает своей очереди на добавление записи

CELERY_BEAT_PRIMARY_LOCK_TIMEOUT

45

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет время (в секундах) действия блокировки главного процесса среди всех экземпляров «Менеджера рабочих мест» (службы termidesk-celery-beat).

Значение параметра CELERY_BEAT_PRIMARY_LOCK_TIMEOUT должно превышать значение CELERY_BEAT_PRIMARY_CHECK_INTERVAL.

Это необходимо для возможности продления интервала проверки главным процессом termidesk-celery-beat

Настройка подключения к брокеру сообщений (RabbitMQ или TermideskMQ)

RABBITMQ_URL

Не задано

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет URL-адрес подключения к серверам брокера сообщений. Параметр используется как для RabbitMQ, так и для TermideskMQ.

Можно подключить до трех (включительно) серверов.

Пароль подключения к брокеру сообщений, указанный в RABBITMQ_URL, хранится в конфигурационном файле termidesk.conf в преобразованном виде.

Чтобы получить преобразованное значение пароля, следует воспользоваться утилитой scramble:

  • для получения значения по стандартному алгоритму (не рекомендуется): /opt/termidesk/bin/scramble --value <пароль> --type AES256;

  • для получения значения с увеличенным числом итераций преобразования (рекомендуется): /opt/termidesk/bin/scramble --value <пароль> --type AES256_V2.

Если значение пароля указывается в формате ключа (значение предваряется символом «-»), то следует изменить его передачу в параметр --value: /opt/termidesk/bin/scramble --value=←пароль> --type AES256_V2

Если конфигурационный файл termidesk.conf хранится в каталоге, отличном от /etc/opt/termidesk-vdi/, может потребоваться указание дополнительного параметра --config.

Для использования преобразованного значения следует указать его в RABBITMQ_URL и выполнить перезапуск служб.

Начальное значение RABBITMQ_URL задается на этапе установки

RABBITMQ_SSL

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет протокол подключения к брокеру сообщений. Параметр используется как для RabbitMQ, так и для TermideskMQ.

Возможные значения: Disable, TLSv1.2.

Начальное значение задается на этапе установки

Настройки защищенного подключения к брокеру сообщений (RabbitMQ или TermideskMQ)

CELERY_BROKER_CERT

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к клиентскому сертификату mTLS для защищенного подключения к брокеру сообщений (RabbitMQ или TermideskMQ).

Для использования сертификата нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.crt;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.crt;

  • установить корневой сертификат ЦС, если ранее он не был установлен.

Сертификат может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему:

CELERY_BROKER_CERT='hvac-kv://secret#termidesk-admin/ssl-cert-snakeoil/pem'

CELERY_BROKER_KEY

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к закрытому ключу mTLS для защищенного подключения к брокеру сообщений (RabbitMQ или TermideskMQ).

Ключ может иметь парольную защиту. Для использования в Termidesk нужно преобразовать его к начальному значению: openssl rsa -in <путь_к_файлу_ключа.key> -out <путь_сохранения_преобразованного_ключа.key>.

Для использования ключа нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.key;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.key;

  • установить корневой сертификат ЦС, если ранее он не был установлен.

Ключ может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему:

CCELERY_BROKER_KEY='hvac-kv://secret#termidesk-admin/ssl-cert-snakeoil/key'

CELERY_BROKER_CA

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к корневому сертификату ЦС mTLS для защищенного подключения к брокеру сообщений (RabbitMQ или TermideskMQ).

Для использования сертификата нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.crt;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.crt;

  • установить корневой сертификат ЦС.

Сертификат может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему:

CELERY_BROKER_CA='hvac-kv://secret#termidesk-admin/ssl-cert-snakeoil/ca'

Настройки журналирования

LOG_LEVEL

INFO

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет уровень журналирования сообщений.

Возможные значения: DEBUG, INFO, WARNING, ERROR, CRITICAL.

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

LOG_ADDRESS

/dev/log

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет адрес отправки записей в системный журнал. Обычно это /dev/log для Linux-систем. Возможно указать IP-адрес и порт

LOG_FACILITY

local3

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет категорию сообщений syslog.

Категория должна совпадать с настройками в конфигурационном файле /etc/syslog-ng/conffirst.d/termidesk.conf. При редактирование параметра через утилиту termidesk-config нужные значения в настройку syslog-ng будут подставлены автоматически

Настройки шаблонов для регистрации событий и журналирования (syslog-ng и logrotate)

LOG_DIR

/var/log/termidesk

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к каталогу с журналами, используется в настройках шаблонов logrotate и syslog-ng. Путь к шаблонам определен в файле /etc/default/termidesk-vdi.local.

Каталог должен обладать следующими свойствами:

  • права доступа: rwxr-x--- (в восьмеричной записи - 750);

  • владелец и группа: root:termidesk.

Рекомендуется выполнять изменение параметра через утилиту termidesk-config.

Если изменение параметра выполнено вручную, то требуется выполнить команду: sudo /opt/termidesk/sbin/termidesk-config update_logger_config

LOG_OWNER

termidesk

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет владельца файлов журналов, используется в настройках шаблонов logrotate и syslog-ng. Путь к шаблонам определен в файле /etc/default/termidesk-vdi.local.

Рекомендуется выполнять изменение параметра через утилиту termidesk-config.

Если изменение параметра выполнено вручную, то требуется выполнить команду: sudo /opt/termidesk/sbin/termidesk-config update_logger_config

LOG_GROUP

adm

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет группу-владельца файлов журналов, используется в настройках шаблонов logrotate и syslog-ng. Путь к шаблонам определен в файле /etc/default/termidesk-vdi.local.

Рекомендуется выполнять изменение параметра через утилиту termidesk-config.

Если изменение параметра выполнено вручную, то требуется выполнить команду: sudo /opt/termidesk/sbin/termidesk-config update_logger_config

LOG_PERM

0440

Параметр может быть задан на узлах «Универсального диспетчера»,«Менеджера рабочих мест», «Агрегатора».

Определяет права доступа к файлам журналов, используется в настройках шаблонов logrotate и syslog-ng. Путь к шаблонам определен в файле /etc/default/termidesk-vdi.local.

Рекомендуется выполнять изменение параметра через утилиту termidesk-config.

Если изменение параметра выполнено вручную, то требуется выполнить команду: sudo /opt/termidesk/sbin/termidesk-config update_logger_config

LOG_DEEP

14

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет количество устаревеших файлов журналов, которое нужно хранить. Используется в настройках шаблонов logrotate и syslog-ng. Путь к шаблонам определен в файле /etc/default/termidesk-vdi.local.

Рекомендуется выполнять изменение параметра через утилиту termidesk-config.

Если изменение параметра выполнено вручную, то требуется выполнить команду: sudo /opt/termidesk/sbin/termidesk-config update_logger_config

INTERNAL_AUDIT

Disabled

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет включение или отключение записи событий аудита с анонимным пользователем в БД. Анонимный пользователь AnonymousUser(AnonymousAuth) указывается для запросов, выполняемых без аутентификации.

Возможные значения:

  • Enabled - запись событий аудита с анонимным пользователем включена;

  • Disabled - запись событий аудита с анонимным пользователем отключена

Настройки защищенного подключения для проверок состояния служб «Менеджера рабочих мест»

HEALTH_CHECK_CERT

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора» (в зависимости от варианта установки).

Определяет путь к сертификату SSL/TLS для защищенного подключения к API проверки состояния служб «Менеджера рабочих мест».

Для использования сертификата нужно:

* скопировать его в каталог /etc/opt/termidesk-vdi/; * назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.crt; * изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.crt; * установить корневой сертификат ЦС, если ранее он не был установлен.

Сертификат может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему:

HEALTH_CHECK_CERT='hvac-kv://secret#termidesk-admin/ssl-cert-snakeoil/pem'

HEALTH_CHECK_KEY

Не задано

Параметр может быть задан на узлах «Универсального диспетчера»,«Менеджера рабочих мест», «Агрегатора» (в зависимости от варианта установки).

Определяет путь к ключу SSL/TLS для защищенного подключения к API проверки состояния служб «Менеджера рабочих мест».

Ключ может иметь парольную защиту. Для использования ключа нужно преобразовать его к начальному значению: openssl rsa -in <путь_к_файлу_ключа.key> -out <путь_сохранения_преобразованного_ключа.key>

Для использования ключа нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.key;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.key;

  • установить корневой сертификат ЦС, если ранее он не был установлен.

Ключ может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему:

HEALTH_CHECK_KEY='hvac-kv://secret#termidesk-admin/ssl-cert-snakeoil/key'

Настройки проверок состояния (health check)

CELERY_BEAT_HEALTH_CHECK_PORT

8103

Параметр обязателен и задается на узлах с установленным «Менеджером рабочих мест».

Определяет порт, на котором работает веб-сервер для обслуживания API проверки состояния компонента «Менеджер рабочих мест» (службы termidesk-celery-beat).

Изначально параметр закомментирован (используется значение по умолчанию)

CELERY_BEAT_HEALTH_CHECK_IP

0.0.0.0

Параметр обязателен и задается на узлах с установленным «Менеджером рабочих мест».

Определяет IP-адрес, с которым служба termidesk-celery-beat регистрируется в подсистеме проверки состояния на странице «Инфраструктура» Termidesk. Опрос состояния службы будет проводиться по этому адресу. Если IP-адрес не задан, то будет использоваться имя (hostname) или FQDN узла.

Изначально параметр закомментирован (используется значение по умолчанию)

CELERY_WORKER_HEALTH_CHECK_PORT

8104

Параметр обязателен и задается на узлах с установленным «Менеджером рабочих мест».

Определяет порт, на котором работает веб-сервер для обслуживания API проверки состояния компонента «Менеджер рабочих мест» (службы termidesk-celery-worker).

Изначально параметр закомментирован (используется значение по умолчанию)

CELERY_WORKER_HEALTH_CHECK_IP

0.0.0.0

Параметр обязателен и задается на узлах с установленным «Менеджером рабочих мест».

Определяет IP-адрес, с которым служба termidesk-celery-worker регистрируется в подсистеме проверки состояния на странице «Инфраструктура». Опрос состояния службы будет проводиться по этому адресу. Если IP-адрес не задан, то будет использоваться имя (hostname) или FQDN узла.

Изначально параметр закомментирован (используется значение по умолчанию)

HEALTH_CHECK_TIMEOUT

10

Таймаут (в секундах) обработки запроса проверки состояния.

По истечении указанного времени:

  • возвращается стандартная для health check структура ответа;

  • проверки, которые не успели завершиться, приобретают статус «fail» с причиной «timeout»

CELERY_HEALTH_CHECK_CHECKS

Не задано

Определяет список проверок состояния, выполняемые узлом «Менеджер рабочих мест» (службами termidesk-celery-beat и termidesk-celery-worker).

Таймаут обработки запроса проверки состояния определяется параметром HEALTH_CHECK_TIMEOUT.

Возможные значения:

  • db - проверка БД (проверяется подключение);

  • rabbit - проверка брокера сообщений (проверяется состояние);

  • fluentd - проверка компонента «Ретранслятор» (проверяется состояние и отправляется тестовое сообщение).

Если значение не задано, то выполняются все проверки

TERMIDESK_HEALTH_CHECK_CHECKS

Не задано

Определяет список проверок состояния, выполняемые узлом «Универсальный диспетчер».

Таймаут обработки запроса проверки состояния определяется параметром HEALTH_CHECK_TIMEOUT.

Возможные значения:

  • celery - проверка компонента «Менеджер рабочих мест» (проверяется состояние обработчика);

  • db - проверка БД (проверяется подключение);

  • rabbit - проверка брокера сообщений (проверяется состояние);

  • fluentd - проверка компонента «Ретранлятор» (проверяется состояние и отправляется тестовое сообщение).

Если значение не задано, то выполняются все проверки

AGGREGATOR_HEALTH_CHECK_CHECKS

Не задано

Определяет список проверок состояния, выполняемые узлом «Агрегатор».

Таймаут обработки запроса проверки состояния определяется параметром HEALTH_CHECK_TIMEOUT.

Возможные значения:

  • celery - проверка компонента «Менеджер рабочих мест» (проверяется состояние обработчика);

  • db - проверка БД (проверяется подключение);

  • rabbit - проверка брокера сообщений (проверяется состояние);

  • fluentd - проверка компонента «Ретранлятор» (проверяется состояние и отправляется тестовое сообщение);

  • sites - проверка сайтов «Агрегатора» (проверяется состояние сайтов, в случае неактивности выполняется перевод в статус «warning»).

Если значение не задано, то выполняются все проверки

Настройки подключения к серверу «Удаленного помощника»

REMOTE_ASSISTANT_SERVER_CA

Не задано

Параметр может быть задан на узлах «Универсального диспетчера» («Портал администратора», «Портал пользователя»).

Определяет путь к корневому сертификату SSL/TLS и используется для проверки подключения к «Удаленному помощнику» (проверка того, что подключение происходит к нужному серверу «Удаленного помощника»).

Для использования сертификата нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.pem;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.pem;

  • установить корневой сертификат ЦС, если ранее он не был установлен.

Сертификат может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему:

REMOTE_ASSISTANT_SERVER_CA='hvac-kv://secret#termidesk-admin/ssl-cert-snakeoil/pem'

Настройки доверенных корневых сертификатов

REQUESTS_CA_BUNDLE

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к файлу с доверенным корневым сертификатом, задается для настройки работы с сертификатами собственных ЦС.

По умолчанию параметр не используется (закомментирован).

Параметр является переменной окружения. Рекомендуется задать его в файле termidesk.conf и в /etc/default/termidesk-vdi.local, иначе его обработка не гарантируется

Настройка сертификатов для веб-сервера Apache

HTTP_SERVER_CERT

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Агрегатора».

Определяет путь к файлу с серверным сертификатом для веб-сервера Apache.

Если для хранения чувствительной информации используется хранилище паролей OpenBao или Hashicorp Vault и заданы пути к сертификатам и ключам из хранилища, то они будут скопированы в каталог /dev/shm/:

  • /dev/shm/http.crt;

  • /dev/shm/http.key;

  • /dev/shm/http_ca.crt.

При этом обновление сертификата, если такое предусмотрено, будет выполняться на веб-сервере автоматически через службу termidesk-watchdog.service и файл /lib/systemd/system/termidesk-watchdog.path.

Если сертификаты и ключи не заданы в параметрах, то будут использоваться сертификаты и ключи по умолчанию (из ОС)

HTTP_SERVER_KEY

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Агрегатора».

Определяет путь к файлу с закрытым ключом для веб-сервера Apache.

Условия использования аналогичны параметру HTTP_SERVER_CERT

HTTP_SERVER_CA

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Агрегатора».

Определяет путь к файлу с цепочкой сертификатов корневого и промежуточного УЦ для веб-сервера Apache.

Условия использования аналогичны параметру HTTP_SERVER_CERT

Настройки, связанные с лицензированием

EULA_ACCEPTED

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет принятие лицензионного соглашения при установке. В случае автоматизированной установки наличие параметра обязательно

LICENSE_CACHE_TIME

0

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест».

Определяет время (в секундах) кеширования данных о лицензии для внутренних процессов Termidesk. Если срок кеширования истек, то следующее обращение к лицензии вызовет:

  • ее считывание из БД;

  • обновление времени кеширования.

Возможные значения:

  • 0 - кеширование данных о лицензии отключено;

  • значение, большее 0 - кеширование данных о лицензии включено. Если была добавлена новая лицензия, то данные о ней не будут отображаться до истечения времени кеширования

Настройки узла «Агрегатора» и его взаимодействия с «Универсальным диспетчером»

AGGREGATOR_JWT_SSL_CERT

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», использующихся в фермах, подключаемых к «Агрегатору». Обязателен для заполнения в случае, если в инфраструктуре используется «Агрегатор».

Определяет путь к сертификату для получения значения JWT-токена «Агрегатора».

Для использования сертификата нужно:

* скопировать его в каталог /etc/opt/termidesk-vdi/; * назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.pem; * изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.pem; * установить корневой сертификат ЦС, если ранее он не был установлен.

Сертификат может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему:

AGGREGATOR_JWT_SSL_CERT='hvac-kv://secret#termidesk-admin/ssl-cert-snakeoil/pem'

AGGREGATOR_JWT_SSL_CERT_SECOND

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», использующихся в фермах, подключаемых к «Агрегатору». Обязателен для заполнения в случае, если в инфраструктуре используется «Агрегатор».

Определяет путь к резервному сертификату для получения значения JWT-токена «Агрегатора».

Если сертификат, заданный в AGGREGATOR_JWT_SSL_CERT, станет невалидным, то будет использоваться сертификат, указанный в AGGREGATOR_JWT_SSL_CERT_SECOND.

Для использования сертификата нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.pem;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.pem;

  • установить корневой сертификат ЦС, если ранее он не был установлен.

Сертификат может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему:

AGGREGATOR_JWT_SSL_CERT_SECOND='hvac-kv://secret#termidesk-admin/ssl-cert-snakeoil/pemsecond'

AGGREGATOR_JWT_SSL_KEY

Не задано

Параметр обязателен и задается на узлах «Агрегатора» (портал «Агрегатор пользователя» и портал «Агрегатор администратора»), «Менеджера рабочих мест».

Определяет путь к ключу для подписи JWT-токена «Агрегатора».

Для использования ключа нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.key;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.key;

  • установить корневой сертификат ЦС, если ранее он не был установлен.

Ключ может быть расположен в специальном хранилище паролей, в этом случае указывается путь к нему:

AGGREGATOR_JWT_SSL_KEY='hvac-kv://secret#termidesk-admin/ssl-cert-snakeoil/key'

AGGREGATOR_YAML_FILE

Не задано

Параметр задается на узлах с установленным «Агрегатором».

Параметр определяет путь к файлу mapping.yaml, содержащему сопоставление между именами узлов (NODE_NAME) «Агрегатора» и их полным доменным именем (FQDN) или IP-адресом.

При работе с географической балансировкой (GSLB) файл должен быть одинаков на всех узлах распределенной установки «Агрегатора» для корректной обработки переключений между узлами и фермами «Агрегатора».

Файл может располагаться в файловой системе узла или в хранилище чувствительной информации:

AGGREGATOR_YAML_FILE='/etc/opt/termidesk-vdi/mapping.yaml'

Настройки подключения к хранилищу паролей OpenBao

SECRETS_STORAGE_METHOD

Не задано

Параметр обязателен и задается на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет способ хранения паролей подключения к СУБД и RabbitMQ:

  • config - пароли будут храниться в преобразованном виде в файле termidesk.conf;

  • hvac - для хранения паролей будет использоваться хранилище паролей OpenBao или Hashicorp Vault (хранилище должно быть заранее создано и настроено);

  • openbao - для хранения паролей будет использоваться хранилище паролей OpenBao (хранилище должно быть заранее создано и настроено). При этом пароли располагаются внутри хранилища, имена контейнеров хранения генерируются автоматически.

Если для хранения чувствительной информации используется хранилище паролей OpenBao или Hashicorp Vault и в параметрах HTTP_SERVER_CERT, HTTP_SERVER_KEY, HTTP_SERVER_CA заданы пути к сертификатам и ключам из хранилища, то они будут скопированы для веб-сервера Apache (см. описание параметров).

Хранилище паролей OpenBao должно быть реализовано в отказоустойчивом варианте, иначе Termidesk не будет работать в период простоя узлов OpenBao.

Начальное значение задается на этапе установки

SECRETS_OPENBAO_URL

http://openbao:8200

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет IP-адреса или FQDN узла и порта с установленным хранилищем OpenBao.

Параметр задается, если для SECRETS_STORAGE_METHOD задано значение openbao или hvac.

Формат: http://<IP-адрес или FQDN>:8200.

Подключение может выполняться по протоколу HTTPS, если OpenBao настроен соответствующим образом.

Начальное значение задается на этапе установки.

Пример задания параметра:

SECRETS_OPENBAO_URL='http://127.0.0.1:8200'

SECRETS_OPENBAO_KV_VERSION

1

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Используется для указания версии API OpenBao.

Параметр задается, если для SECRETS_STORAGE_METHOD задано значение openbao или hvac.

Возможные значения:

  • 1 (по умолчанию);

  • 2.

Начальное значение задается на этапе установки.

Пример задания параметра:

SECRETS_OPENBAO_KV_VERSION=1

SECRETS_OPENBAO_CLIENT_CERT

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к сертификату mTLS для начального защищенного подключения к OpenBao. OpenBao должен быть настроен соответствующим образом. Пример конфигурации OpenBao приведен после таблицы.

Особенности функционирования:

  • если параметры SECRETS_OPENBAO_CLIENT_CERT и SECRETS_OPENBAO_CLIENT_KEY заданы, то выполняется защищенное соединение по протоколу TLS;

  • если параметры SECRETS_OPENBAO_CLIENT_CERT и SECRETS_OPENBAO_CLIENT_KEY не заданы, то выполняется незащищенное соединение;

  • если помимо параметров SECRETS_OPENBAO_CLIENT_CERT, SECRETS_OPENBAO_CLIENT_KEY задан SECRETS_OPENBAO_SERVER_CERT, то выполняется защищенное соединение по протоколу mTLS;

  • сертификат должен размещаться в файловой системе узла (внешнее хранилище не используется).

Начальное защищенное соединение настраивается в случаях, если сертификаты имеют продолжительный срок действия или их обновление производится средствами, отличными от OpenBao. В случае, если у сертифкатов непродолжительный срок действия или их обновление производится через OpenBao, следует выполнить настройку параметр SECRETS_OPENBAO_PKI_CERTS.

Для использования сертификата нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.crt;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.crt;

  • установить корневой сертификат ЦС, если ранее он не был установлен.

Пример задания параметра:

SECRETS_OPENBAO_CLIENT_CERT='/etc/opt/termidesk-vdi/openbao-client.crt'

SECRETS_OPENBAO_CLIENT_KEY

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к ключу mTLS для начального защищенного подключения к OpenBao. OpenBao должен быть настроен соответствующим образом. Пример конфигурации OpenBao приведен после таблицы.

Особенности функционирования:

  • если параметры SECRETS_OPENBAO_CLIENT_CERT и SECRETS_OPENBAO_CLIENT_KEY заданы, то выполняется защищенное соединение по протоколу TLS;

  • если параметры SECRETS_OPENBAO_CLIENT_CERT и SECRETS_OPENBAO_CLIENT_KEY не заданы, то выполняется незащищенное соединение;

  • если помимо параметров SECRETS_OPENBAO_CLIENT_CERT, SECRETS_OPENBAO_CLIENT_KEY задан SECRETS_OPENBAO_SERVER_CERT, то выполняется защищенное соединение по протоколу mTLS;

  • ключ должен размещаться в файловой системе узла (внешнее хранилище не используется).

Начальное защищенное соединение настраивается в случаях, если сертификаты имеют продолжительный срок действия или их обновление производится средствами, отличными от OpenBao. В случае, если у сертифкатов непродолжительный срок действия или их обновление производится через OpenBao, следует выполнить настройку параметра SECRETS_OPENBAO_PKI_CERTS.

Ключ может иметь парольную защиту. Для использования ключа в Termidesk нужно преобразовать его к начальному значению: openssl rsa -in <путь_к_файлу_ключа.key> -out <преобразованный_ключ.key>.

Для использования ключа нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.key;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.key;

  • установить корневой сертификат ЦС, если ранее он не был установлен.

Пример задания параметра:

SECRETS_OPENBAO_CLIENT_KEY='/etc/opt/termidesk-vdi/openbao-client.key'

SECRETS_OPENBAO_SERVER_CERT

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к промежуточному сертификату ЦС mTLS для начального защищенного подключения к OpenBao. OpenBao должен быть настроен соответствующим образом. Пример конфигурации OpenBao приведен после таблицы.

Для работы защищенного соединения по протоколу mTLS требуется задать параметры SECRETS_OPENBAO_CLIENT_CERT, SECRETS_OPENBAO_CLIENT_KEY.

Сертификат должен размещаться в файловой системе узла (внешнее хранилище не используется).

Для использования сертификата нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.pem;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.pem;

  • установить корневой сертификат ЦС, если ранее он не был установлен.

Пример задания параметра:

SECRETS_OPENBAO_SERVER_CERT='/etc/opt/termidesk-vdi/openbao-ca.pem'

SECRETS_OPENBAO_PKI_CERTS

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к клиентскому сертфикату и ключу, размещенному в OpenBao, для вторичной проверки подключения к OpenBao.

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

Пример задания параметра:

SECRETS_OPENBAO_PKI_CERTS = 'hvac-pki://pki?common_name=www.my-website.com#example-dot-com/issuing_ca'

SECRETS_OPENBAO_TOKEN

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к файлу, содержащему одноразовый токен доступа к OpenBao.

Параметр задается, если для SECRETS_STORAGE_METHOD задано значение openbao или hvac.

Пример задания параметра:

SECRETS_OPENBAO_TOKEN='/etc/opt/termidesk-vdi/openbao.token'

SECRETS_OPENBAO_DB_PATH

hvac-kv://secret#postgresql/

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь, настроенный на OpenBao и используемый для хранения данных подключения к СУБД.

Параметр задается, если для SECRETS_STORAGE_METHOD задано значение openbao или hvac.

Начальное значение задается на этапе установки.

Данные могут быть расположены в специальном хранилище паролей, в этом случае указывается путь к ним:

SECRETS_OPENBAO_DB_PATH='hvac-kv://secret#/postgresql/'

SECRETS_OPENBAO_ROLE_NAME

termidesk-role

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет роль (имя приложения), настроенную на OpenBao и имеющую доступ к логинам и паролям.

Параметр задается, если для SECRETS_STORAGE_METHOD задано значение openbao или hvac.

Начальное значение задается на этапе установки.

Пример задания параметра:

SECRETS_OPENBAO_ROLE_NAME='vdi-role'

SECRETS_OPENBAO_ROLE_ID

a877a491-71a4-bfe8-e24c-d5beff3dddd2

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет идентификатор роли, заданной в параметре SECRETS_OPENBAO_ROLE_NAME. Идентификатор должен быть получен на OpenBao.

Параметр задается, если для SECRETS_STORAGE_METHOD задано значение openbao или hvac.

Пример задания параметра:

SECRETS_OPENBAO_ROLE_ID='a877a491-71a4-bfe8-e24c-d5beff3dddd2'

SECRETS_OPENBAO_WATCHDOG_INTERVAL

10

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет интервал (в секундах) проверки актуальности одноразового токена (параметр SECRETS_OPENBAO_TOKEN).

Параметр задается, если для SECRETS_STORAGE_METHOD задано значение openbao или hvac

SECRETS_OPENBAO_TTL_DEADLINE

30

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет оставшееся время (в секундах) актуальности одноразового токена, по достижении которого он будет обновлен.

Параметр задается, если для SECRETS_STORAGE_METHOD задано значение openbao или hvac

SECRETS_OPENBAO_WRAP_TTL

10m

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет время актуальности (в минутах) одноразового токена.

Параметр задается, если для SECRETS_STORAGE_METHOD задано значение openbao или hvac

SECRETS_OPENBAO_NAMESPACE

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет пространство имени, заданного на OpenBao.

Параметр задается, если для SECRETS_STORAGE_METHOD задано значение openbao или hvac

SECRETS_OPENBAO_RABBITMQ_PATH

hvac-kv://secret#rabbitmq/

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь, настроенный на OpenBao и используемый для хранения данных подключения к RabbitMQ.

Параметр задается, если для SECRETS_STORAGE_METHOD задано значение openbao или hvac.

Начальное значение задается на этапе установки.

Данные могут быть расположены в специальном хранилище паролей, в этом случае указывается путь к ним:

SECRETS_OPENBAO_RABBITMQ_PATH='hvac-kv://secret#/rabbitmq/'

SECRETS_OPENBAO_TERMIDESK_PATH

/termidesk

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь, настроенный на OpenBao для хранения паролей Termidesk.

Параметр задается, если для SECRETS_STORAGE_METHOD задано значение openbao или hvac.

Начальное значение задается на этапе установки.

Пример задания параметра:

SECRETS_OPENBAO_TERMIDESK_PATH='hvac-kv://secret#/termidesk'

SECRETS_OPENBAO_CACHE_LIFETIME

5

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет время (в секундах) хранения пароля, полученного от OpenBao, во внутренней памяти. Позволяет сохранить полученный от OpenBao пароль на некоторое время в кеше для сокращения количества обращений к OpenBao.

Параметр задается, если для SECRETS_STORAGE_METHOD задано значение openbao или hvac.

Начальное значение задается на этапе установки

Настройки взаимодействия с узлом «Ретранслятора»

FLUENTD_CACHE

15

Параметр может быть задан на узлах «Универсального диспетчера».

Определяет время (в секундах) кеширования параметров подключения к узлу «Ретранслятора».

По умолчанию после установки время кеширования составляет 15 секунд.

В случае, если нужно изменить значение, следует раскомментировать параметр и задать ему новое значение

FLUENTD_TABLE

logs

Параметр может быть задан на узлах «Универсального диспетчера».

Определяет таблицу хранения событий фермы.

По умолчанию после установки «Универсальный диспетчер» обращается к таблице «logs» БД «Ретранслятора». В случае, если в БД «Ретранслятора» для хранения событий используется другая таблица, следует раскомментировать параметр и указать новое имя таблицы

FLUENTD_LOGGER_TIMEOUT

5

Параметр может быть задан на узлах «Универсального диспетчера».

Определяет время (в секундах) ожидания подключения к узлу «Ретранслятора»

Настройки «Шлюза»

WSPROXY_PUB_KEY_FILE

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Агрегатора».

Определяет путь к открытому ключу id_rsa.pub. Используется для подписи токенов при взаимной аутентификации «Шлюза» и «Универсального диспетчера», «Агрегатора».

По умолчанию создается при первой установке и хранится в каталоге /etc/opt/termidesk-vdi/wsproxy. Явно задавать путь следует только при использовани внешнего хранилища.

Пример:

WSPROXY_PUB_KEY_FILE='hvac-kv://secret#termidesk-admin/wsproxy/pub'

WSPROXY_PRIV_KEY_FILE

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Агрегатора».

Определяет путь к закрытому ключу id_rsa. Используется для подписи токенов при взаимной аутентификации «Шлюза» и «Универсального диспетчера», «Агрегатора».

По умолчанию создается при первой установке и хранится в каталоге /etc/opt/termidesk-vdi/wsproxy. Явно задавать путь следует только при использовани внешнего хранилища.

Пример:

WSPROXY_PRIV_KEY_FILE='hvac-kv://secret#termidesk-admin/wsproxy/priv'

Настройка защищенного взаимодействия сервера Termidesk с другими компонентами по mTLS

MTLS_MODE

disabled

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет режим mTLS для взаимодействия между компонентами Termidesk. В этом сценарии сервер Termidesk выступает в роли клиента процесса взаимной аутентификации.

Возможные значения:

  • disabled - результат проверки сертификата игнорируется. В этом режиме mTLS не используется;

  • permissive - нестрогий режим проверки сертификата. Проверка выполняется, но если сертификат не предоставлен или он недействительный, то в журнал записывается предупреждение. Запрос при этом выполняется;

  • strict - строгий режим проверки сертификата. Предоставление действительных сертификатов обязательно. Запрос отклоняется, когда сертификат не прошел проверку

Если включен строгий режим проверки, то работа со всеми API (значение all_api параметра MTLS_CONNECTIONS) и «Агрегатором пользователя» (значение client_aggr_portal параметра MTLS_CONNECTIONS) будет запрещена.

MTLS_CONNECTIONS

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет сценарий взаимодействия между компонентами Termidesk по mTLS.

Узлы должны быть настроены на использование mTLS:

  • должны быть загружены и использоваться валидные клиентские и серверные сертификаты;

  • должен быть активирован режим использования mTLS.

Изменение параметра потребует перезапуска службы termidesk-vdi.

Возможные значения:

  • va_agent - взаимодействие по mTLS осуществляется с «Агентом виртуального рабочего места»;

  • session_agent - взаимодействие по mTLS осуществляется с «Сессионным агентом»;

  • client_aggr_portal - взаимодействие по mTLS осуществляется со всеми видами порталов («Агрегатором пользователя», «Агрегатором администратора», «Порталом администратора», «Порталом пользователя»). Значение не должно использоваться, если включен строгий режим mTLS;

  • gateway - взаимодействие по mTLS осуществляется со шлюзом, обеспечивающим формирование и поддержание соединения;

  • all_api - взаимодействие по mTLS осуществляется для всех API-запросов «Универсального диспетчера». Значение не должно использоваться, если включен строгий режим mTLS;

  • health_check - взаимодействие по mTLS осуществляется для API-запроса /api/health/check «Универсального диспетчера»;

  • metrics - взаимодействие по mTLS осуществляется для API-запроса /api/health/metrics «Универсального диспетчера»

MTLS_CLIENT_CERT

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к клиентскому сертификату mTLS для защищенного подключения и взаимной аутентификации с другими компонентами (например, службами каталогов или платформами виртуализации).

Для работы mTLS необходимо выбрать режим проверки и сценарии в параметрах MTLS_MODE и MTLS_CONNECTIONS.

Для использования сертификата нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.pem;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.pem

MTLS_CLIENT_KEY

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к клиентскому ключу mTLS для защищенного подключения и взаимной аутентификации с другими компонентами (например, службами каталогов или платформами виртуализации).

Для работы mTLS необходимо выбрать режим проверки и сценарии в параметрах MTLS_MODE и MTLS_CONNECTIONS.

Для использования ключа нужно:

* скопировать его в каталог /etc/opt/termidesk-vdi/; * назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.key; * изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.key

MTLS_CLIENT_CA

Не задано

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к клиентскому корневому сертификату mTLS для защищенного подключения и взаимной аутентификации с другими компонентами (например, службами каталогов или платформами виртуализации).

Для работы mTLS необходимо выбрать режим проверки и сценарии в параметрах MTLS_MODE и MTLS_CONNECTIONS.

Для использования сертификата нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.pem;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.pem

Настройка «Брокера сообщений TermideskMQ»

TMQ_BASE_ADDRESS

0.0.0.0

IP-адрес прослушивания входящих подключений для «Брокера сообщений TermideskMQ»

TMQ_BASE_PORT

5555

Номер базового порта «Брокера сообщений TermideskMQ».

Если режим mTLS не используется, то:

  • действует правило выделения портов: <базовый_порт> + один последующий для IP-адреса, указанного в TMQ_BASE_ADDRESS;

  • базовый порт используется для приема сообщений, дополнительный порт - для отправки сообщений.

Если режим mTLS используется, то:

  • в зависимости от базового порта будут определены внутренние TCP-порты для запуска «Брокера сообщений TermideskMQ» на localhost;

  • порты mTLS, использующиеся для IP-адреса, указанного в TMQ_BASE_ADDRESS:

    • базовый порт (например, 5555);

    • базовый порт +1 (например, 5556);

  • внутренние TCP-порты для запуска на localhost:

    • базовый порт + 3 (например, 5558), используется для приема сообщений;

    • базовый порт + 3 + 1 (например, 5559), используется для приема подключения и отправки сообщений

Настройка «Брокера сообщений TermideskMQ» для работы с mTLS

TMQ_SERVER_CERT

Не задано

Определяет путь к серверному сертификату mTLS для «Брокера сообщений TermideskMQ».

Для использования сертификата нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.pem;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.pem

TMQ_SERVER_KEY

Не задано

Определяет путь к ключу для серверного сертификата mTLS для «Брокера сообщений TermideskMQ».

Для использования ключа нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.key;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.key

TMQ_SERVER_CA

Не задано

Определяет путь к корневому сертификату mTLS для «Брокера сообщений TermideskMQ».

Для использования сертификата нужно:

  • скопировать его в каталог /etc/opt/termidesk-vdi/;

  • назначить владельцем файла пользователя termidesk: sudo chown termidesk:termidesk /etc/opt/termidesk-vdi/<имя>.pem;

  • изменить права на файл: sudo chmod 600 /etc/opt/termidesk-vdi/<имя>.pem

Настройка высокодоступной конфигурации «Брокера сообщений TermideskMQ»

TMQ_CLIENT_ID

default

Определяет идентификатор клиента «Брокере сообщений TermideskMQ». Для работы нескольких ферм Termidesk (или ферм «Агрегатора») с одним кластером «Брокера сообщений TermideskMQ» нужно указать уникальный идентификатор для каждой фермы, в этом случае все клиенты в рамках нее полчат один идентификатор.

Тип значения идентификатора - строка

TMQ_TIMEOUT_AWAIT_SENDING_MESSAGEL

10000

Определяет время ожидания ответа от узла кластера «Брокера сообщений TermideskMQ».

При использования высокодоступной конфигурации требуется настройка «Брокера сообщений TermideskMQ» для работы с mTLS

TMQ_PUT_RETRY_COUNT

3

Определяет количество попыток выполнения запроса или отправки сообщения к узлу кластера «Брокера сообщений TermideskMQ».

При использования высокодоступной конфигурации требуется настройка «Брокера сообщений TermideskMQ» для работы с mTLS

Настройки использования веб-интерфейса

TERMIDESK_OLD_INTERFACE_ENABLED

True

Параметр может быть задан на узлах «Универсального диспетчера» («Портал администратора», «Портал пользователя»).

Определяет использование старого веб-интерфейса.

Возможные значения:

  • True - доступны старый и новый веб-интерфейсы;

  • False - доступен только новый веб-интерфейс. При этом будет окно авторизации для старого веб-интерфейса будет доступно, но не будет работать

Настройка взаимодействия со службой каталогов MS AD

AUTH_MSAD_META_USE_UPN

True

Параметр может быть задан на узлах «Универсального диспетчера».

Определяет формат передачи имени метапользователя в службу каталогов MS AD.

Возможные значения:

  • True - для имени метапользователя используется формат UPN;

  • False - для имени метапользователя не используется формат UPN

Настройка подключения пользователя к ВРМ

CONNECTION_TICKET_VALIDITY

60

Параметр может быть задан на узлах «Универсального диспетчера».

Определяет время валидности (в секундах) тикета для подключения пользователя к ВРМ. Значение следует менять только при возникновении ошибок подключения, связанных с долгой обработкой подключения

Пример файла конфигурации сервера OpenBao, который активирует строгую проверку клиентского SSL-сертификата:

listener "tcp" {
tls_min_version = "tls12"
tls_disable = "false"
address = "0.0.0.0:8200"
tls_cert_file = "/etc/bao/openbao.stand8.local.crt"
tls_key_file = "/etc/bao/openbao.stand8.local.key"
# Если включён, то будет проверять сертификат клиента на корректность
tls_require_and_verify_client_cert = "true"
# Если выключён, то будет требовать наличие сертификата клиента
tls_disable_client_certs = "false"
}

Файл /etc/default/termidesk-vdi.local

Для настройки путей хранения файлов конфигурации используется файл /etc/default/termidesk-vdi.local.

Перечень параметров, задающихся через файл, приведен в таблице (см. таблицу [Параметрыфайлаtermidesk-vdi.local]).

Если во время обновления Termidesk было выбрано новое место хранения конфигурации, то:

  • создастся (если не существовал) новый каталог для хранения конфигурации;

  • в новый каталог будут скопированы (если не существовали) файлы из старого каталога (termidesk.conf, termidesk.cookie, CRYPTO_RSA_KEY, /wsproxy/id_rsa, /wsproxy/id_rsa.pub).

Рекомендуется выполнять изменение путей к каталогам через утилиту termidesk-config.

Если изменение было сделано вручную, то потребуется:

  • при изменении места хранения шаблонов выполнить:

sudo /opt/termidesk/sbin/termidesk-config update_logger_config
  • при любых изменениях перезапустить службы Termidesk (в зависимости от установленной роли узла список служб может отличаться).

Таблица 2. Параметры файла /etc/default/termidesk-vdi.local
Параметр Значение по умолчанию Описание

ETC

/etc/opt/termidesk-vdi

Параметр может быть задан на узлах «Универсального диспетчера»,«Менеджера рабочих мест», «Агрегатора».

Определяет путь к каталогу с конфигурационными файлами (termidesk.conf, termidesk.cookie, CRYPTO_RSA_KEY, /wsproxy/id_rsa, /wsproxy/id_rsa.pub).

Каталог должен обладать следующими свойствами:

* права доступа: rwxr-x--- (в восьмеричной записи - 750); * владелец и группа: root:termidesk.

Пример:

ETC='/etc/opt/termidesk-vdi'

TEMPLATES_DIR

/etc/opt/termidesk-vdi/templates

Параметр может быть задан на узлах «Универсального диспетчера», «Менеджера рабочих мест», «Агрегатора».

Определяет путь к каталогу с шаблонами для настройки регистрации событий и журналирования.

Каталог должен обладать следующими свойствами:

* права доступа: rwxr-x--- (в восьмеричной записи - 750); * владелец и группа: root:termidesk.

Пример:

TEMPLATES_DIR='/etc/opt/termidesk-vdi/templates'