Неавтоматизированная установка Termidesk

Для установки Termidesk с использованием псевдографического интерфейса нужно:

sudo apt -y install termidesk-vdi
BASH

где:

-y - ключ для пропуска подтверждения установки.

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

Начиная с версии 4.3 в зависимость пакета установки termidesk-vdi добавлены:

  • служба ведения журналов syslog-ng. Работа с другими службами ведения журналов не гарантируется;
  • пакет libpython3.7 для ОС Astra Linux Special Edition 1.7, предоставляющий возможность установить Termidesk в ОС с минимальной конфигурацией (без графического интерфейса ОС).

Начиная с версии 5.1 в зависимость пакета установки termidesk-vdi для ОС Astra Linux Special Edition 1.8 добавлен пакет libpython3.11.

Перед обновлением ОС или службы syslog-ng рекомендуется создать резервную копию файла syslog-ng.conf. В случае обновления ОС или службы syslog-ng без предварительного создания резервной копии файла, может потребоваться переустановка Termidesk для восстановления его корректной работы.

Начиная с Termidesk версии 5.0 компонент «Шлюз» устанавливается из пакета termidesk-gateway. Для установки или обновления «Шлюза» следует обратиться к подразделам Установка Шлюза и Обновление Шлюза документа СЛЕТ.10001-01 90 05 «Руководство администратора. Настройка компонента «Шлюз».

В процессе установки нужно:

Для переключения между экранными кнопками [Ок] и [Отмена] в псевдографическом интерфейсе используется клавиша <Tab>.

  • ознакомиться с лицензионным соглашением и нажать экранную кнопку [Далее];

Лицензионное соглашение
  • нажать экранную кнопку [Да] для принятия условий лицензионного соглашения и продолжения установки или экранную кнопку [Нет] в случае отказа, при этом установка прервется;

Принятие условий лицензионного соглашения
  • после принятия условий лицензионного соглашения выбрать способ хранения паролей подключения к СУБД и RabbitMQ:
    • «config» (по умолчанию) - пароли будут храниться в преобразованном виде в файле /etc/opt/termidesk-vdi/termidesk.conf;
    • «openbao» - для хранения паролей будет использоваться хранилище паролей OpenBao (хранилище должно быть заранее создано и настроено);

Выбор способа хранения паролей
  • при выборе хранения паролей через OpenBao нужно задать параметры подключения к хранилищу и параметры, настроенные непосредственно на хранилище:
    • «URL хранилища» - IP-адрес или FQDN узла и порт с установленным хранилищем OpenBao. Формат: http://<IP-адрес>:8200 или http://<FQDN>:8200. Подключение может выполняться по протоколу HTTPS, если OpenBao настроен соответствующим образом. В этом случае на следующем шаге будет открыт диалог настройки путей к сертификатам;

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

    • «Версия API OpenBao» - установленная версия API на OpenBao (1 или 2);
    • «Токен доступа к хранилищу» - токен (Initial Root Token), сформированный при инициализации хранилища;
    • «Путь к паролю СУБД» - путь, настроенный на OpenBao для хранения пароля СУБД;
    • «Роль доступа к паролю СУБД» - роль, настроенная на OpenBao, имеющая доступ к паролю СУБД;
    • «Путь к паролям RabbitMQ» - путь, настроенный на OpenBao для хранения пароля RabbitMQ;
    • «Роль доступа к паролям RabbitMQ» - роль, настроенная на OpenBao, имеющая доступ к паролю RabbitMQ;
    • «Путь к паролям Termidesk» - путь, настроенный на OpenBao для хранения пароля Termidesk;
    • «Роль доступа к паролям Termidesk» - роль, настроенная на OpenBao, имеющая доступ к паролю Termidesk;
    • «Время кеширования паролей, сек» - время (в секундах) хранения пароля, полученного от OpenBao, во внутренней памяти;

Настройка подключения к OpenBao
  • после настройки способа хранения паролей нужно выбрать протокол, который будет использоваться при подключении к БД. При выборе значения «Disable» защищенное соединение при подключении к БД использоваться не будет;

