Меню

Ошибка при подключении xrdp

В статье рассказано о том, как настроить подключение к Linux через протокол RDP (Remote Desktop Protocol).

RDP — это наиболее распространённый протокол для удаленной работы (или администрирования ПК), при котором экран компьютера отображается на удалённом ПК, управление с мыши и клавиатуры. RDP может использоваться между ПК с различными ОС — как Windows, так и Linux.

Следующий гайд был написан по итогам успешной установки и запуска RDP сервера под Linux Runtu (Description: Ubuntu 20.04.3 LTS) и Linux Mint «Uma» Description: Linux Mint 20.2).

Установка и настройка RDP в Linux

  1. Если до этого предпринимались неудачные попытки настройки xrdp, прежде всего нужно удалить пакеты xrdp и xorgrdp и их настройки, чтобы выполнить установку с чистого листа.

    sudo apt-get purge xrdp xorgxrdp
  2. Вначале нужно выполнить обновление версий пакетов:

    sudo apt-get update & sudo apt-get upgrade & sudo apt-get dist-upgrade
  3. Если операционная система Ubuntu Linux 16.04 или 18.04, либо 20.04 или 21.04, для установки xrdp советую воспользоваться готовым скриптом с сайта

https://c-nergy.be/downloads/xRDP/xrdp-installer-1.4.zip — скачать архив и извлечь скрипт.

Документация по программе «xrdp-installer» находится по адресу https://c-nergy.be/blog/?p=17810, а также в самой программе выводится краткая справка о возможных параметрах её вызова, при запуске sh-файла с ключом —help:

bash xrdp-installer-1.4.sh --help

Для запуска вводить команду sudo не нужно, когда надо она запросит пароль su. Запуск, например, так:

chmod +x xrdp-installer-1.4.sh
./xrdp-installer-1.4.sh

И затем перейти к разделам ОКОНЧАТЕЛЬНАЯ НАСТРОЙКА XRDP и «Диагностика«.


Если операционная система не принадлежит к перечисленным, путь установки длиннее.

sudo apt-get install x-window-system xserver-xorg xserver-xorg-core
sudo apt-get install  xserver-xorg-legacy

Выполняем реконфигурацию пакета

sudo apt-get install xserver-xorg-legacy
sudo dpkg-reconfigure xserver-xorg-legacy

окно для конфигурирования запуска Xorg:
xserver-xorg-legacy
в котором я выбрал последний пункт, дающий наибольшие права — «Кто угодно».

Данной командой производится запись в файл cat /etc/X11/Xwrapper.config:
allowed_users=anybody


Установка пакетов, необходимых для запуска xrdp:

sudo apt-get install libx11-dev libxfixes-dev libssl-dev libpam0g-dev libtool libjpeg-dev flex bison gettext autoconf libxml-parser-perl libfuse-dev xsltproc libxrandr-dev python3-libxml2 nasm fuse pkg-config git intltool checkinstall

Установка двух основных пакетов XRDP:

sudo apt-get install xrdp xorgxrdp xserver-xorg-input-all 

Можно заметить, что программа установки создаст RSA ключ.
Чтобы операционная система могла прочитать этот ключ, нужно добавить пользователя xrdp в группу ssl-cert:

sudo adduser xrdp ssl-cert

Затем, нужно установить полностью графическую подсистему MESA и драйверы видеокарты. Зачем?
Дело в том, что имеет место цепочка: RDP client -> сеть -> Xrdp server -> Xsession -> Xorg -> MESA -> OpenGL Driver -> видеокарта
При отсутствии возможности запуска графического режима, RDP клиент также «отвалится» сразу после входа.

sudo apt-get install libgl1-mesa-dri libglew1.5-dev libglew-dev libgles2-mesa-dev libglm-dev mesa-utils-extra mesa-common-dev freeglut3 freeglut3-dev

Наконец, видеокарта должна поддерживать режим OpenGL версии 2.1 и выше и иметь установленный драйвер для Linux.

  1. Если старый компьютер — на чипсетах Interl 945 (под общим названием i915) — нужно установить модифицированный, сторонний драйвер, т.к. на штатных драйверах по умолчанию включается режим OpenGL 1.4, тогда как нужен 2.1. Иначе будут ошибки (см. ниже раздел «Ошибки»)

Если следующая команда выводит информацию, что OpenGL высокой версии, ничего делать не нужно:

glxinfo | grep OpenGL

Пример хорошая версия драйвера — равна 2.1 (обращаем внимание на строчку OpenGL version string:
OpenGL vendor string: Mesa Project
OpenGL renderer string: i915 (chipset: 945G)
OpenGL version string: 2.1 Mesa 21.3.0-devel (git-dfef775 2021-09-02 focal-oibaf-ppa)
OpenGL shading language version string: 1.20
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 2.0 Mesa 21.3.0-devel (git-dfef775 2021-09-02 focal-oibaf-ppa)
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 1.0.16
OpenGL ES profile extensions:

Если версия 1.4 старая, которая не годится для XRDP, вывод команды glxinfo следующий:
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) 945G
OpenGL version string: 1.4 Mesa 21.0.3
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 2.0 Mesa 21.0.3
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 1.0.16
OpenGL ES profile extensions:

Старая версия драйвера с поддержкой OpenGL 1.4 (установленная по умолчанию из пакета «xserver-xorg-video-intel»). данная версия OpenGL 1.4 не подходит.

Устанавливаем новую версию драйвера (ТОЛЬКО ДЛЯ СТАРЫХ ЧИПСЕТОВ ВСТРОЕННОЙ ГРАФИКИ i915 — i925 — i945)

sudo add-apt-repository ppa:oibaf/graphics-drivers && sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade && sudo reboot

Данная команда обновит пакеты графического драйвера для встроенной графики Intel и выполнит перезагрузку.

P.S. Если потребуется в-дальнейшем удаление PPA-репозитория, например, после установки новой видеокарты, команда для удаления: sudo ppa-purge ppa:oibaf/graphics-drivers.

  1. Разрешение подключения к X-серверу «для всех» — дано ранее командой sudo dpkg-reconfigure xserver-xorg-legacy
    Конфигурация записана в файл

    sudo ls -l /etc/X11/Xwrapper.config

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

sudo nano /etc/X11/Xwrapper.config
  • Примечание console — Xorg доступен только для пользователей из консоли, anybody для всех. По умолчанию указано console.
    Подробнее см команду man Xwrapper.config.
  1. Настройка графики OpenGL (обязательно лишь для ПК старых чипсетов со встроенной графикой i915):

Вывод на экран модели графического адаптера:

lspci | grep VGA

Если графический адаптер — встроенная графика Intel чипсета 915 или 82945G переходим в каталог

cd /usr/share/X11/xorg.conf.d/

создаём файл 20-intel.conf:

sudo nano 20-intel.conf

и добавляем в него текст:

Section "Device"
        Identifier "Intel Graphics"
        Driver "intel"
        Option "TearFree" "true"
        Option "AccelMethod" "SNA"
        Option "BackingStore" "true"
        Option "DRI" "3"
EndSection

Вариант для старых ПК: в строке «AccelMethod» вместо стандартного метода ускорения графики «SNA» указать «uxa«.

Лучше использовать «SNA» — более современный метод встроенной графики x86. Где uxa — предыдущая архитектура.

Сохраняем и выходим Ctrl+O, Ctrl+X.

  1. Редактирование конфигурационного файла XRDP:
sudo nano /etc/xrdp/xrdp.ini

в середину файла после строки «background» добавить адрес по умолчанию для XRDP.
address=address=0.0.0.0
nastrojka_xrdp

Перезапуск сервера:

sudo /etc/init.d/xrdp stop
sudo /etc/init.d/xrdp start

ОКОНЧАТЕЛЬНАЯ НАСТРОЙКА XRDP

  1. Добавляем пользователя xrdp в группу tty и даём права на последовательный порт (для решения проблемы начала сессии Xorg, что ‘tty0 access denied’)

    sudo usermod -a -G tty xrdp
    sudo chmod g+r /dev/tty0
  2. Разрешаем запуск сервиса «xrdp»

    sudo systemctl start xrdp
    sudo systemctl enable xrdp
  3. ВАЖНО: Копируем файл скрипт для запуска сессии и исправляем его

    cp /etc/X11/xinit/xinitrc ~/.xinitrc

Узнаём тип установленной оболочки рабочего стола:

echo $XDG_CURRENT_DESKTOP

Если вывод команды пустой, попробовать

cat /etc/X11/default-display-manager

Редактируем файл ~/.xinitrc для запуска сеанса (сессии):

nano ~/.xinitrc

комментируем или удаляем строчку /etc/X11/Xsession, вместо неё пишем:

exec startlxde

или

exec openbox-session
  • для ОС Runtu

или

exec startxfce4

для Linux Mint с оболочкой рабочего стола XFCE

или

exec startlxqt

для Lubuntu или Linux Mint с оболочкой рабочего стола LXQT (если такой вывод у команды
echo $XDG_CURRENT_DESKTOP).


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

#!/bin/sh
exec startlxqt

Примечание от 09.09.2021: В этот файл можно добавить запуск любых нужных программ, например, запуск сервера звука pulseaudio и загрузку и переключение национальной раскладки клавиатуры. Тогда файл .xinitrc примет вид:

