Настройка XRDP на Ubuntu Server

В этой заметке я опишу как настроить XRDP — удаленный доступ к рабочему столу на Ubuntu Server

XRDP предоставляет графический вход на удаленные компьютеры с помощью RDP (Microsoft Remote Desktop Protocol).
XRDP принимает соединения от различных RDP клиентов: FreeRDP, RDesktop, NeutrinoRDP и Microsoft Remote Desktop Client (для Windows, MacOS, прошивки и Android).

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

В репозитории Ubuntu есть несколько окружений рабочего стола. Мы будем устанавливать Xfce. Это быстрый, стабильный и легкий окружение рабочего стола, что делает его идеальным для использования на удаленном сервере.

Обновляем до последней стабильной версии.

sudo apt update && apt -y dist-upgrade 

Устанавливаем Xfce

sudo apt -y install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils 

Устанавливаем XRDP

sudo apt -y install xrdp
# Статус по завершению установки можно посмотреть командой
sudo systemctl status xrdp

Добавляем пользователя в группу SSL-CERT

По умолчанию Xrdp использует /etc/ssl/private/ssl-cert-snakeoil.key файл, который доступен только чтения для тех пользователей которые являются членами группы SSL-CERT

sudo adduser xrdp ssl-cert 

Настройка XRDP

# Открываем файл
sudo nano /etc/xrdp/xrdp.ini

# Добавляем в конец файла строку
exec startxfce4

# Перезагружаем XRDP
sudo systemctl restart xrdp 

Настройка Firewoll

sudo ufw allow from 192.168.100.0/24 to any port 3389