Выбор протокола для подключения к БД
  • при выборе защищенного подключения к БД или к OpenBao станет доступен раздел «Настройка сертификатов», в котором можно определить пути к сертификатам и ключам:  
    • «Сертификат Health Check»: путь к сертификату SSL/TLS для защищенного подключения к API проверки состояния;
    • «Секр. ключ Health Check»: путь к ключу SSL/TLS для защищенного подключения к API проверки состояния;
    • «Сертификат Postgres mTLS»: путь к сертификату SSL/TLS для защищенного подключения к СУБД;
    • «Секр. ключ Postgres mTLS»: путь к ключу SSL/TLS для защищенного подключения к СУБД;
    • «Серт. промеж. ЦС Postgres mTLS»: путь к промежуточному сертификату ЦС SSL/TLS для защищенного подключения к СУБД;
    • «Сертификат OpenBao mTLS»: путь к сертификату SSL/TLS для защищенного подключения к OpenBao. Задается, в случае, если выбран способ хранения паролей через OpenBao и нужно настроить защищенное подключение к нему;
    • «Секр. ключ OpenBao mTLS»: путь к ключу SSL/TLS для защищенного подключения к OpenBao. Задается, в случае, если выбран способ хранения паролей через OpenBao и нужно настроить защищенное подключение к нему;
    • «Серт. промеж. ЦС OpenBao mTLS»: путь к промежуточному сертификату ЦС SSL/TLS для защищенного подключения к OpenBao. Задается, в случае, если выбран способ хранения паролей через OpenBao и нужно настроить защищенное подключение к нему;
    • «Осн. серт. для расшифровки JWT-токена»: путь к сертификату для получения значения JWT-токена портала «Агрегатор». Задается в случае, если устанавливается «Портал администратора» и (или) «Портал пользователя», который затем будет подключен как узел в портале «Агрегатор»;
    • «Рез. серт. для расшифровки JWT-токена»: путь к резервному сертификату для получения значения JWT-токена портала «Агрегатор». Задается в случае, если устанавливается «Портал администратора» и (или) «Портал пользователя», который затем будет подключен как узел в портале «Агрегатор»;
    • «Секр. ключ для подписи JWT-токена»: путь к закрытому ключу для подписи JWT-токена портала «Агрегатор». Задается только в случае, если устанавливаются роли «Агрегатор администратора» и (или) «Агрегатор пользователя»;
  • для продолжения установки нажать экранную кнопку [Далее];

Конфигурация сертификатов и ключей
  • заполнить параметры подключения к СУБД:
    • «Адрес СУБД»: IP-адрес или FQDN узла с установленной СУБД (в случае локальной установки 127.0.0.1);
    • «Порт СУБД»: номер порта, используемого для соединения с сервером СУБД (стандартный порт 5432);
    • «Имя базы данных»: наименование БД (termidesk, параметр задавался при создании БД);
    • «Имя пользователя»: имя пользователя БД для подключения к ней (termidesk, параметр задавался при создании БД);
    • «Пароль»: пароль для подключения к БД (ksedimret, параметр задавался при создании БД);
  • нажать экранную кнопку [Тест] для проверки подключения, ознакомиться с результатом тестирования подключения и для продолжения установки нажать экранную кнопку [Далее];

Ввод параметров подключения к СУБД
  • выбрать протокол, который будет использоваться при подключении к RabbitMQ. При выборе значения «Disable» защищенное соединение при подключении к RabbitMQ использоваться не будет;

Выбор протокола для подключения к RabbitMQ
  • настроить подключение к RabbitMQ. Для этого выбрать в следующем окне пункт «Empty» и нажать экранную кнопку [Выбрать]. Необходимо задать хотя бы одно подключение к RabbitMQ, если не будет задано ни одно подключение, то при нажатии на кнопку [Далее] произойдет возврат в диалог настройки подключений;

