Details

Title Разработка клиент-серверного решения для удалённого подключения к графической среде операционных систем на базе ядра Linux: выпускная квалификационная работа бакалавра: направление 09.03.04 «Программная инженерия» ; образовательная программа 09.03.04_03 «Разработка программного обеспечения»
Creators Иванов Николай Александрович
Scientific adviser Маслаков Алексей Павлович
Organization Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Imprint Санкт-Петербург, 2025
Collection Выпускные квалификационные работы ; Общая коллекция
Subjects удалённое подключение ; linux ; графический интерфейс ; клиент-сервер ; rdp ; vnc ; ssh ; tigervnc ; ssh-туннелирование ; shell ; bash ; remote connection ; gui ; client-server ; ssh tunneling
Document type Bachelor graduation qualification work
File type PDF
Language Russian
Level of education Bachelor
Speciality code (FGOS) 09.03.04
Speciality group (FGOS) 090000 - Информатика и вычислительная техника
DOI 10.18720/SPBPU/3/2025/vr/vr25-1814
Rights Доступ по паролю из сети Интернет (чтение, печать, копирование)
Additionally New arrival
Record key ru\spstu\vkr\35819
Record create date 7/30/2025

Allowed Actions

Action 'Read' will be available if you login or access site from another network

Action 'Download' will be available if you login or access site from another network

Group Anonymous
Network Internet

Данная работа посвящена разработке клиент-серверного решения для удалённого графического подключения к операционным системам на базе ядра Linux. В рамках исследования был проведён анализ существующих протоколов удалённого доступа, таких как RDP и VNC, а также реализованных на их основе решений (xrdp и различные VNC-решения). Рассмотрены особенности их настройки и производительности при работе в локальной сети и через Интернет. В результате была разработана система, включающая скрипты установки клиентской и серверной частей, совместимые с операционными системами Arch Linux, Debian, Fedora и Windows 11. Система автоматически определяет окружение, производит настройку подключения, обеспечивает передачу графики, событий ввода, звука, а также взаимодействие между локальными и удалёнными сессиями пользователя. Дополнительно реализованы механизмы повышения безопасности и производительности на базе SSH-туннелирования и сжатия трафика. Предложенное решение позволяет организовать полноценный удалённый доступ к рабочему столу Linux с возможностью гибкой настройки, обеспечивает кроссплатформенность и пригодно как для домашнего, так и корпоративного использования.

This work is devoted to the development of a client-server solution for remote graphical connection to operating systems based on the Linux kernel. The study analyzed existing remote access protocols such as RDP and VNC, as well as solutions based on them (xrdp and various VNC solutions). The features of their configuration and performance when working on a local network and over the Internet are considered. As a result, a system was developed that includes client and server installation scripts compatible with Arch Linux, Debian, Fedora, and Windows 11 operating systems. The system automatically detects the environment, configures connections, transmits graphics, input events, and audio, as well as interaction between local and remote user sessions. Additionally, mechanisms for improving security and performance based on SSH tunneling and traffic compression are implemented. The proposed solution allows you to organize full-fledged remote access to the Linux desktop with the possibility of flexible configuration, provides cross-platform compatibility and is suitable for both home and corporate use.

Network User group Action
ILC SPbPU Local Network All
Read Print Download
Internet Authorized users SPbPU
Read Print Download
Internet Anonymous
  • Введение
  • Глава 1. Постановка задачи
    • 1.1. Цель
    • 1.2. Задачи
    • 1.3. Требования
  • Глава 2. Обзор существующих решений
  • Глава 3. Обоснование выбора технологий и средств разработки
  • Глава 4. Программная реализация
    • 4.1. Структура скриптов
      • 4.1.1. Система импортов
      • 4.1.2. Вызов главного скрипта
    • 4.2. Настройки выполнения скриптов
      • 4.2.1. Режим отладки
      • 4.2.2. Настройка размера отступа информационных сообщений
      • 4.2.3. Настройка автоматической установки пакетов
      • 4.2.4. Настройка режима разработчика
      • 4.2.5. Настройка версий программ для команд на Windows
    • 4.3. Определение типа операционной системы
    • 4.4. Начало установки
      • 4.4.1. Linux
      • 4.4.2. Windows
    • 4.5. Установка серверной части
      • 4.5.1. Конфигурационный файл
      • 4.5.2. Настройка VNC-сервера
      • 4.5.3. Автоматический перезапуск завершённой VNC-сессии
      • 4.5.4. Парсинг конфигурационного файла
      • 4.5.5. Настройка правил Policy Kit
      • 4.5.6. Настройка модулей ядра для работы с USB-устройствами
      • 4.5.7. Настройка входа на физическом экране компьютера
    • 4.6. Установка клиентской части
    • 4.7. Описание клиент-серверного взаимодействия
      • 4.7.1. Настройка параметров SSH
      • 4.7.2. Получение VNC-пароля
      • 4.7.3. Получение порта с VNC-сессией пользователя
      • 4.7.4. Получение свободного порта
      • 4.7.5. Перенаправление аудио
      • 4.7.6. Перенаправление USB-устройств
      • 4.7.7. Графическое подключение по VNC
      • 4.7.8. Вход в ту же сессию
      • 4.7.9. Завершение сессии
    • 4.8. Удаление решения
  • Глава 5. Тестирование решения на выбранных операционных системах
    • 5.1. Подготовка рабочих станций
    • 5.2. Установка ПО
    • 5.3. Установка решения
    • 5.4. Проверка подключения
    • 5.5. Результаты тестирования
  • Заключение
  • Список использованных источников
  • Приложение А. Программный код
    • А.1. Новое содержимое конфигурационного файла OpenBox для подключения по VNC к «localhost»
    • А.2. Определение параметров VNC-сервера при подключении с клиенской машины

Access count: 0 
Last 30 days: 0

Detailed usage statistics