Проблемы с XDRP и Windows Remote Desktop в Fedora 25

Вопрос или проблема

(Примечание: это работало на Fedora 23)

Мои коллеги и я пытаемся использовать Windows Remote Desktop Connection для подключения к машинам, работающим под управлением Fedora 25. Мы используем XRDP как наш VNC-провайдер и используем Windows 7.

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

Я внес следующие изменения в файл xrdp.ini:

allow_channels=false
#allow_channels=true

Это позволяет мне подключаться к Fedora-машине через Remote Desktop. К сожалению, это работает только один раз. При второй попытке подключиться это не удается. После сбоя, выполнение ps -eaf | grep xrdp показывает ДВА экземпляра xrdp-sesman --nodaemon, работающих в системе.

Вторая проблема: после входа на машину Fedora через удаленный рабочий стол, я не могу войти на нее локально из-за сообщения об ошибке “не удалось получить имя в шине сеансов”. Я переключился на терминал, вошел как root и выполнил systemctl restart xrdp, но все равно не смог войти как обычный пользователь. (Примечание для себя: отключить вход root, как только это исправлю).

Итак, у меня два вопроса:

  1. Как мне исправить ошибку, из-за которой я не могу войти больше одного раза (я не знаю, какой xrdp-sesman завершить, и не знаю, приведет ли это к сбою xrdp).

  2. Как мне войти локально И через удаленный рабочий стол одновременно?

Спасибо за любую помощь.

обновление : добавлен текст сообщения об ошибке Джейсон

Похоже, я решил проблему.

Фокус был в том, чтобы внести несколько изменений в /etc/xrdp/xrdp.ini, создать файл .Xinitrc, чтобы указать, какой менеджер сеансов использовать, а затем создать файл XWrapper.config.

Изменения в xrdp.ini:

autorun=Xorg
max_bpp=16

Файл .Xinitrc:

#!/bin/sh
#
# ~/.xinitrc
#
# Выполняется startx (запустите ваш оконный менеджер отсюда)

if [ -d /etc/X11/xinit/xinitrc.d ]; then
  for f in /etc/X11/xinit/xinitrc.d/*; do
    [ -x "$f" ] && . "$f"
  done
  unset f
fi

# exec enlightenment_start
# exec i3
# exec mate-session
# exec xmonad
# exec startlxqt
# exec startlxde
# exec awesome
# exec bspwm
# exec gnome-session
# exec gnome-session --session=gnome-classic
# exec startkde
# exec startxfce4
# exec startfluxbox
# exec openbox-session
exec cinnamon-session
# exec pekwm
# exec catwm
# exec dwm
# exec startede
# exec icewm-session
# exec jwm
# exec monsterwm
# exec notion
# exec startdde       
# deepin-session

Наконец, я создал файл Xwrapper.config с одной строкой:

allowed_users=anybody

На этом этапе я смог войти через Windows Remote Desktop, изменив поле “session” с Xvnc на Xorg.

Ответ или решение

Решение проблем XDRP и Windows Remote Desktop в Fedora 25

Введение и осознание проблемы:

Вы и ваши коллеги столкнулись с проблемами подключения через Windows Remote Desktop к компьютерам, работающим на Fedora 25 с использованием XRDP в качестве VNC-провайдера. Изначально вы получали черный экран при подключении с Windows 7, после чего соединение прерывалось. Хотя этот процесс работал на Fedora 23, переход на Fedora 25 вызвал новые сложности.

Этап 1: Предварительные корректировки

Для начала, вы внесли изменение в файл xrdp.ini, отключив каналы:

allow_channels=false

Эта настройка позволила вам подключиться к Fedora через Remote Desktop, но возникла проблема: повторное подключение не удавалось. Анализ процессов показал наличие двух инстанций xrdp-sesman --nodaemon, что усложняло положение.

Этап 2: Решение первой проблемы

Чтобы устранить ошибки с повторным подключением, были внесены следующие изменения в /etc/xrdp/xrdp.ini и создан файл .Xinitrc, которые оказались ключевыми:

Изменения в xrdp.ini:

autorun=Xorg
max_bpp=16

Эти настройки позволяют удостовлетворительно конфигурировать графику и автоматизировать процесс запуска Xorg.

Файл .Xinitrc:

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

#!/bin/sh
if [ -d /etc/X11/xinit/xinitrc.d ]; then
  for f in /etc/X11/xinit/xinitrc.d/*; do
    [ -x "$f" ] && . "$f"
  done
  unset f
fi
exec cinnamon-session

Выбор cinnamon-session обеспечил правильную инициализацию сессии рабочего стола.

Создание Xwrapper.config:

Файл Xwrapper.config был добавлен для управления доступом пользователей:

allowed_users=anybody

Эта конфигурация разрешает любому пользователю доступ, устранения необходимости выделять права определенным пользователям.

Этап 3: Решение второй проблемы

Чтобы обеспечить возможность локального и удаленного входа, необходимо убедиться, что используются разные сессии для каждого метода доступа. При изменении опции "session" с Xvnc на Xorg в процессе подключения через Windows Remote Desktop, проблема была решена.

Заключение

Вы описали последовательность действий, которая позволила устранить представленные проблемы. Эти изменения помогают оптимально использовать Fedora 25 в качестве удаленного сервера, гарантируя возможность комфортного подключения и работы через Windows Remote Desktop.

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

Оцените материал
Добавить комментарий

Капча загружается...