#!/bin/sh
pulseaudio &
setxkbmap -layout 'us,ru' -option 'grp:ctrl_shift_toggle,grp_led:scroll' &
exec startlxqt

Примечание от 07.10.2021: данные команды нужно добавлять в файл ~/.xinitrc пользователя, который будет подключаться по протоколу RDP.

Содержимое файла ~/.xinitrc, если серверная ОС — Linux Mint с оболочкой XFCE:

#!/bin/sh
pulseaudio &
setxkbmap -layout 'us,ru' -option 'grp:alt_shift_toggle,grp_led:scroll' &
exec startxfce4

Когда рабочий стол сервера — LXQT, мой файл ~/.xinitrc следующий:
#!/bin/sh
pulseaudio &
setxkbmap -layout 'us,ru' -option 'grp:alt_shift_toggle,grp_led:scroll' &
exec startlxqt

И для OpenBox (Runtu Linux) работающий вариант файла ~/.xinitrc следующий:
#!/bin/sh
pulseaudio &
setxkbmap -layout 'us,ru' -option 'grp:ctrl_shift_toggle,grp_led:scroll' &
exec openbox-session

exec startlxde

Универсальный файл ~/.xinitrc для любых рабочих столов можно найти на stackoverflow (необходима установка slim).

Диагностика

Перезагружаем ПК, который выполняет роль сервера.

Проверяем с него же, что сервер Xorg запускается без ошибок:

sudo Xorg :10 -auth .Xauthority -config xrdp/xorg.conf -noreset -nolisten tcp

На этом этапе экран может погаснуть, если вы проверяете XRDP с того же ПК, на котором запущена начальная сессия Xorg. Нужно нажать Ctrl+Alt+F1 ввести имя и пароль, при помощи команды ps -aux | grep xrdp найти номер процесса «sudo xrdp» и завершить его командой «sudo kill <номер процесса>«.

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

Если же сообщение «(EE) Cannot establish any listening sockets — Make sure an X server isn’t already running(EE)»,
нужно перезагрузить ПК и повторить диагностику.

Второй вариант проверки — перед первым подключением к серверу XRDP, завершаем текущий сеанс «Пуск» — «Выйти» — «Выйти из системы». Так как клиент RDP не сможет создать второй сеанс такого же пользователя (с ошибкой в файле ~/.xorgxrdp.10.log: «(EE) Caught signal 11 (Segmentation fault). Server aborting»).

Либо, нужно создать второго пользователя для тестирования подключения к xRDP, которым будем подключаться по протоколу RDP:

sudo useradd -m ivanov-rdp
passwd ivanov-rdp

Ошибки xRDP сервера в Linux и их решения

Настройка брандмауэра

При невозможности подключения по протоколу RDP к серверу, прежде всего проверить открытие порта на FireWall:

sudo apt install nmap
sudo nmap 192.168.55.100 -p 3389

где вместо 192.168.55.100 укажите IP-адрес сервера в локальной сети.
Не забываем открыть локальный порт 3389 в firewall:

sudo ufw allow 3389

Если порт открыт, то вывод:
PORT STATE SERVICE
3389/tcp open ms-wbt-server

Проблема «При подключении с клиента по RDP виден чёрный пустой экран»

На сервере не установлен пакет xorgxrdp — программная «прослойка» между xorg и rdp сервером, который отображает графику — Рабочий стол, указатель мыши и иконки.

Решение — установить на сервер пакет xorgxrdp:

sudo apt-get install xorgxrdp
sudo service xrdp restart

Сеанс xRDP теперь должен работать. Пробуем подключиться!

Примечание: Пакет «xorgxrdp — Remote Desktop Protocol (RDP) modules for X.org» входит в большинство дистрибутивов Debian, а также Ubuntu 18.04 «bionic», 20.04 LTS «focal», 21.04 «hirsute», 21.10 «impish», 22.04 LTS «jammy» (вышла 21.04.2022), и производных ОС на основе DEB-пакетной базы Ubuntu (таких как Runtu, Lubuntu, Xubuntu, Kubuntu и др.), а также дистрибутивы на основе RPM: Fedora, Arch и др.. Поэтому данная инструкция должна работать с множеством версий Linux.


Remmina RDP Client — подключение к серверу

sudo apt-get install remmina remmina-plugin-rdp remmina-plugin-secret
sudo reboot
remmina

Добавляем подключение — тип RDP.
remmina

Если VPN не используется, то в IP адрес вводим «белый» IP-адрес домашнего роутера.
При работе через VPN IP адрес относится к внутренней (локальной, домашней) сети.
Имя и пароль — такие же как при входе «с клавиатуры» на сервере.

Нижние кнопки окна Remmina на нетбуках с разрешением экрана 1024×600 пикселей могут быть обрезаны и видны частично.
«Отменить» — «Сохранить как значения по умолчанию» — «Сохранить» — «Подключиться» — «Сохранить и подключиться»

Нажимаем крайнюю правую кнопку «Сохранить и подключиться».

Различные проблемы

Журналы ошибок в системной каталоге /var/log/:

  • xrdp.log
  • xrdp-sesman.log
  • Xorg.0.log, Xorg.10.log

Журналы ошибок в каталоге пользователя ~:

  • ~/.xorgxrdp.10.log

Просмотреть их можно командами:

sudo cat /var/log/xrdp.log
sudo cat /var/log/xrdp-sesman.log
sudo cat /var/log/Xorg.0.log
sudo cat /var/log/Xorg.10.log
sudo cat ~/.xorgxrdp.log

Если при подключении с ПК под управлением Windows к ПК под управлением Linux после ввода имени пользователя пароля виден сине-зелёный однотонный фон без текста и иконок,
или в файле XRDP.LOG многочисленные ошибки, значит подключение произошло, но не запустилась графика Xorg — скорее всего из-за старой версии OpenGL, либо прав, см. выше.

Пример ошибки на стороне клиента при попытке подключения с помощью программы MSTSC.EXE:
blue

Сообщения об ошибка в журнале XRDP.LOG на стороне сервера:
error19
или аналогичная [DEBUG] Closed socket 17 (AF_UNIX)

Решение — диагностика командой с рабочего стола машины-сервера:

sudo Xorg :10 -auth .Xauthority -config xrdp/xorg.conf -noreset -nolisten tcp

Нужно добиться отсутствия ошибок Xorg в файле /var/log/Xorg.10.log.

Если при подключении с ПК под управлением Windows виден на мгновение чёрный экран, который тут же закрывается, один из вариантов:

  • неправильной имя/пароль пользователя
  • неправильный скрипт ~/.xinitrc (не запустилась сессия рабочего стола). Проверьте файл ~/.xinitrc на наличие команды exec <имя оболочки>.
  • пользователь, которым вы подключаетесь к ПК удалённо, имеет открытую сессию в операционной системе локально (использует компьютер в данный момент).

Безопасность

Теперь любой ПК в локальной сети сможет подключаться к вашему компьютеру по протоколу RDP. Следует установить для учётной записи пользователя сложный пароль. Если подключение к ПК из Интернет — можно дополнительно использовать VPN с шифрованием трафика.


Дата последнего редактирования 25.04.2022

Похожие публикации

Я на компьютере с Windows 7 пытаюсь получить доступ к системе RHEL7 через удаленный рабочий стол Windows.

До сегодняшнего дня я (и другие в моем отделе) был в состоянии войти в систему RHEL, используя xrdp.

Сегодня внезапно xrdp начал отклонять соединения. Я вижу зеленый фоновый экран входа в систему, но он отклоняет учетные данные (и это нормально).

Я могу пропинговать сервер, подключиться через putty и использовать filezilla, но подключение к удаленному рабочему столу отклоняет вход в сеанс.

Я также попытался подключиться через удаленный рабочий стол к другому компьютеру CENTOS, и он работает нормально.

Есть идеи?

РЕДАКТИРОВАТЬ:

~/.xsession-errors :

gnome-session-is-accelerated: llvmpipe detected.

/var/log/xrdp.log:

[20171031-13:55:53] [DEBUG] TLSv1.2 enabled
[20171031-13:55:53] [DEBUG] TLSv1.1 enabled
[20171031-13:55:53] [DEBUG] TLSv1 enabled
[20171031-13:55:53] [DEBUG] Security layer: requested 3, selected 1
[20171031-13:55:53] [INFO ] connected client computer name: SPENATE7
[20171031-13:55:53] [INFO ] TLS connection established from 192.168.197.176 port 51321: TLSv1.2 with cipher AES256-GCM-SHA384
[20171031-13:55:53] [DEBUG] xrdp_00007c0e_wm_login_mode_event_00000001
[20171031-13:55:53] [INFO ] Loading keymap file /etc/xrdp/km-0000040a.ini
[20171031-13:55:53] [WARN ] local keymap file for 0x0000040a found and doesn't match built in keymap, using local keymap file
[20171031-13:55:58] [DEBUG] xrdp_wm_log_msg: connecting to sesman ip 127.0.0.1 port 3350
[20171031-13:55:59] [INFO ] xrdp_wm_log_msg: sesman connect ok
[20171031-13:55:59] [DEBUG] xrdp_wm_log_msg: sending login info to session manager, please wait...
[20171031-13:55:59] [DEBUG] return value from xrdp_mm_connect 0
[20171031-13:56:05] [INFO ] xrdp_wm_log_msg: login failed for display 0
[20171031-13:56:05] [DEBUG] xrdp_mm_module_cleanup
[20171031-13:56:05] [DEBUG] Closed socket 18 (AF_INET 127.0.0.1:46890)