Экранная форма начала настройки подключения RabbitMQ
  • выполнить настройку подключения к RabbitMQ, заполнив параметры:
    • «Адрес сервера»: IP-адрес или FQDN узла с установленным RabbitMQ (в случае локальной установки 127.0.0.1);
    • «Порт сервера»: номер порта, используемого для соединения с RabbitMQ (по умолчанию 5672);
    • «Виртуальный хост»: виртуальный узел, к которому будет производиться подключение (termidesk);
    • «Имя пользователя»: имя пользователя для подключения (termidesk);
    • «Пароль»: пароль для подключения (ksedimret);
  • нажать экранную кнопку [ОК] для продолжения установки;

Настройка подключения к RabbitMQ
  • в следующем окне отобразится информация о настроенном подключении. При необходимости можно добавить до трех экземпляров RabbitMQ для подключения, выбрав пустые строки «Empty» и повторив ввод параметров подключения. Для продолжения установки следует нажать экранную кнопку [Далее];

Отображение параметров подключения к RabbitMQ
  • затем выбрать устанавливаемую роль:

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

Установка «Агрегатора» не предусмотрена в рамках лицензии Termidesk Terminal.

При комплексной установке Termidesk необходимо выбрать роли: «Портал администратора», «Портал пользователя» (опционально, если нужно активировать все доступные функции), «Менеджер рабочих мест (очереди)», «Менеджер рабочих мест».

Если не выбрать ни одного компонента, то ни одна служба Termidesk запущена не будет. 

    •  «Портал администратора»: установится компонент «Универсальный диспетчер» с «Порталом администратора». «Портал администратора» предоставляет интерфейс для управления Termidesk и интерфейс swagger для доступа к ограниченному списку модулей документации по командам REST API («auth», «discover», «health», «agent», «webui»). После установки будет запущена служба termidesk-vdi;
    • «Портал пользователя»: установится компонент «Универсальный диспетчер» с «Порталом пользователя». «Портал пользователя» предоставляет пользовательский интерфейс Termidesk и интерфейс swagger для доступа к ограниченному списку модулей документации по командам REST API («auth», «discover», «health», «client», «wsproxy», «agent»). Интерфейс управления Termidesk будет недоступен. После установки будет запущена служба termidesk-vdi. При выборе и роли «Портал администратора», и роли «Портал пользователя» будут доступны функции обоих вариантов, при этом активируется доступ ко всем модулям документации по командам REST API, предоставляемым интерфейсом swagger;
    • «Агрегатор администратора»: установится компонент «Универсальный диспетчер» с порталом «Агрегатор администратора». Портал «Агрегатор администратора» предоставляет интерфейс для управления объединенными ресурсами (фермами) Termidesk и интерфейс swagger для доступа к ограниченному списку модулей документации по командам REST API. Подробная информация по настройке приведена в документе СЛЕТ.10001-01 90 08 «Руководство администратора. Установка и настройка портала «Агрегатор». После установки будет запущена служба termidesk-vdi;
    • «Агрегатор пользователя»: установится компонент «Универсальный диспетчер» с порталом «Агрегатор пользователя». Портал «Агрегатор пользователя» предоставляет пользовательский интерфейс для подключения к фермам Termidesk и интерфейс swagger для доступа к ограниченному списку модулей документации по командам REST API. После установки будет запущена служба termidesk-vdi. При выборе и роли «Агрегатор администратора», и роли «Агрегатор пользователя» будут доступны функции обоих вариантов, при этом активируется доступ ко всем модулям документации по командам REST API, предоставляемым интерфейсом swagger;
    • «Менеджер рабочих мест (очереди)»: установится компонент «Менеджер рабочих мест», после установки будут запущены службы termidesk-celery-beat, termidesk-celery-worker;
    • «Менеджер рабочих мест»: установится компонент «Менеджер рабочих мест», после установки будет запущена служба termidesk-taskman.

После установки Termidesk необходимо скорректировать файл конфигурации веб-сервера /etc/apache2/apache2.conf. Для этого нужно найти и раскомментировать строку с параметром AstraMode, далее присвоить данному параметру значение off, точно соблюдая отступы и пробелы в файле:

# Astra security mode
#
AstraMode off
BASH

Затем перезапустить веб-сервер:

sudo systemctl restart apache2
BASH

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

После успешного завершения установки на узел может быть установлен компонент «Шлюз» (termidesk-gateway). В распределенном варианте этот компонент устанавливается на отдельный узел.