Данная статья применима к:


Введение

Начиная с обновлений Astra Linux Special Edition 1.8 и Astra Linux Special Edition 1.7.6 в состав основного репозитория включен пакет fly-dm-rdp. Этот пакет расширяет функции менеджера графического входа fly-dm по управлению графическими пользовательскими сессиями (далее - сессия), предоставляя следующие возможности:

  • Запуск сессий на локальной машине с подключением к этим сессиям по протоколу RDP.  Подключение к таким RDP-сессиям возможно как с локальной машины, так и с удаленных машин.
  • Подключение к RDP-сессии на локальной машине поддерживается менеджером графического входа fly-dm, имитируя работу с обычной локально сессией.
  • Обеспечивается сохранение непрерывной RDP-сессии при переключениях между локальным и удаленным доступом.
  • Обеспечивается блокировка неактуального подключения к RDP-сессии при переключениях между локальным и удаленным доступом.

RDP-сессия — это графический сервер (программа), работающий в теневом режиме, и отображающий вывод графических программ на свой интерфейс. Любое, в том числе удаленное, подключение к RDP-сессии позволяет получить и отобразить сформированное графическим сервером изображение на физических мониторах (в том числе — на мониторах удаленного клиента). Разрыв подключения к RDP-сессии или повторное подключение не влияют на работу графического сервера, просто в отсутствии подключения сформированное изображение нигде не отображается.


Для защиты передаваемых данных при использовании протокола RDP в публичных сетях рекомендуется использовать защищенные каналы связи: защищенные каналы перенаправления SSH, каналы VPN и пр.

Установка пакетов

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

sudo apt install fly-dm-rdp

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

Локальный вход в систему

После установки пакета и перезагрузки для локального графического входа в систему:

  1. На экране графического входа выбрать тип сессии "Локальная RDP":
  2. Выполнить вход в систему в обычном порядке.
  3. Для возврата в локальную сессию после удаленного подключения выполнить вход в обычном порядке. При этом если было активно удаленное  подключение, то оно будет разорвано.

Удаленный вход в систему

Для удаленного входа в систему можно использовать любые инструменты, поддерживающие протокол RDP, например в Astra Linux это графические инструменты remmina (пакет remmina),инструмент командной строки xfreerdp (пакет frerdp-x11) и графическую оболочку для инструмента xfreerdp — krdc (пакет krdc) Подробнее см. Взаимодействие удаленных графических интерфейсов Astra Linux и Windows). При этом удаленный вход в сессию выполняется в обычном порядке в соответствии с используемым инструментом. Если при удаленном входе активно локальное или другое удаленное подключение, то оно будет разорвано.

Как отличить обычную локальную сессию от локальной сессии RDP

Для того, чтобы понять в какой локальной сессии — обычной или RDP — сейчас находится пользователь можно проверить наличие переменной окружения XRDP_SESSION. Эта переменная определена только в сессиях RDP и не определена в обычных сессиях. 

Также можно проверить значение переменной окружения DISPLAY. В обычной локальной сессии эта переменная имеет значение :0:

echo $DISPLAY

:0

В сессии RDP переменная окружения DISPLAY имеет значение вида :10.0:

echo $DISPLAY

:10.0