/var/log/xrdp-sesman.log :

[20171031-12:58:20] [ERROR] X server -- no display in range is available
[20171031-12:58:20] [DEBUG] Closed socket 8 (AF_INET 127.0.0.1:3350)
[20171031-13:01:28] [INFO ] shutting down sesman 1
[20171031-13:01:28] [DEBUG] Closed socket 7 (AF_INET 127.0.0.1:3350)
[20171031-13:01:29] [CORE ] shutting down log subsystem...
[20171031-13:01:29] [DEBUG] libscp initialized
[20171031-13:01:29] [INFO ] starting xrdp-sesman with pid 14292
[20171031-13:01:29] [INFO ] listening to port 3350 on 127.0.0.1
[20171031-13:01:41] [INFO ] A connection received from 127.0.0.1 port 35854
[20171031-13:01:41] [INFO ] ++ created session (access granted): username sanpen, ip 192.168.197.176:60904 - socket: 12
[20171031-13:01:41] [INFO ] starting Xvnc session...
[20171031-13:01:41] [DEBUG] Closed socket 9 (AF_INET 0.0.0.0:5910)
[20171031-13:01:41] [DEBUG] Closed socket 9 (AF_INET 0.0.0.0:6010)
[20171031-13:01:42] [DEBUG] Closed socket 9 (AF_INET 0.0.0.0:6210)
[20171031-13:01:42] [DEBUG] Closed socket 9 (AF_INET 0.0.0.0:5911)
[20171031-13:01:42] [DEBUG] Closed socket 9 (AF_INET 0.0.0.0:6011)
[20171031-13:01:42] [DEBUG] Closed socket 9 (AF_INET 0.0.0.0:6211)

This is my xrdp config:

[Globals]
ini_version=1
fork=true
port=3389
use_vsock=false
tcp_nodelay=true
tcp_keepalive=true
security_layer=negotiate
crypt_level=high
certificate=
key_file=
ssl_protocols=TLSv1.2, TLSv1.3
autorun=
allow_channels=true
allow_multimon=true
bitmap_cache=true
bitmap_compression=true
bulk_compression=true
max_bpp=128
use_compression=yes
new_cursors=true
use_fastpath=both
blue=009cb5
grey=dedede
ls_top_window_bg_color=009cb5
ls_width=350
ls_height=430
ls_bg_color=dedede
ls_logo_filename=
ls_logo_x_pos=55
ls_logo_y_pos=50
ls_label_x_pos=30
ls_label_width=65
ls_input_x_pos=110
ls_input_width=210
ls_input_y_pos=220
ls_btn_ok_x_pos=142
ls_btn_ok_y_pos=370
ls_btn_ok_width=85
ls_btn_ok_height=30
ls_btn_cancel_x_pos=237
ls_btn_cancel_y_pos=370
ls_btn_cancel_width=85
ls_btn_cancel_height=30
[Logging]
LogFile=xrdp.log
LogLevel=DEBUG
EnableSyslog=true
SyslogLevel=DEBUG
[Channels]
rdpdr=true
rdpsnd=true
drdynvc=true
cliprdr=true
rail=true
xrdpvr=true
tcutils=true
[Xvnc]
name=Xvnc
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=-1
[Xorg]
name=Xorg
lib=libxup.so
username=ask
password=ask
ip=127.0.0.1
port=-1
code=20

I am trying to connect with mstsc to this machine (this is after fresh pc restart, noone has logged in):

enter image description here

while in this login box, no disconnect happens:

enter image description here

after I put there correct login/password, I get black screen first and then mstsc window closes. I tried to connect from KDE remote connection application, but it also failed same way. xrdp.log doesn’t seem to contain anything interesting:

