xrdp в ALSE

Сообщения
1
#1
Всем привет.

Есть необходимость создания на базе ALSE 1.7 реализовать терминальный сервер для доступа с виндовых клиентов по XRDP.

Установив пакеты fly-dm и fly-wm и их зависимости (по умолчанию была установлена без графики), подключения работают все отлично, но есть проблема с ошибкой вызванной блокировкой экрана.

Блокировка экрана через интерфейс не выполняется, просто тишина.
При вызове без повышения прав su fly-wmfunc FLYWM_LOCK (
Для выполнения FLYWM_LOCK
нет доступа к FIFO файлу /tmp/fly-wm-:13.0.
Проверьте ваши права на его создание-запись. Если их недостаточно,
попросите администратора удалить этот файл и перезапустите сессию
)

Если проверить права на /tmp/fly-wm:13.0 то вижу что владелец файла другой пользователь под которым выполнялся логин ранее.

Если выполняется блокировка средствами системы (по времени или по событию) или с повышением привилегий получаю в логах ошибку
(
xrdp-sesman[14180]: [WARN ] Window manager (pid 14184, display 13) exited with non-zero exit code 255 and signal 6. This could indicate a window manager config problem
xrdp-sesman[14180]: [INFO ] Calling auth_stop_session and auth_end from pid 14180
xrdp-sesman[14180]: [INFO ] Terminating X server (pid 14185) on display 13
)

Если выполнять под тем пользователем который является владельцем /tmp/fly-wm13.0

то команда fly-wmfunc FLYWM_LOCK выполняется без повышения прав но сессия точно также умирает из за ошибки WM
ru.astralinux.fly-fm.fops[15031]: ICE default IO error handler doing an exit(), pid = 15217, errno = 0
org.freedesktop.Notifications[15031]: ICE default IO error handler doing an exit(), pid = 15230, errno = 2
ru.astralinux.fly-fm.vfs[15031]: ICE default IO error handler doing an exit(), pid = 15139, errno = 0
org.freedesktop.Notifications[15031]: Connection established
xrdp-sesman[14901]: [WARN ] Window manager (pid 14902, display 13) exited with non-zero exit code 255 and signal 6. This could indicate a window manager config problem
xrdp-sesman[14901]: [INFO ] Calling auth_stop_session and auth_end from pid 14901


Идентичный путь установки XRDP в ALCE работает без проблем, и блокировка экрана в том числе.
 

Вложения

oko

New member
Сообщения
1 221
#2
Вам нужно выполнить обязательные требования безопасности или вы хотите функционал блокировки "для успокоения совести"?
Если первый вариант, то идея блокировать рабочий стол юзера в удаленной сессии - плохая идея. Лучше рвите сессию, делайте таймауты неактивности (положим, 1 час сеанса до его завершения на сервере после отключения пользователя) и при следующей сессии заставляйте авторизоваться заново...
Вообще, идея "Linux -RDP- Windows" куда как более правильная, чем "Windows -RDP- Linux". Лучше из nix пробрасывать X-сервер напрямую на Win-машину. Или вообще делать терминальную ферму с VDI и юзать какой-нибудь spice, VNC или поддержку HTML5 прямо в браузере Win-клиента. Там еще многое будет зависить от наличия/необходимости реализации мандатного доступа (потому что в !=0 сессии AstraLinux будет гнать трафик с мандатной меткой в соответствующих IP-заголовках в соответствии с ГОСТ, а Win его тупо не поймет)...
Что же касается приведенной ошибки - пишите в багтрекер РБТ - весьма вероятно наличие бага, при котором не осуществляется очистка файлов предыдущей сессии пользователя. И упирается она именно во Fly-wm, т.е. разработку РБТ, а не кого-то еще...