1. Графический клиент утилит Calculate

Введение

Клиент утилит Calculate служит для сетевого доступа по протоколу https к функциям сервера утилит Calculate 3. Установить клиент можно при помощи пакета sys-apps/calculate-console-gui.

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

cl-console-gui

Главное окно cl-console-gui

Рис. 1 Внешний вид окна cl-console-gui

Создание сертификата

Для работы с сервером утилит необходим подписанный им сертификат. Для генерации запроса на подписание сертификата (далее запрос) и получения сертификата от сервера утилит используйте пункт "Сертификаты" в меню.

Создание запроса и получение сертификата

Рис. 2 Запрос на подпись сертификата

В поле Хост введите адрес хоста сервера утилит, в поле Порт номер порта, который прослушивает сервер (по умолчанию 8888). Используйте кнопку "Отправить запрос" для создания и отправления запроса на сервер утилит и кнопку "Получить сертификат" для получения подписанного сертификата с сервера утилит.

Для создания запроса и секретного ключа необходимо ввести некоторые данные в окне "Создание запроса на подпись сертификата".

Создание запроса на подпись сертификата

Рис. 3 Создания запроса на подпись сертификата

Большая часть данных, кроме названия организации, города и пароля, будет заполнена автоматически. Не меняйте автоматически подставленные значения, если не уверены, что значения верны. Используйте поле "Пароль", если необходимо дополнительное шифрование закрытого ключа. Введённый пароль будет запрашиваться для установки соединения с сервером утилит.

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

Номер запроса

Рис. 4 Информация о номере запроса

Подписать запрос можно на сервере утилит через клиента или с помощью команды:

cl-core --sign-client n
Где n - номер запроса.

После подписания сертификата на сервере, его необходимо забрать нажав на кнопке "Получить сертификат" в окне сертификаты. Если запрос ещё не подписан или отвергнут, то появится соответствующее сообщение.

Режимы запуска

Графический клиент может быть запущен в одном из двух режимов:
  • запуск в обычном режиме командой
    cl-console-gui
    
  • запуск отдельного метода с помощью ключа --method
    cl-console-gui --method methodname
    

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

cl-console-gui --method install

Соединение и работа с сервером утилит

Для соединения с сервером утилит используйте пункт "Соединиться" в меню.

Соединение

Рис. 5 Установка соединения с сервером утилит

В поле Хост введите адрес хоста сервера утилит, в поле Порт номер порта, который прослушивает сервер утилит, в поле Пароль введите пароль, если он используется для дополнительного шифрования закрытого ключа. Затем нажмите на кнопку Соединиться.

В случае успешного соединения, в главном окне появятся доступные на данном сервере утилит методы (см. раздел "Выполнение методов на сервере утилит").

Панель меню

После установления соединения с сервером утилит верхнее меню приобретает вид, показанный на предыдущем изображении и состоит из кнопок: "Назад" (кроме главного меню), "Процессы", "Сессия", "Отсоединиться", "Настройки" и "Помощь".

Возврат в Главное меню

Для возврата в главное меню служит кнопка "Назад" в главном меню. При отображении главного меню кнопка не отображается.

Запущенные процессы

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

Просмотр запущенных процессов

Рис. 6 Просмотр информации о запущенных процессах

Информация о сессии

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

Информация о сессии

Рис. 7 Информация о текущей сессии

Кнопка "Отсоединиться" в панели меню отобразит диалоговое окно закрытия сессии и тремя действиями:
  • "Да" - отсоединиться и закрыть сессию.
  • "Нет" - Отсоединиться, но не закрывать сессию.
  • "Отмена" - не отсоединяться.

Закрытие сессии

Рис. 8 Закрытие сессии

Настройка программы

Кнопка "Настройки" в панели меню служит для вызова окна настроек параметров Calculate Console и состоит из вкладок "Настройки интерфейса" и "Прочие настройки".

Вкладка "Настройки интерфейса" включает поля:
  • "Расширенный просмотр" - устанавливает режим просмотра результатов работы процесса: расширенный или сокращённый.
  • "Высота изображений" - устанавливает фиксированную высоту изображений (0 - убрать изображения).
  • "Количество строк в таблице" - устанавливает максимальное количество строк в таблицах, находящихся в результатах работы процесса и отображающих списки (например, список запросов на подпись сертификата).

