Служба управления конфигурациями "Осмакс"

Описание приложения

Версия 1.6.0

Содержание

    Общие сведения

    Продукт «Служба управления конфигурациями "Осмакс"» — это средство распространения и обновления программного обеспечения, а также массового автоматизированного управления конфигурациями парка устройств в гетерогенной среде, например, АРМ, ВРМ, серверы и другое оборудование.

    Основные преимущества

    Основные конкурентные преимущества продукта:

    • санкционно-устойчивое решение российского производства (при разработке модулей продукта используются только решения с открытым исходным кодом) для управления конфигурациями парка рабочих устройств, в том числе их ОС и ПО;

    • зонтичное решение, которое обеспечивает управление политиками, развертыванием ОС и ПО, удаленный доступ, инвентаризацию программно-аппаратного обеспечения и отчетность по нему в одном пользовательском интерфейсе;

    • поддержка различных версий Linux, в том числе импортозамещенных, например, Astra Linux.

    Архитектура

    На Рис. 1 представлена верхнеуровневая архитектура продукта.

    lcm remote access arch
    Рис. 1. Верхнеуровневая архитектура

    Продукт включает следующие модули:

    Модуль Описание

    Магазин приложений

    Позволяет сотрудникам организации выполнять автоматизированную установку, удаление и обновление ПО

    Кабинет администратора

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

    Бэкенд

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

    • «Инвентаризация» — отвечает за хранение данных об устройствах, пользователях и другой ИТ-инфраструктуры;

    • «Каталог конфигураций» — обеспечивает взаимодействие с хранилищем спецификаций конфигураций и ПО;

    • «Менеджер конфигураций» — отвечает за хранение данных о конфигурациях, создании коллекций устройств и назначении конфигураций коллекциям;

    • «Управление ПО» — позволяет пользователям управлять ПО на своих рабочих устройствах;

    • «Интеграция с модулем координации» — обеспечивает передачу данных с серверов управления в бэкенд продукта с помощью подписки на топик Apache Kafka, а также распределение запросов на установку ПО между серверами управления

    Модуль координации

    Отвечает за координацию и непосредственное применение конфигураций на устройствах. Также осуществляет сбор данных с машин для инвентаризации. Одним из компонентов модуля является платформа с открытым исходным кодом SaltStack

    Агент

    Клиентское приложение для управления устройством, на котором оно установлено

    Удаленный доступ

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

    Шлюз удаленного доступа

    Отвечает за аутентификацию и авторизацию в подсистеме, управление сессиями удаленного доступа, а также преобразование протоколов удаленного доступа

    Сервер удаленного доступа

    Предоставляет удаленный доступ к агенту по протоколам: SSH, RDP и VNC

    Продукт интегрируется со следующими внешними сервисами и системами:

    • Apache Kafka —  распределенная система обмена сообщениями между серверными приложениями в режиме реального времени;

    • PostgreSQL — база данных для долговременного хранения данных пользователей и АРМ, а также настроек аутентификации;

    • веб-сервер — ПО, которое используется для обработки запросов от веб-браузеров и ответа на них, а также для предоставления доступа к веб-ресурсам, таким как веб-страницы, изображения, файлы и другие данные (например, Nginx-сервер);

    • cлужба каталогов — сервис, предоставляющий централизованные средства управления ресурсами автоматизированной системы, включающий LDAP-сервер и сервис аутентификации Kerberos (в качестве службы каталогов может выступать Active Directory Domain Services, Samba, FreeIPA и др.);

    • cистема хранения контента — S3-совместимое файловое хранилище (например, Ceph, Minio и др.).

    Функциональные возможности

    Основные функции продукта:

    • предоставляет магазин приложений для сотрудников компании, через который они могут выполнять поиск необходимого ПО, знакомиться с его описанием и инструкциями, создавать заявки на установку или обновление ПО, а также просматривать их статус;

    • предоставляет пользовательский интерфейс администратора, с помощью которого он может просматривать и управлять устройствами и ПО, установленным на них, управлять обновлениями, отслеживать их состояния и возможные проблемы (например, загруженность ЦПУ или нехватка памяти на диске);

    • предоставляет возможность удаленного подключения к компьютеру пользователя с другого компьютера в графическом режиме (трансляция изображения рабочего стола, передача нажатий клавиш и манипуляций мышью);

    • позволяет выполнять автоматическую установку или обновление ПО как на все устройства, так и на отдельные или группы (коллекции) устройств;

    • осуществляет инвентаризацию парка устройств и предоставляет отчётность об аппаратной и программной конфигурациях, установленных на них;

    • отслеживает текущий статус системы и ее компонентов.

    Используемый стек технологий

    При разработке и эксплуатации продукта используются компоненты с открытым исходным кодом:

    Компонент Описание Лицензия Ссылка на документацию

    Apache Guacamole

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

    Apache License 2.0

    Официальный сайт

    Apache Kafka

    Распределенная платформа для обработки потоков данных

    Apache License 2.0

    Официальный сайт

    Kotlin

    Язык программирования

    Apache License 2.0

    Официальный сайт

    PostgreSQL

    Объектно-реляционная система управления базами данных.

    При использовании модуля «Удаленный доступ» версия должна быть не ниже PostgreSQL 15

    PostgreSQL License

    Официальный сайт

    Python

    Язык программирования

    Python Software Foundation License

    Официальный сайт

    Quarkus

    Cреда Java, которая обеспечивает высокую производительность, низкое потребление памяти и быструю загрузку модулей продукта

    Apache License 2.0

    Официальный сайт

    React JS

    JavaScript-библиотека с открытым исходным кодом для разработки пользовательских интерфейсов

    MIT

    Официальный сайт

    SaltStack

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

    Используемая версия должна быть не ниже 3006.3 и не выше 3007.0

    Apache License 2.0

    Официальный сайт

    TigerVNC

    Клиент-серверное решение с открытым исходным кодом для удаленного доступа к рабочему столу компьютера через протокол VNC (Virtual Network Computing)

    GNU General Public License (GPL) 2.0

    Официальный сайт

    Поддерживаемые операционные системы

    Работа продукта поддерживается на следующих операционных системах:

    • Astra Linux Special Edition версии 1.7.3, 1.7.4;

    • Astra Linux Common Edition версии 2.12.46;

    • Ubuntu версий 20.04, 22.04;

    • Debian версии 10;

    • РЕД ОС версии 7.3.

    Для работы агентов (minions) может использоваться любая операционная система, которая поддерживается SaltStack. Однако текущая версия продукта протестирована на взаимодействие только с операционными системами, перечисленными выше. Если на агенте (minion) установлена другая операционная система, например, Windows или macOS, часть данных об устройстве, которые собираются в рамках инвентаризации, может быть утеряна.

    Аутентификация

    Аутентификация пользователей

    Для аутентификации пользователей используется доменная аутентификация.

    Межсервисная аутентификация

    В зависимости от характера взаимодействия в продукте используется:

    • аутентификация веб-приложений Kerberos client-side-аутентификация;

    • аутентификация при обращении к хранилищу PostgresSQL выполняется на основе username/password;

    • SSL-сертификаты.

    Аутентификация во внешних сервисах

    Аутентификация сервера управления выполняется при помощи LDAP, с последующим получением токена, также дополнительно поддерживается PAM-аутентификация.

    Отказоустойчивость

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

    Резервное копирование

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

    • PostgreSQL;

    • Redis;

    • S3;

    • Apache Kafka;

    • Apache Guacamole.

    Глоссарий

    Basic Input/Output System (BIOS)

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

    Unified Extensible Firmware Interface (UEFI)

    Интерфейс между операционной системой и микропрограммами, управляющими низкоуровневыми функциями оборудования, его основное предназначение: корректно инициализировать оборудование при включении системы и передать управление загрузчику или непосредственно ядру операционной системы. EFI — технология, предназначенная для замены BIOS которая обеспечивает более быструю загрузку компьютера, улучшенную безопасность и более простую настройку системы. Она также позволяет использовать жесткие диски большого объема и поддерживает новые технологии, такие как Secure Boot, которая обеспечивает защиту от вредоносных программ.

    Автоматизированное рабочее место (АРМ)

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

    Виртуальное Рабочее Место (ВРМ)

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

    Операционная система (ОС)

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

    Программное обеспечение (ПО)

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

    Сокращения