Xrdp


Заметка по настройке и оптимизации Xrdp

Недавно решил настроить себе доступ к моему рабочему компу с Kubuntu 20.04 через rdp протокол. Выбор пал на xrdp, т.к. вроде с кедами он ведет себя вполне прилично. Однако, как обычно бывает столкнулся с несколькими подводными камнями, а точнее булыжниками. Тут опишу установку, пару правок конфигов для беспроблемного запуска и оптимизацию в конце. Итак начнем.

sudo apt install -y xrdp ;;инсталлируем

sudo sed -e 's/^new_cursors=true/new_cursors=false/g' -i /etc/xrdp/xrdp.ini ;; исправляем курсор

sudo systemctl enable xrdp
sudo systemctl restart xrdp ;; активируем и стартуем

Открываем /etc/ssh/sshd_config, в нем находим и раскоменчиваем следующие пункты:

AllowTcpForwarding yes
GatewayPorts no
X11Forwarding yes

Далее, настраиваем правила фаерволла: sudo ufw allow proto tcp from 192.168.0.0/24 to any port 3389 ;; где 192.168.0.0/24 - наша подсеть

echo "/usr/bin/startplasma-x11" > ~/.xsession ;; меняем сессию на плазму

export D=/usr/share/plasma:/usr/local/share:/usr/share:/var/lib/snapd/desktop
export C=/etc/xdg/xdg-plasma:/etc/xdg
export C=${C}:/usr/share/kubuntu-default-settings/kf5-settings


cat <<EOF > ~/.xsessionrc
export XDG_SESSION_DESKTOP=KDE
export XDG_DATA_DIRS=${D}
export XDG_CONFIG_DIRS=${C}
EOF     ;; экспортируем переменные в сессию

sudo update-alternatives --config x-session-manager ;; если нужно меняем стандартный менеджер сессии

Если что-то глючит или работает не так как надо, логи находятся тут:

/var/log/xrdp.log

/var/log/xrdp-sesman.log

~/.xsession-errors
/root/.xsession-errors

Далее оптимизируем все это дело, для минимальной задержки.

Открываем /etc/xrdp/xrdp.ini

tcp_send_buffer_bytes=4194304 ;;меняем значение

# systemctl restart xrdp ;; рестартуем

Создаем /etc/sysctl.d/xrdp.conf , пишем там: net.core.wmem_max = 8388608

Теперь , т.к. анимация десктопа идет через иксы, выставляем следующие опции композитора для наибольшей производительности:

scale method: crisp
rendering backend: OpenGL 2.0
Tearing prevention: Only when cheap
Keep window thumbnail: never
Allow options to block composting: yes

Если все сделали правильно, теперь xrdp должен без особых проблем и плавненько работать.