Настройки (1 вкладка)

Рис. 9 Настройка интерфейса

Вкладка "Прочие настройки" включает поля:
  • "Выбор языка" - устанавливает язык интерфейса.
  • "Директория с сертификатами" - устанавливает директорию, где находятся сертификаты клиента (при хранении их не в стандартной директории или на внешнем носителе).

Настройки (2 вкладка)

Рис. 10 Прочие настройки программы

Помощь

Кнопка "Помощь" в панели меню отобразит подменю из пунктов:
  • "О программе" - выведет окно с информацией о Calculate Console
  • "Справка" - откроет веб-страницу с этим руководством.
  • "Сообщить об ошибке" - отобразит окно для отправки сообщения об ошибке разработчикам:

Сообщение об ошибке

Рис. 11 Окно отправки сообщения об ошибке

Выполнение методов на сервере утилит

После соединения с сервером утилит в Главном окне появятся доступные для данного сертификата методы:

Доступные действия на сервере утилит

Рис. 12 Главное окно с доступными методами

Все методы разделены по категориям. При открытии метода откроется окно с необходимыми данными. Методы могут состоять из одного шага:

Действие с одним шагом

Рис. 13 Метод настройки видеокарты

Или из нескольких шагов:

Действие с несколькими шагами

Рис. 14 Настройка видеокарты, как один из шагов метода установки системы

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

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

По завершении работы процесса можно вернуться назад с помощью кнопки "Назад" в верхнем меню или закрыть процесс, нажав на кнопку "Закрыть". В этом случае данные о его работе будут удалены на сервере утилит и не будут отображаться в окне "Просмотр информации о запущенных процессах".

Безопасность и разграничение прав

Как уже упоминалось, для взаимодействия графического клиента с сервером утилит Calculate используется протокол "https", который позволяет зашифровывать передаваемые данные, используя сертификаты и ключи. Процесс получения сертификата описан ранее в разделе "Создание сертификата". В данном разделе речь пойдёт о подписании запросов и разграничении прав доступа по сертификатам.

Запросы

Запрос на подпись сертификата создаётся на стороне клиента после создания открытого и секретного ключей, и передаётся серверу утилит для подписания сертификата.

В графическом клиенте для работы с запросами на сервере утилит используется метод "Просмотр запросов" в категории утилиты.

Просмотр запросов

Рис. 15 Просмотр запросов

Для выбора запроса необходимо нажать на строку таблицы, после чего откроется окно с информацией о запросе, где можно изменить номер запроса (при этом данные о запросе не обновляются) и группу будущего сертификата.
Выбранный запрос можно подписать "Подтвердить" или отказать в подписании "Удалить". Подписанный запрос, сертификат которого не забран клиентом, будет отображаться в таблице "Просмотр запросов" с названием группы в столбце "Группа".

Подробности запроса

Рис. 16 Просмотр запросов

Сертификаты

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

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

Права групп

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

Права для групп сертификатов по умолчанию хранятся в файле /var/calculate/server/conf/group_right.conf в следующем виде: group right1[, right2[,right3...]], например

manager install, get-sessions, request
user get-sessions,request,view_cert

Для изменения прав конкретного сертификата используется файл /var/calculate/server/conf/right.conf, куда необходимо вписать права и номера сертификатов.

Пример:

install 1 2 -3

Для сертификатов с номерами 1 и 2 добавить право на метод "install" и удалить его для сертификата с номером 3.
Права для конкретного сертификата имеют приоритет перед правами для группы сертификата.

Для управления правами групп на сервере утилит в клиенте используется метод "Просмотр групп" в категории утилиты.

Просмотр групп

Рис. 17 Просмотр групп

Для добавления новой группы нажмите на кнопку "+" (плюс). В открытом действии "Добавление группы" введите имя создаваемой группы в поле "Имя группы" и выберите права для группы в поле "Права группы".

Для выбора группы необходимо нажать на строку таблицы, после чего откроется "Подробности группы", где можно изменить права либо удалить группу.

Спасибо!