[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: connecting to sesman ip 127.0.0.1 port 3350
[20190606-04:14:36] [INFO ] xrdp_wm_log_msg: sesman connect ok
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: sending login info to session manager, please wait...
[20190606-04:14:36] [DEBUG] return value from xrdp_mm_connect 0
[20190606-04:14:36] [INFO ] xrdp_wm_log_msg: login successful for display 10
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC started connecting
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC connecting to 127.0.0.1 5910
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC tcp connected
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC security level is 2 (1 = none, 2 = standard)
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC password ok
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC sending share flag
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC receiving server init
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC receiving pixel format
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC receiving name length
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC receiving name
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC sending pixel format
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC sending encodings
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC sending framebuffer update request
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC sending cursor
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC connection complete, connected ok
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: connected ok
[20190606-04:14:36] [DEBUG] xrdp_mm_connect_chansrv: chansrv connect successful
[20190606-04:14:36] [DEBUG] Closed socket 18 (AF_INET 127.0.0.1:47744)
[20190606-04:14:37] [DEBUG] Closed socket 20 (AF_UNIX)
[20190606-04:14:37] [DEBUG] Closed socket 12 (AF_INET 127.0.0.1:3389)
[20190606-04:14:37] [DEBUG] xrdp_mm_module_cleanup
[20190606-04:14:37] [DEBUG] VNC mod_exit
[20190606-04:14:37] [DEBUG] Closed socket 19 (AF_INET 127.0.0.1:40224)

How can I fix that?

Community's user avatar

asked Jun 5, 2019 at 21:18

stiv's user avatar

3

Try this:

Stop xrdp with
sudo service xrdp stop

Edit the xrdp start script:
sudo nano /etc/xrdp/startwm.sh

In this file, replace the lines

test -x /etc/X11/Xsession && exec /etc/X11/Xsession
exec /bin/sh /etc/X11/Xsession

with
startxfce4

(You can comment out lines by adding # at the start)

Restart xrdp with
sudo service xrdp start

Select Xrdp as the session, and log in.

answered Jan 20, 2021 at 21:26

The Bic Pen's user avatar

The Bic PenThe Bic Pen

4034 silver badges6 bronze badges

5

I solved the issue myself, hopefully someone else will find it usefull. I took a look at ~/.xsession-errors, it contained:

(imsettings-check:16467): IMSettings-WARNING **: 04:42:56.491: Could not connect: Connection refused

(imsettings-check:16467): GLib-GIO-CRITICAL **: 04:42:56.491: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed
GLib-GIO-Message: 04:42:56.807: Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications.

** (process:16260): WARNING **: 04:42:56.824: Could not make bus activated clients aware of XDG_CURRENT_DESKTOP=GNOME environment variable: Could not connect: Connection refused

and then I’ve googled a rootcause, miniconda installation has broken PATH in .bashrc file, I have removed this line and it has fixed it:

    export PATH="/home/stiv/miniconda3/bin:$PATH"

UPDATE: Later I’ve found x2go, which works way more reliable and faster then XRDP.

answered Jun 5, 2019 at 21:48

stiv's user avatar

stivstiv

1,3215 gold badges19 silver badges32 bronze badges

6

  1. sudo apt-get update

  2. sudo apt install xrdp

  3. sudo apt-get install xserver-xorg-core

  4. sudo apt-get install xorgxrdp

  5. nano /etc/polkit-1/localauthority.conf.d/02-allow-colord.conf

  6. Copy the polkit below to 02-allow-colord.conf

polkit.addRule(function(action, subject) {
if ((action.id == "org.freedesktop.color-manager.create-device" || action.id == "org.freedesktop.color-manager.create-profile" || action.id == "org.freedesktop.color-manager.delete-device" || action.id == "org.freedesktop.color-manager.delete-profile" || action.id == "org.freedesktop.color-manager.modify-device" || action.id == "org.freedesktop.color-manager.modify-profile") && subject.isInGroup("{group}"))
{
return polkit.Result.YES;
}
});
  1. sudo ufw allow 3389/tcp

  2. sudo /etc/init.d/xrdp restart

  3. sudo systemctl status xrdp

  4. sudo systemctl enable xrdp

  5. Log out of your session.

  6. Try with RDP

jstedfast's user avatar

answered Dec 6, 2019 at 15:07

ILGAZ KESKIN's user avatar

3

The user account you are trying this with, are they a member of the sudo or wheel groups? With Kali 2020 edition, any user that is apart of sudo will disconnect immediately, I had to kill all processes of that user ( pkill -u <username> ) and then delete the user account and recreate it. I am still tracking down the exact reason why this is occurring when I have time. But thought I share my experience.

αғsнιη's user avatar

αғsнιη

39.7k15 gold badges67 silver badges110 bronze badges

answered Dec 12, 2020 at 17:26

Sean Hulbert's user avatar

2

You must do following additional actions:

To Configure Xrdp, first add

exec gnome-session

to the end of the configuration file

/etc/xrdp/xrdp.ini

Or use following command to add “exec gnome-session” to the end of the “/etc/xrdp/xrdp.ini” configuration file

sudo bash -c 'echo "exec gnome-session" >> /etc/xrdp/xrdp.ini'

Restart xrdp to load the new configuration

sudo systemctl restart xrdp

Reference:
How to: Install Xrdp (Remote Desktop) on CentOS 8 – (How to: Use Windows to remote control CentOS 8)

answered May 2, 2021 at 9:51

Hossein Mirheydari's user avatar

1

I came across this issue trying to connect to a work machine running xrdp on red hat enterprise Linux 7. I had installed miniconda and datalad in its base environment in my home folder on the remote machine and that broke windows remote desktop. The solution was surprisingly simple. I uninstalled datalad and reinstalled it in a new environment via SSH. I was then able to reconnect to the machine via windows remote desktop without any issues.

answered Apr 27, 2021 at 18:02

Whereisthespacebar's user avatar

I have spent many days over the past few years with the intermittent problems of accessing a Linux server from a Windows 10 PC. Different approaches to Server xrdp.ini modifications appear to straighten out the issue, but non permanently. After failing with fresh RHEL8 and Centos8 installs, all failing with a PC RDP logon, I observed the following common error. After a fail from the PC, the error, observed from a «semi» successful re-logon from the same PC was observable in systemctl status xrdp which presents the litany of the failed items.
However, when observed directly on the server itself using a screen, keyboard and mouse( I have the Dell R430 in next to me), the systemctl status xrdp, appears clean with no problems.
Each fresh logon to RDP, with Xvnc, apparently launches a separate rdp session/process.
The conclusion I have reached is that the problem is focused on the PC and somehow a SSL failure. It is persistent on the PC UNTIL IT IS rebooted.
The server does not require a restart.
Of course, REBOOTING the PC is impractical, but it is repeatedly successful.

answered Jun 1, 2021 at 14:18

user3594395's user avatar

I troubleshooted this too, and, it seems that just installing the xrdp package on it’s own is not enough, because (1) dependent packages will not get installed, (2) startwm.sh issues. I didn’t arrive at a perfect solution. I notice one of the other answers is using xfce4 which I would like to use to. In the end, I defaulted to something more lightweight, i.e. icewm, i.e.

sudo yum update
sudo yum install xrdp
sudo yum install tigervnc-server
sudo yum install xterm
sudo yum install icewm
sudo vi /usr/libexec/xrdp/startwm.sh

And, effectively, my startwm.sh script has the following at the top, i.e. I’ve circumvented or replaced the default behavior:

#!/bin/bash -xe
/bin/xterm &
exec /bin/icewm

answered Jul 20, 2021 at 23:08

Stephen Quan's user avatar

This is my xrdp config:

[Globals]
ini_version=1
fork=true
port=3389
use_vsock=false
tcp_nodelay=true
tcp_keepalive=true
security_layer=negotiate
crypt_level=high
certificate=
key_file=
ssl_protocols=TLSv1.2, TLSv1.3
autorun=
allow_channels=true
allow_multimon=true
bitmap_cache=true
bitmap_compression=true
bulk_compression=true
max_bpp=128
use_compression=yes
new_cursors=true
use_fastpath=both
blue=009cb5
grey=dedede
ls_top_window_bg_color=009cb5
ls_width=350
ls_height=430
ls_bg_color=dedede
ls_logo_filename=
ls_logo_x_pos=55
ls_logo_y_pos=50
ls_label_x_pos=30
ls_label_width=65
ls_input_x_pos=110
ls_input_width=210
ls_input_y_pos=220
ls_btn_ok_x_pos=142
ls_btn_ok_y_pos=370
ls_btn_ok_width=85
ls_btn_ok_height=30
ls_btn_cancel_x_pos=237
ls_btn_cancel_y_pos=370
ls_btn_cancel_width=85
ls_btn_cancel_height=30
[Logging]
LogFile=xrdp.log
LogLevel=DEBUG
EnableSyslog=true
SyslogLevel=DEBUG
[Channels]
rdpdr=true
rdpsnd=true
drdynvc=true
cliprdr=true
rail=true
xrdpvr=true
tcutils=true
[Xvnc]
name=Xvnc
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=-1
[Xorg]
name=Xorg
lib=libxup.so
username=ask
password=ask
ip=127.0.0.1
port=-1
code=20

I am trying to connect with mstsc to this machine (this is after fresh pc restart, noone has logged in):

enter image description here

while in this login box, no disconnect happens:

enter image description here

after I put there correct login/password, I get black screen first and then mstsc window closes. I tried to connect from KDE remote connection application, but it also failed same way. xrdp.log doesn’t seem to contain anything interesting:

[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: connecting to sesman ip 127.0.0.1 port 3350
[20190606-04:14:36] [INFO ] xrdp_wm_log_msg: sesman connect ok
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: sending login info to session manager, please wait...
[20190606-04:14:36] [DEBUG] return value from xrdp_mm_connect 0
[20190606-04:14:36] [INFO ] xrdp_wm_log_msg: login successful for display 10
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC started connecting
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC connecting to 127.0.0.1 5910
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC tcp connected
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC security level is 2 (1 = none, 2 = standard)
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC password ok
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC sending share flag
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC receiving server init
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC receiving pixel format
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC receiving name length
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC receiving name
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC sending pixel format
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC sending encodings
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC sending framebuffer update request
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC sending cursor
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: VNC connection complete, connected ok
[20190606-04:14:36] [DEBUG] xrdp_wm_log_msg: connected ok
[20190606-04:14:36] [DEBUG] xrdp_mm_connect_chansrv: chansrv connect successful
[20190606-04:14:36] [DEBUG] Closed socket 18 (AF_INET 127.0.0.1:47744)
[20190606-04:14:37] [DEBUG] Closed socket 20 (AF_UNIX)
[20190606-04:14:37] [DEBUG] Closed socket 12 (AF_INET 127.0.0.1:3389)
[20190606-04:14:37] [DEBUG] xrdp_mm_module_cleanup
[20190606-04:14:37] [DEBUG] VNC mod_exit
[20190606-04:14:37] [DEBUG] Closed socket 19 (AF_INET 127.0.0.1:40224)

How can I fix that?

Community's user avatar

asked Jun 5, 2019 at 21:18

stiv's user avatar

3

Try this:

Stop xrdp with
sudo service xrdp stop

Edit the xrdp start script:
sudo nano /etc/xrdp/startwm.sh

In this file, replace the lines

test -x /etc/X11/Xsession && exec /etc/X11/Xsession
exec /bin/sh /etc/X11/Xsession

with
startxfce4

(You can comment out lines by adding # at the start)

Restart xrdp with
sudo service xrdp start

Select Xrdp as the session, and log in.

answered Jan 20, 2021 at 21:26

The Bic Pen's user avatar

The Bic PenThe Bic Pen

4034 silver badges6 bronze badges

5

I solved the issue myself, hopefully someone else will find it usefull. I took a look at ~/.xsession-errors, it contained:

(imsettings-check:16467): IMSettings-WARNING **: 04:42:56.491: Could not connect: Connection refused

(imsettings-check:16467): GLib-GIO-CRITICAL **: 04:42:56.491: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed
GLib-GIO-Message: 04:42:56.807: Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications.

** (process:16260): WARNING **: 04:42:56.824: Could not make bus activated clients aware of XDG_CURRENT_DESKTOP=GNOME environment variable: Could not connect: Connection refused

and then I’ve googled a rootcause, miniconda installation has broken PATH in .bashrc file, I have removed this line and it has fixed it:

    export PATH="/home/stiv/miniconda3/bin:$PATH"

UPDATE: Later I’ve found x2go, which works way more reliable and faster then XRDP.

answered Jun 5, 2019 at 21:48

stiv's user avatar

stivstiv

1,3215 gold badges19 silver badges32 bronze badges

6

  1. sudo apt-get update

  2. sudo apt install xrdp

  3. sudo apt-get install xserver-xorg-core

  4. sudo apt-get install xorgxrdp

  5. nano /etc/polkit-1/localauthority.conf.d/02-allow-colord.conf

  6. Copy the polkit below to 02-allow-colord.conf

polkit.addRule(function(action, subject) {
if ((action.id == "org.freedesktop.color-manager.create-device" || action.id == "org.freedesktop.color-manager.create-profile" || action.id == "org.freedesktop.color-manager.delete-device" || action.id == "org.freedesktop.color-manager.delete-profile" || action.id == "org.freedesktop.color-manager.modify-device" || action.id == "org.freedesktop.color-manager.modify-profile") && subject.isInGroup("{group}"))
{
return polkit.Result.YES;
}
});
  1. sudo ufw allow 3389/tcp

  2. sudo /etc/init.d/xrdp restart

  3. sudo systemctl status xrdp

  4. sudo systemctl enable xrdp

  5. Log out of your session.

  6. Try with RDP

jstedfast's user avatar

answered Dec 6, 2019 at 15:07

ILGAZ KESKIN's user avatar

3

The user account you are trying this with, are they a member of the sudo or wheel groups? With Kali 2020 edition, any user that is apart of sudo will disconnect immediately, I had to kill all processes of that user ( pkill -u <username> ) and then delete the user account and recreate it. I am still tracking down the exact reason why this is occurring when I have time. But thought I share my experience.

αғsнιη's user avatar

αғsнιη

39.7k15 gold badges67 silver badges110 bronze badges

answered Dec 12, 2020 at 17:26

Sean Hulbert's user avatar

2

You must do following additional actions:

To Configure Xrdp, first add

exec gnome-session

to the end of the configuration file

/etc/xrdp/xrdp.ini

Or use following command to add “exec gnome-session” to the end of the “/etc/xrdp/xrdp.ini” configuration file

sudo bash -c 'echo "exec gnome-session" >> /etc/xrdp/xrdp.ini'

Restart xrdp to load the new configuration

sudo systemctl restart xrdp

Reference:
How to: Install Xrdp (Remote Desktop) on CentOS 8 – (How to: Use Windows to remote control CentOS 8)

answered May 2, 2021 at 9:51

Hossein Mirheydari's user avatar

1

I came across this issue trying to connect to a work machine running xrdp on red hat enterprise Linux 7. I had installed miniconda and datalad in its base environment in my home folder on the remote machine and that broke windows remote desktop. The solution was surprisingly simple. I uninstalled datalad and reinstalled it in a new environment via SSH. I was then able to reconnect to the machine via windows remote desktop without any issues.

answered Apr 27, 2021 at 18:02

Whereisthespacebar's user avatar

I have spent many days over the past few years with the intermittent problems of accessing a Linux server from a Windows 10 PC. Different approaches to Server xrdp.ini modifications appear to straighten out the issue, but non permanently. After failing with fresh RHEL8 and Centos8 installs, all failing with a PC RDP logon, I observed the following common error. After a fail from the PC, the error, observed from a «semi» successful re-logon from the same PC was observable in systemctl status xrdp which presents the litany of the failed items.
However, when observed directly on the server itself using a screen, keyboard and mouse( I have the Dell R430 in next to me), the systemctl status xrdp, appears clean with no problems.
Each fresh logon to RDP, with Xvnc, apparently launches a separate rdp session/process.
The conclusion I have reached is that the problem is focused on the PC and somehow a SSL failure. It is persistent on the PC UNTIL IT IS rebooted.
The server does not require a restart.
Of course, REBOOTING the PC is impractical, but it is repeatedly successful.

answered Jun 1, 2021 at 14:18

user3594395's user avatar

I troubleshooted this too, and, it seems that just installing the xrdp package on it’s own is not enough, because (1) dependent packages will not get installed, (2) startwm.sh issues. I didn’t arrive at a perfect solution. I notice one of the other answers is using xfce4 which I would like to use to. In the end, I defaulted to something more lightweight, i.e. icewm, i.e.

sudo yum update
sudo yum install xrdp
sudo yum install tigervnc-server
sudo yum install xterm
sudo yum install icewm
sudo vi /usr/libexec/xrdp/startwm.sh

And, effectively, my startwm.sh script has the following at the top, i.e. I’ve circumvented or replaced the default behavior:

#!/bin/bash -xe
/bin/xterm &
exec /bin/icewm

answered Jul 20, 2021 at 23:08

Stephen Quan's user avatar

Здравствуйте.

Установил Simply Linux 9, установил xrdp. Пытаюсь подключиться сам к себе на 127.0.0.1 ремминой.
Пользователь в группу tsusers добавлен.

С версии 0.9.14-alt5 файл /etc/pam.d/xrdp-sesman стал основан на правилах common-login. Второй сеанс systemd для одного и того же пользователя не удаётся запустить. Если это действительно надо, замените строку

Заменил, как указано выше.

При попытке подключения ввожу логин и пароль, появляется окно как на скриншоте. Нажимаю «Ок» и снова окно логин-пароль и так по кругу.

« Последнее редактирование: 30.12.2020 13:36:19 от Rik »


Записан

visual-t.ru Кросс-платформенные технологии визуальной разработки ПО.


Показанная ошибка никакого отношения к смене схемы PAM не имеет. Пользователя нужно в группу tsusers включить.


Записан

Андрей Черепанов (cas@)


Показанная ошибка никакого отношения к смене схемы PAM не имеет. Пользователя нужно в группу tsusers включить.

Команда id говорит что пользователь в tsusers есть.


Записан

visual-t.ru Кросс-платформенные технологии визуальной разработки ПО.



Записан

Андрей Черепанов (cas@)


У меня тоже «сам на себя» не заходит, с другой машины заходит во вторую удаленную сессию под этим же пользователем. Не совсем понятно зачем такой вход нужен. Возможно с конфигом xrdp сервера нужно по колдовать?


Записан


У меня тоже «сам на себя» не заходит, с другой машины заходит во вторую удаленную сессию под этим же пользователем. Не совсем понятно зачем такой вход нужен. Возможно с конфигом xrdp сервера нужно по колдовать?

На 8.2 сам на себя заходит. Я для проверки работоспособности пробовал. Ещё пробовал через реммину заходить на терминал Windows и с него уже обратно на свой, тоже не заходит.


Записан

visual-t.ru Кросс-платформенные технологии визуальной разработки ПО.


Меняйте в pam common-login на system-auth.


Записан

Андрей Черепанов (cas@)


Решил ещё раз с начала всё начать, переустановил, обновил, поставил xrdp,  в pam common-login поменял на system-auth.
Заработало!
В первый раз все делал так-же, почему не работало, не понятно.
Ещё бы сделать так, чтобы при подключении по rdp попадать в работающую локальную сессию. Параметр fork=true/false ни как не влияет.


Записан

visual-t.ru Кросс-платформенные технологии визуальной разработки ПО.


Она и так попадает в работающий сеанс xrdp.


Записан

Андрей Черепанов (cas@)


Hi @matt335672, thanks for the reply. I did see some info regarding being logged in at the console. I tried logging out, and also following the wiki entry, but I’m still having the same issue. I then did what you asked, and here are the results:

date: Wed Jun 17 15:55:36 EDT 2020

Tried logging in over RDP, then here are the results of the command:

-- Logs begin at Wed 2020-04-01 13:23:43 EDT, end at Wed 2020-06-17 15:57:17 EDT. --
Jun 17 15:55:40 ubuntu dbus-daemon[17287]: [session uid=122 pid=17285] Activating service name='org.freedesktop.Noti>
Jun 17 15:55:40 ubuntu dbus-daemon[17287]: [session uid=122 pid=17285] Activating service name='org.xfce.Xfconf' req>
Jun 17 15:55:40 ubuntu dbus-daemon[17287]: [session uid=122 pid=17285] Successfully activated service 'org.xfce.Xfco>
Jun 17 15:55:40 ubuntu dbus-daemon[17287]: [session uid=122 pid=17285] Successfully activated service 'org.freedeskt>
Jun 17 15:55:41 ubuntu xrdp[1389]: (1389)(281473264242704)[INFO ] Socket 12: AF_INET6 connection received from ::fff>
Jun 17 15:55:41 ubuntu xrdp[1389]: (1389)(281473264242704)[DEBUG] Closed socket 12 (AF_INET6 ::ffff:192.168.1.226 po>
Jun 17 15:55:41 ubuntu xrdp[18426]: (18426)(281473264242704)[DEBUG] Closed socket 11 (AF_INET6 :: port 3389)
Jun 17 15:55:41 ubuntu xrdp[18426]: (18426)(281473264242704)[INFO ] Using default X.509 certificate: /etc/xrdp/cert.>
Jun 17 15:55:41 ubuntu xrdp[18426]: (18426)(281473264242704)[INFO ] Using default X.509 key file: /etc/xrdp/key.pem
Jun 17 15:55:41 ubuntu xrdp[18426]: (18426)(281473264242704)[ERROR] Cannot read private key file /etc/xrdp/key.pem: >
Jun 17 15:55:41 ubuntu xrdp[18426]: (18426)(281473264242704)[DEBUG] TLSv1.3 enabled
Jun 17 15:55:41 ubuntu xrdp[18426]: (18426)(281473264242704)[DEBUG] TLSv1.2 enabled
Jun 17 15:55:41 ubuntu xrdp[18426]: (18426)(281473264242704)[DEBUG] Security layer: requested 11, selected 0
Jun 17 15:55:41 ubuntu xrdp[18426]: (18426)(281473264242704)[DEBUG] Closed socket 12 (AF_INET6 ::ffff:192.168.1.226 >
Jun 17 15:55:42 ubuntu xrdp[1389]: (1389)(281473264242704)[INFO ] Socket 12: AF_INET6 connection received from ::fff>
Jun 17 15:55:42 ubuntu xrdp[1389]: (1389)(281473264242704)[DEBUG] Closed socket 12 (AF_INET6 ::ffff:192.168.1.226 po>
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[DEBUG] Closed socket 11 (AF_INET6 :: port 3389)
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[INFO ] Using default X.509 certificate: /etc/xrdp/cert.>
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[INFO ] Using default X.509 key file: /etc/xrdp/key.pem
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[ERROR] Cannot read private key file /etc/xrdp/key.pem: >
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[DEBUG] TLSv1.3 enabled
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[DEBUG] TLSv1.2 enabled
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[DEBUG] Security layer: requested 0, selected 0
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[INFO ] connected client computer name: PAULRYZEN
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[INFO ] adding channel item name rdpdr chan_id 1004 flag>
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[INFO ] adding channel item name rdpsnd chan_id 1005 fla>
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[INFO ] adding channel item name cliprdr chan_id 1006 fl>
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[INFO ] adding channel item name drdynvc chan_id 1007 fl>
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[INFO ] Non-TLS connection established from ::ffff:192.1>
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[DEBUG] xrdp_000047fb_wm_login_mode_event_00000001
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[INFO ] Loading keymap file /etc/xrdp/km-00000409.ini
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[WARN ] local keymap file for 0x00000409 found and doesn>
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[DEBUG] xrdp_wm_log_msg: connecting to sesman ip 127.0.0>
Jun 17 15:55:42 ubuntu xrdp-sesman[1353]: (1353)(281473614072064)[INFO ] A connection received from ::1 port 37930
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[INFO ] xrdp_wm_log_msg: sesman connect ok
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[DEBUG] xrdp_wm_log_msg: sending login info to session m>
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[DEBUG] return value from xrdp_mm_connect 0
Jun 17 15:55:42 ubuntu xrdp-sesman[1353]: pam_unix(xrdp-sesman:auth): Couldn't open /etc/securetty: No such file or >
Jun 17 15:55:42 ubuntu xrdp-sesman[1353]: pam_unix(xrdp-sesman:auth): Couldn't open /etc/securetty: No such file or >
Jun 17 15:55:42 ubuntu xrdp-sesman[1353]: (1353)(281473614072064)[INFO ] ++ created session (access granted): userna>
Jun 17 15:55:42 ubuntu xrdp-sesman[1353]: (1353)(281473614072064)[INFO ] starting Xorg session...
Jun 17 15:55:42 ubuntu xrdp-sesman[1353]: (1353)(281473614072064)[DEBUG] Closed socket 9 (AF_INET6 :: port 5910)
Jun 17 15:55:42 ubuntu xrdp-sesman[1353]: (1353)(281473614072064)[DEBUG] Closed socket 9 (AF_INET6 :: port 6010)
Jun 17 15:55:42 ubuntu xrdp-sesman[1353]: (1353)(281473614072064)[DEBUG] Closed socket 9 (AF_INET6 :: port 6210)
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[INFO ] xrdp_wm_log_msg: login successful for display 10
Jun 17 15:55:42 ubuntu xrdp-sesman[1353]: (1353)(281473614072064)[DEBUG] Closed socket 8 (AF_INET6 ::1 port 3350)
Jun 17 15:55:42 ubuntu xrdp-sesman[18428]: (18428)(281473614072064)[INFO ] calling auth_start_session from pid 18428
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[DEBUG] xrdp_wm_log_msg: started connecting
Jun 17 15:55:42 ubuntu xrdp-sesman[18428]: pam_unix(xrdp-sesman:session): session opened for user ubuntu by (uid=0)
Jun 17 15:55:42 ubuntu systemd-logind[1273]: New session c7 of user ubuntu.
Jun 17 15:55:42 ubuntu systemd[1]: Started Session c7 of user ubuntu.
Jun 17 15:55:42 ubuntu xrdp-sesman[18428]: (18428)(281473614072064)[DEBUG] Closed socket 7 (AF_INET6 ::1 port 3350)
Jun 17 15:55:42 ubuntu xrdp-sesman[18428]: (18428)(281473614072064)[DEBUG] Closed socket 8 (AF_INET6 ::1 port 3350)
Jun 17 15:55:42 ubuntu xrdp-sesman[18430]: (18430)(281473614072064)[INFO ] /usr/lib/xorg/Xorg :10 -auth .Xauthority >
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[INFO ] lib_mod_log_peer: xrdp_pid=18427 connected to X1>
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[DEBUG] xrdp_wm_log_msg: connected ok
Jun 17 15:55:42 ubuntu xrdp-sesman[18428]: (18428)(281473614072064)[CORE ] waiting for window manager (pid 18429) to>
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[DEBUG] xrdp_mm_connect_chansrv: chansrv connect success>
Jun 17 15:55:42 ubuntu xrdp[18427]: (18427)(281473264242704)[DEBUG] Closed socket 16 (AF_INET6 ::1 port 37930)
Jun 17 15:55:43 ubuntu dbus-daemon[18477]: [session uid=1000 pid=18475] AppArmor D-Bus mediation is enabled

В прошлой статье, я рассказал как развернуть XRDP, как подключиться к Ubuntu средствами RDP из среды windows или любой другой.  Но о ужас! Вы можете столкнуться с пустым черным экраном вместо фона рабочего стола Ubuntu. Лично я столкнулся с данной проблемой. Ничего страшного!

«Достаточно одной таблэтки…»

Решение довольно простое. Откройте Ubuntu и отредактируйте /etc/xrdp/startwm.sh сценарий.

Для этого в терминале набираем:

$ sudo vim /etc/xrdp/startwm.sh       (можете вместо «vim» использовать «nano«)

Теперь нам надо добавить пару строк перед test:

unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR

Далее сохраняем, нажав ctrl+O и нажимаем ENTER. (если вы в NANO)  В vim редакторе — :wq
(:Как запомнить: write to disk and quit)

Далее перезапускаем службу Xrdp:

$ sudo systemctl restart xrdp

Ну что! Теперь подключаемся заново! 

Главное помнить пароль! 

«―Пароль старый — «Черт побери!?
―Черт побери!
―А он точно с теплохода «Михаил Светлов»?
―Нам сообщили так.
―Теплоход через час уйдет!
―/* Выразительно выражается не по-нашему: пинто. пастуццо чачача трукаделло пиц!*/Заткнись!
―/* Еще более выразительно выражется: порко мадонна ди ум бесто перь бако кастелла де мембрано хемаро инчесо сарвело чец хан дураля! */ Простите, погорячился…

―Дальше следует непереводимая игра слов с использованием местных идиоматических выражений.»

Далее еще раз вводите пароль:

ииииииии.

Ура! Все работает! Можете приступать к работе!

«Как говорит наш дорогой шеф, «Куй железо не отходя от кассы»!»»

It’s not worth it — there is a better & less painful solution:

X11VNC

I spent at least 8 hours fighting the battle to connect from Windows 10 to Ubuntu 16 via xrpd and Windows rdp. I tried endless «solutions» that I found posted all over the web. I made progress, but never managed to fully solve it. Even if I had, though, it seems that this is weak setup anyway, because:

  • You can’t use the Unity Desktop, so your rdp has connect you to a completely different OS UI than what you would use as the Ubuntu standard.
  • You can’t be logged on already with that account. So if you were have a scenerio where sometimes you work directly on the Ubuntu machine, and sometimes you connect remotely, you’d have to be sure to log out to allow for that remote connection.
  • From what’ve read, once you have this, you have also fight a battle to get a «re-connection» mechanism working to re-enter an rdp session you left.
  • You have to manually enter credentials every time you log on. There is no way to save them on the client end and just connect instantly.

I’ve used a pile of different remote connection interfaces, and overall nothing beats the ease and quality of Windows RDP yet to my mind. A such, I was pretty fixated on using that. After fighting this long enough though, and finally throwing in the towel, I found that VNC pretty much works just as well in this context.

As I said initially, on the Ubuntu side I used «x11vnc». Refer to these directions for details on getting that fully setup:

How to setup x11vnc to access with graphical login screen?

On the Windows side, I used RealVNC Viewer: https://www.realvnc.com/en/connect/download/viewer/, which I already had installed and setup for a remote connection to a Mac on my LAN as well.

With this setup, I have NONE of the weaknesses outlined above. Further, in full screen mode, the display is just as good as it would be naturally. I see 0 lag, 0 blurring. I have a bi-directional clipboard working without any effort to get that…

In theory, you are supposed to be able to stack xrpd and x11vnc. See: http://c-nergy.be/blog/?p=5956
I tried that too, just to see if I could get it to work. I had no luck with that either. So I just said the hell with xrpd in the end, uninstalled it, and rolled back all the changes I made to my machine fighting with it (or least so of them).

Unless you have a major reason that you NEED RDP instead of VNC, I strongly recommend going this route I’ve described instead.

Вам понадобилось установить на свой сервер удаленный рабочий стол. Простейший вариант — xrdp. Но вот после установки и попытки соединения появляется ошибка: connecting to 127.0.0.1 5911 error — problem connecting.
Ошибка возникает из-за отсутствия пакета tigervnc-server, который не входит в зависимости при установке самого xrdp.
Удаленный рабочий стол Xrdp error problem connecting
Пройдемся по всем шагам по порядку. У Вас стандартная установка CentOS 6 с рабочим столом GNOME. Устанавливаем xrdp со всеми зависимостями.

yum y install xrdp
Далее установим потерявшийся пакет.

yum y install tigervncserver
Разрешим входящие соединения в iptables для xrdp.

iptables A INPUT p tcp m tcp dport 3389 j ACCEPT
Включим свежеустановленный сервис и добавим его в автозагрузку.

service xrdp start

chkconfig level 35 xrdp on

Теперь можно, например, в Windows 7, выбрав Подключение к удаленному рабочему столу, соединиться с сервером.
Удаленный рабочий стол Xrdp error problem connecting
Или в терминале другого компьютера с Linux можно набрать следующую команду

rdesktop g 1280×1024 192.168.1.244
где -g — параметр, задающий размер окна, открывающегося удаленного рабочего стола.
В обоих вариантах увидим приглашение для ввода логина и пароля.
Удаленный рабочий стол Xrdp error problem connecting
И далее сам рабочий стол удаленного сервера CentOS 6.
Удаленный рабочий стол Xrdp error problem connecting

Удаленный рабочий стол Xrdp error problem connecting

Содержание

  1. Как установить Xrdp на Ubuntu 20.04
  2. Предпосылки
  3. Шаг 1: Установите Xrdp на Ubuntu 20.04
  4. Установите Xrdp на Ubuntu
  5. Шаг 2: Настройка Xrdp на Ubuntu 20.04
  6. Шаг 3: Доступ к удаленному рабочему столу Ubuntu с помощью RDP клиента
  7. Как исправить черный экран XRDP в Ubuntu
  8. Заключение
  9. ubuntu xrdp удаленный рабочий стол
  10. Как настроить xRDP-сервер на Ubuntu 18.04
  11. Что такое xRDP?
  12. Установка и настройка
  13. Подключение к рабочему столу
  14. Установка XRDP в Ubuntu 20.04
  15. Что такое XRDP
  16. Установка XRDP на Ubuntu 20.04
  17. Шаг 1. Поиск пакета
  18. Шаг 2. Обновление системы
  19. Шаг 3. Установка пакетов
  20. Шаг 3. Настройка службы XRDP
  21. Шаг 4. Поиск IP адреса
  22. Шаг 5. Проверка подключения
  23. Ошибка черный экран XRDP в Ubuntu
  24. Выводы
  25. Удаленный рабочий стол Ubuntu

Как установить Xrdp на Ubuntu 20.04

Xrdp — это аналог протокола Microsoft Remote Desktop Protocol (RDP). Если xrdp установлен в системе Linux, пользователи могут удаленно получить доступ к рабочему столу Linux с помощью RDP-клиента. Все это я покажу в этой статье. Его можно совершенно бесплатно скачать и использовать.

Без лишних слов давайте давайте приступим к установке Xrdp на Ubuntu Desktop 20.04 и 18.04.

Предпосылки

В этом руководстве предполагается, что у вас уже установлена Ubuntu 20.04 или Ubuntu 18.04. Если у вас есть минимальная установка без графического интерфейса – то рекомендуется установить среду рабочего стола или GNOME.

Чтобы установить среду рабочего стола Ubuntu, выполните команду:

Шаг 1: Установите Xrdp на Ubuntu 20.04

Для начала запустите терминал и выполните следующую команду для установки Xrdp в вашу систему.

Установите Xrdp на Ubuntu

Служба Xrdp запускается автоматически после установки. Для проверки работоспособности сервиса XRDP, выполнив команду:

Данные которые вы видите на рисунке подтверждают, что сервис XRDP работает.

Шаг 2: Настройка Xrdp на Ubuntu 20.04

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

Xrdp прослушивает порт 3389 и если вы находитесь за брандмауэром UFW, то вам нужно открыть порт. Это делается для того чтобы разрешить входящий трафик от клиентов RDP. В этом примере я разрешу трафик на порт 3389 из всей моей подсети в систему Ubuntu.

$ sudo ufw allow from 192.168.2.0/24 to any port 3389

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

Шаг 3: Доступ к удаленному рабочему столу Ubuntu с помощью RDP клиента

На этом шаге мы попробуем подключится к системе Ubuntu из Windows 10. В этом нам поможет стандартный клиент удаленного рабочего стола (RDP). Но прежде чем продолжить, убедитесь что вы вышли из Ubuntu 20.04. Так как Xrdp поддерживает только один Xsession.

В окне которое требует проверку удаленной системы, игнорируйте ошибки сертификата и нажмите на кнопку «Далее«.

proverka podlinnosti udalennoj sistemy ubuntuПроверка подлинности удаленной системы Ubuntu

На странице входа в систему Xrdp введите свои учетные данные и нажмите кнопку «Ok«.

vvedite svoi uchetnye dannye dlja v hoda v ubuntu cherez rdpВведите свои учетные данные для в хода в Ubuntu через RDP

Примечание: в этот момент Вы можете столкнуться с пустым черным экраном вместо фона рабочего стола Ubuntu. Лично я столкнулся с таким багом. После долгих мучений, я нашел вариант как исправить этот баг.

Как исправить черный экран XRDP в Ubuntu

Решение довольно простое. Откройте Ubuntu и отредактируйте /etc/xrdp/startwm.sh сценарий.

Добавьте эти строки непосредственно перед строками, которые тестируют и выполняют Xsession, как показано на скриншоте ниже.

unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR

Далее требуется сохранить файл и выйдите. Не забудьте перезапуститm службу Xrdp.

Затем повторно подключитесь. После первоначальной аутентификации вам потребуется пройти повторную аутентификацию, как показано на рисунке.

auntifikacija polzovateljaАутентификация пользователя XRDP

Введите свои учетные данные и нажмите кнопку «аутентификация«.После проделанного в перейдете на экран стола удаленной системы Ubuntu.

udalennyj dostup k rabochemu stolu ubuntuУдаленный Доступ К Рабочему Столу Ubuntu

Заключение

Ну вот и все, в этой статье вы узнали Как установить Xrdp на Ubuntu 20.04. Это совсем не сложно и это может сделать даже новичок Linux. Если у вас что-то не получилось или вы нашли ошибку, оставьте комментарий.

Источник

ubuntu xrdp удаленный рабочий стол

Проблемы со стандартным удаленным рабочим столом в Ubuntu 18.04: отсутствует подключение, черный экран, выкидывает при подключении и/или сообщения, типа «Could not acquire name on session bus».

Настройка удаленного рабочего стола в Убунту — лечение:

Удаление xrdp:
# sudo apt-get remove xrdp

Перегрузились:
# sudo reboot

Обновились:
# sudo apt-get update
# sudo apt-get upgrade

Установка xrdp:
# sudo apt-get install xrdp

Ставим mate-core — это рабочая среда MATE Desktop:
# sudo apt-get install mate-core

Добавляем конфиг:
# sudo echo mate-session>

Если запущен файрволл — добавляем исключение, принимать подключения на порт 3389 (по-умолчанию):
# sudo ufw allow 3389/tcp

Перегружаем:
# sudo reboot

И пробуем пользоваться удаленным рабочим столом. Но, бывает иногда и так, что этих шагов оказывается недостаточно.

Тогда ищем файл /etc/xrdd/startwm.sh и в нем комментируем строки (вероятно, будут последними):

и вместо них добавляем другие две строчки:

unset DBUS_SESSION_BUS_ADDRESS
exec mate-session

И пробуем еще раз. Уже должно все работать.

Дополнение.

Кстати, желательно — сменить порт 3389 по-умолчанию. Для этого необходимо редактировать файл /etc/xrdp/xrdp.ini. Найти строчку:

и поменять 3389 на новое значение. И не забыть при этом:

# sudo ufw allow НОВЫЙ_НОМЕР_ПОРТА/tcp

Кроме того, если удаленный рабочий стол ubuntu находится в локалке дома или другом безопасном месте, то можно упростить себе задачу и в окне авторизации оставить себе — набирать только пароль, забив имя пользователя в конфиге /etc/xrdp/xrdp.ini в секции [Xorg]:
username=имя_пользователя

Если же к компьютеру с удаленным рабочим столом есть доступ из Интернет, то запоминать имя пользователя — не стоит, это небезопасно. Злоумышленнику труднее будет подбирать пару неизвестных (логин/пароль), чем одно неизвестное (только лишь один пароль).

Max02.Ru Ubuntu RDP

ubuntu xrdp настройка удаленного рабочего стола mate-core

Источник

Как настроить xRDP-сервер на Ubuntu 18.04

В этой инструкции описано как настроить сервер xRDP для подключения к Ubuntu 18.04 с легковесным окружением Xfce по протоколу RDP. Это может быть очень удобно если вам нужно из Windows зайти на линукс систему используя графический интерфейс.

Что такое xRDP?

xRDP — это бесплатная реализация RDP (протокола удаленного рабочего стола) Microsoft с открытым исходным кодом, которая позволяет операционным системам, отличным от Microsoft Windows (таким как Linux и BSD), предоставлять полностью функциональный RDP-совместимый удаленный рабочий стол.

rocket img

cta

Установка и настройка

Подключитесь к вашему ubuntu серверу по протоколу SSH и выполните обновление системы:

sudo apt-get update

Установите и включите утилиту xRDP:

sudo apt-get install xrdp
sudo systemctl enable xrdp
sudo systemctl restart xrdp

xrdp1

Установите окружение xfce:

sudo apt-get install xfce4 xfce4-terminal

Откройте порт RDP для возможности удаленного подключения:

sudo ufw allow 3389/tcp

Перезагрузите xRDP сервер, чтобы изменения вступили в силу:

sudo /etc/init.d/xrdp restart

Подключение к рабочему столу

Если вы не знаете IP адрес Ubuntu сервера, его можно посмотреть введя команду:

xrdp2

В нашем случае это будет 10.0.0.2. Для подключения откройте приложение Windows Подключение к удаленному рабочему столу(mstsc.exe). Введите IP-адрес сервера и нажмите Подключить:

При подключении появится предупреждение безопасности. Нажмите Да:

xrdp4

В открывшемся окне в качестве сессии выборе Xorg, введите логин и пароль для пользователя, нажмите OK:

xrdp5

В результате произойдет подключение к рабочему столу.

Рабочий стол окружения Xfce:

xrdp6

Если при подключении к xrdp показывает черный экран необходимо зайти в папку /etc/xrdp, и внести изменения в файл startwm.sh.

sudo nano /etc/xrdp/startwm.sh

unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR

test –x /etc/X11/Xsession && exec /etc/X11/Xsession

xrdp7

После внесения изменений необходимо перезапустить службу XRDP:

sudo systemctl restart xrdp

Теперь можно снова запустить mstsc.exe и подключиться к нашему ubuntu серверу.

Источник

Установка XRDP в Ubuntu 20.04

В настоящее время существует множество вариантов удалённого подключения к рабочим местам. Кроме того, стоимость аренды виртуальной машины хорошей производительности в облаке в месяц, сопоставима с ценой кружки хорошего кофе. Такие удалённые виртуальные машины удобно использовать с офисных слабых компьютеров, из поездок с ноутбуком и слабым Интернет-соединением, запускать на них длительные задачи, как например перепроведение документов в 1С, скачивание больших файлов.

Ещё можно организовать общий сервер на базе Ubuntu 20.04 в облаке или на мощном компьютере и совместно использовать его ресурсы с помощью удалённого доступа. В этой статье мы рассмотрим как выполняется установка XRDP Ubuntu 20.04.

Что такое XRDP

XRDP – это реализация протокола удалённого рабочего стола Microsoft (RDP) с открытым исходным кодом, которая позволяет графически управлять удалённой системой.

В отличие от коммерческого продукта, XRDP в Linux позволяет работать одновременно с одним компьютером или виртуальной машиной неограниченному числу пользователей, что позволяет активно использовать XRDP для разворачивания терминальных серверов на базе Ubuntu 20.04.

Установка XRDP на Ubuntu 20.04

Шаг 1. Поиск пакета

В Ubuntu 20.04 можно получить установить программу с помощью утилиты apt. Давайте установим XRDP из репозитория Ubuntu 20.04. Для этого, с помощью терминала, вы можете проверить, есть ли пакет xrdp в хранилище пакетов Ubuntu 20.04:

sudo apt searh xrdp

ustanovka xrdp v ubuntu 20.04 1

Шаг 2. Обновление системы

Такой пакет есть, поэтому вы можете, предварительно обновив систему, простым путём установить xrdp на Ubuntu 20.04. Обновляем и перезагружаем для принятия изменений в ОС:

sudo apt –y update && sudo apt –y upgrade && sudo reboot

ustanovka xrdp v ubuntu 20.04 2

Шаг 3. Установка пакетов

После перезагрузки можно устанавливать XRDP из репозитория Ubuntu 20.04

sudo apt install xrdp

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

ustanovka xrdp v ubuntu 20.04 3

Шаг 3. Настройка службы XRDP

В связи с особенностями системы Ubuntu 20.04, необходимо ввести пользователя xrdp, от имени которого работает XRDP в системе, в группу ssl-cert. Выполните команду:

sudo adduser xrdp ssl-cert

Затем добавьте службу xrdp в автозапуск и перезапустите её для применения изменений:

sudo systemct enable xrdp

sudo systemctl restart xrdp

ustanovka xrdp v ubuntu 20.04 4

sudo systemctl status xrdp

Если результат выполнения команды выглядит так, как на скриншоте, то все прошло успешно. В финале предоставьте доступ из внешней сети к порту 3389 в файрволле Ubuntu 20.04:

sudo ufw allow from 192.168.2.0/24 to any port 3389

sudo ufw allow 3389

Шаг 4. Поиск IP адреса

С помощью любого клиента RDP можно подключаться по имени компьютера, возможно для этого нужно дополнительно настроить DNS. Лучше получить доступ по IP-адресу сервера, на котором установлен XRDP. Чтобы узнать IP-адрес, необходимо в терминале ввести команду:

ustanovka xrdp v ubuntu 20.04 5

На моём скриншоте обведён IP-адрес виртуальной машины с Ubuntu 20.04, который автоматически присвоен сетевому интерфейсу eth1. Сетевых интерфейсов может быть несколько, у каждого из них могут быть свои IP-адреса, к которым так же можно подключаться по RDP.

Шаг 5. Проверка подключения

На скриншоте ниже можно видеть окно для входа Xorg, куда требуется ввести логин, в моем случае user и пароль, в моем случае 1. Для смены раскладки клавиатуры в Ubuntu 20.04 используется комбинация клавиш Super+Пробел (с моей клавиатуры клавиши Windows + Пробел). Если в окне раскладка не меняется, и вводится пароль не на том языке, то необходимо отключить клиент RDP, закрыть его, поменять язык в Windows на нужный и снова подключиться к удалённой машине.

ustanovka xrdp v ubuntu 20.04 6

Настройка XRDP Ubuntu 20.04 практически завершена.

Ошибка черный экран XRDP в Ubuntu

ustanovka xrdp v ubuntu 20.04 7

Для исправления такой ошибки необходимо внести изменение в файл, расположенный в папке /etc/xrdp, запускающий каждую сессию удалённого доступа XRDP с именем startwm.sh:

ustanovka xrdp v ubuntu 20.04 8

Внесите изменения в файле startwm.sh:

unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR

test –x /etc/X11/Xsession && exec /etc/X11/Xsession

как показано на скриншоте. Это обнуляет системные переменные, сформированные предыдущими сеансами. В результате, мы избавляемся от чёрного экрана при подключении по RDP к Ubuntu 20.04

ustanovka xrdp v ubuntu 20.04 9

После внесения изменений необходимо перезапустить службу XRDP:

sudo systemctl restart xrd

И можно выполнить подключение к Ubuntu по RDP:

ustanovka xrdp v ubuntu 20.04 10

ustanovka xrdp v ubuntu 20.04 12

Выводы

Сегодня мы выяснили как подключиться к Ubuntu по RDP и настроить XRDP сервер. Клиенты RDP существуют для любого устройства: телефона, планшета, ноутбука, любого компьютера. Местонахождение этой виртуальной или реальной машины с Ubuntu 20.04 теперь не играет никакой роли, лишь бы был доступ к ней через интернет и установлен и настроен XRDP.

Источник

Удаленный рабочий стол Ubuntu

Доброго времени суток дорогие читатели. Ранее я писал о подключении к удаленному рабочему столу Linux. В примере использовалось подключение рабочих столов KDE и XFCE. Сегодня рассмотрим как подключить удаленный рабочий стол Ubuntu который установлен в системе.

Подключиться к рабочему столу Ubuntu можно с использованием VNC либо RDP. Я выбрал второй, благодаря тому что RDP клиент установлен во всех WIndows системах он очень популярен. Для подключения к Ubuntu по RDP необходимо установить ПО XRDP.
Тестировать подключение к рабочему столу я буду на Ubuntu 20.04. Пакет XRDP также последний на данный момент.

Установка XRDP

Установка XRDP на Ubuntu делается командой

В процессе установки будет автоматически сгенерирован сертификат для шифрования RDP соединения.

Надпись ssl_gen_key_xrdp ok свидетельствует о том что процесс генерации сертификата прошел успешно.

Добавим сервис xrdp в автозагрузку

Проверим статус xrdp

Статус active говорит о том что сервис запущен и работает.

Настройка XRDP
Настроим брандмауэр

Необходимо открыть порт в брандмауэре. Давайте проверим включен ли он вообще

Если status указан inactive советую включить брандмауэр. Делается это командой

Только будьте осторожны если подключены удаленно, например по SSH, т.к. порт может быть закрыт.

По умолчанию протокол RDP использует порт 3389. Откроем данный порт используя брандмауэр UFW

Теперь любой клиент из подсети 172.16.169.0 сможет подключиться к Ubuntu используя протокол RDP.

Попросим брандмауэр перечитать правила доступа для применения настроек

Посмотрим статус UFW

Разрешим использовать сертификат

Добавим пользователя xrdp в группу ssl-cert для возможности использования ранее созданного сертификата.

Перезапустим xrdp чтобы применить изменения

Подключение к рабочему столу Ubuntu

Проверим подключение к рабочему столу Ubuntu используя встроенный в Windows клиент удаленного рабочего стола.

Для подключения нам потребуется имя сервера, либо IP адрес и логин/пароль для входа. Узнать IP адрес в Ubuntu можно так

Переходим к подключению. Запустим клиент удаленного рабочего стола, в Windows он называется: Подключение к удаленному рабочему столу. Вводим IP адрес и нажимаем Подключить

Система будет выводить предупреждения и возможно задавать вопросы, со всем соглашаемся. И в открывшемся окне вводим Username и Password от входа в Ubuntu.

login

Смена раскладки клавиатуры происходит клавишами Windows+Пробел. Если раскладка не меняется, необходимо закрыть окно Удаленного подключения, поменять раскладку и снова подключиться.

С большей долей вероятности при первом подключении будет черный экран. Как это исправить читаем далее.

Источник

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Ошибка при подключении usb к virtualbox
  • Ошибка при перемещении файла или папки разрушительный сбой