Linux Terminal Service Manager


О системе

Linux Terminal Service Manager (LTSM) это набор программ для организации множественного доступа к виртуальным рабочим столам (на сервере Linux) на основе терминальных сессий (с использованием протокола RFB/VNC или RDP)


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


  • Организация удаленного доступа на виртуальные рабочие сеансы сервера через протокол RFB или RDP с любого рабочего места на основе операционных систем Windows, MacOS, Linux, или FreeBSD и с любой точки сети Internet
  • Процедура проверки подлинности пользователя путем сравнения введенного им кодовой фразы с паролем на сервере
  • Сохранение рабочего сеанса пользователя при его отключении и восстановление рабочего сеанса пользователя при его повторном подключении
  • Шифрование трафика от конечного пользователя до сервера
  • Для клиентов на Linux работает редирект звука, печати, сканирования документов, буфера обмена, копирование файлов, токенов pcsc11, аутенфикация kerberos.

Решаемые задачи с помощью удаленного терминального доступа


  • Улучшение работы клиент-серверных приложений за счет их запуска на сервере. Для этого есть специальный термин — «близость к данным», чем лучше связь между клиентской частью программы и серверной, тем быстрее выполняются задачи
  • Перевод пользователей с ПК на тонкие клиенты. Вместо компьютера с данными пользователю устанавливается миниатюрное устройство, которое позволяет подключаться к терминальной сессии. Тонкий клиент не требует обслуживания, не шумит, не греется, потребляет мало электричества. Позволяет свести к минимуму техническую поддержку на рабочих местах
  • Экономия трафика в сетях, и как следствие, уменьшение ширины и стоимости канала. В случае с терминальным доступом трафик, который раньше проходил между клиентскими станциями и серверами заменяется на трафик передачи изображения удаленного экрана
  • Централизованное управление программным обеспечением, позволяет привести все категории рабочих мест к унифицированному виду. Один администратор может управлять сотней рабочих мест. Ферма терминальных серверов позволяет оперативно доставлять необходимые корпоративные приложения, централизованно устанавливать обновления, управление данными сотрудников

Схема взаимодействия компонентов



Основным механизмом обмена данными между процессами является шина dbus. В данной системе эта реализация осуществлена через API sd-bus поставляемым с systemd (подсистемой инициализации и управления службами в Linux).


Клиенты подключаются к системе через протокол RFB или RDP на служебный сервис это xinetd/(systemd sockets), а LTSM_connector является обработчиком протокола.


При подключении клиента и согласовании протокола взаимодействия (handshake) коннектор через шину dbus отправляет запрос на запуск login сессии. При ограничении на максимальное количество сессий, коннектор может отказать в обслуживании клиентам.


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


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


Шина sd-bus входит в базовую поставку всех современных систем на базе Linux как компонента от systemd, протокол RFB реализован полностью независимо от внешних компонент, протокол RDP (опция при сборке), и зависит от наличия системной библиотеки freerdp


Демонстрация работы

Для демонстрации работы системы работает виртуальный сервер по адресу: 62.109.12.152, выделены пользовательские логины: demo1, demo2, demo3, demo4, пароль: demo

--пример подключения через RFB/VNC протокол
vncviewer 62.109.12.152

--пример подключения через RDP протокол
xfreerdp /v:62.109.12.152

Для быстрого развертывания демонстрационного сервера на вашем оборудовании можно воспользоваться системой docker

--скачивание готового ltsm образа на базе debian 11
docker pull docker.io/ltsm/devel

--запуск
docker run -i -t docker.io/ltsm/devel


Документация



Скачать

Загрузить исходный код с данного сервера. Так же исходный код проекта выложен в публичную базу исходного кода на GitHub


Загрузить подготовленные пакеты для систем:


Лицензии

Исключительные права на исходный код принадлежат программисту Афлетдинову Андрею по праву собственной разработки

Вы можете использовать исходный код под свободными лицензиями GNU AFFERO GPL3 и Открытая Государственная Лицензия


Программное обеспечение зарегистрировано в реестре российского ПО, Номер заявления: 246869, Дата регистрации: 01.11.2021

Стоимость

При соблюдении лицензионного соглашения на использование исходного кода:


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


Доработка программного обеспечения под Ваши требования - по согласованию, в зависимости от объема дополнительных работ.


Обратная связь

Со всеми вопросами Вы можете связаться по электронной почте с пометкой по теме LTSM