xrdp в openSuSE13.2

Доброго времени суток всем.
Работал на компах xrdp, работал, а тут собираю большой сервер, ставлю на него 13,2, обновляю, ставлю стандартный xrdp 0,7,5,2. Подкидываю конфиги с рабочего сервера - и не пашет.
Выводи форму ввода, выводит, мол логин ОК, VNC started connecting
VNC connecting to 127.0.0.1 5910
VNC error - problem connecting
и всё.
Странно. Идй на download.opensuse.org, качаю версию 0.9, интересная версия, кстати, более лучше смотрится и работает (это я ещё на SLE12 наигрался, благо там xrdp идёт в стандартном репозитории). Поставил, даже прописалось в сервисы, в отличии от 0,7. Но всё то же самое.
Постави себе на комп 0,7 из того же пакета, подкидываю рабочие конфиги, что и всем, запускаю - работает.
Несколько раз удалял/ставил эти 2 версии, целый день лазаю по форумам - безрезультатно.
xrdp.ini:

[globals]
bitmap_cache=yes
bitmap_compression=yes
port=3389
crypt_level=low
channel_code=1
max_bpp=16
fork=no
tcp_nodelay=yes
tcp_keepalive=no

[Logging]
LogFile=xrdp.log
LogLevel=DEBUG
EnableSyslog=1
SyslogLevel=DEBUG

[channels]
rdpdr=true
rdpsnd=true
drdynvc=true
cliprdr=true
rail=true

[xrdp1]
name=Xvnc
lib=libvnc.so.0
username=ask
password=ask
ip=127.0.0.1
port=-1

[xrdp2]
name=X11rdp
lib=libxup.so.0
username=ask
password=ask
ip=127.0.0.1
port=-1
xserverbpp=16
code=10

Здесь я пробовал ставить “code=10”, “code=20” в [xrdp1] в первом случае - тоже самое, во втором - чёрный экран и всё.

sesman.ini:
Globals]
ListenAddress=127.0.0.1
ListenPort=3350
EnableUserWindowManager=1
UserWindowManager=startwm.sh
DefaultWindowManager=startwm.sh

[Security]
AllowRootLogin=0
MaxLoginRetry=4
TerminalServerUsers=tsusers
TerminalServerAdmins=tsadmins

[Sessions]
X11DisplayOffset=10
MaxSessions=10
KillDisconnected=0
IdleTimeLimit=0
DisconnectedTimeLimit=0

[Logging]
LogFile=xrdp-sesman.log
LogLevel=DEBUG
EnableSyslog=1
SyslogLevel=DEBUG

[X11rdp]
param1=-bs
param2=-ac
param3=-nolisten
param4=tcp
param5=-uds

[Xvnc]
param1=-bs
param2=-ac
param3=-nolisten
param4=tcp
param5=-localhost
param6=-dpi
param7=96

13,1 ставить на это железо несколько не вариант, ибо 13,1 не понимает, что там за железо и видеодрайвер нормально не встаёт, видимо из-за древности пакетов и ядра.
У меня стоит 13,2, обновлённая с 13,1. На сервере сделан zypper update. Так что всё последнее. На компе тоже сделан update не так давно.
Конфиг точно рабочий, ибо я его ипользую на своём компе + на кучке серверов ещё с 0,4 версии xrdp. Нормально работал и на убунте, и на Дебиане, и на openSuSE 13.1.
В чём ещё может быть трабл?
Кстати да, лог самого xrdp выдаёт следующее:
VNC Error after security negotiation
VNC error before sending share flag
VNC error before recieving server init
… pixel format
… name length
… name
Понятно, что этого е должно быть, но не понятно, откуда у этих ошибок растут ноги.

Да, после попытки входа никакой процессов Xvnc в запущенных процессах не появляется, точно так же как и не появляется никаких xrdp-chansrv, xrdp-sessvc.
До них судяпо всему не доходит очередь. Вот только в где-бы ещё посмотреть, почему.

Запущенный по умолчанию AppArmor?

Выключен.
Брэндмауер, на время настройки, - выключен.
Xvnc сессия руками создаётся. При созданной руками не показывает такую ошибку, но показывает только чёрный экран и KRDC повисает намертво и не отдаёт ни мышь, ни клаву. Приходится уходить в Ctrl+Alt+F1 и оттуда грохоть KRDC.
Есть ощущение, что где-то с 13,1 поменялся вызов чего-то, и теперь xrdp не может запустить всё.

как предположение, что-то не так с правами у сервера vnc, где-нибудь в polkit и/или новом systemd.

это в journald или отдельно?

VNC Error after security negotiation
VNC error before sending share flag
VNC error before recieving server init
… pixel format
… name length
… name

Это пишется в /var/log/xrdp.log [DEBUG] уровень пришлось включить, чтобы увидеть. По умолчанию во всех .ini чквз кто-то выставил уровень ERROR.

И в journalctl тоже это есть:

[INFO ] A connection received from: 127.0.0.1 port 46716
[INFO ] scp thread on sck 8 started successfully
[DEBUG] returnvalue from xrdp_mm_connect 0
[INFO ] ++ created session (access granted): username user, ip 19
[INFO ] starting Xvnc session…
[INFO ] An established connection closed to endpoint: NULL:NULL - soc
[INFO ] An established connection closed to endpoint: NULL:NULL - soc
[INFO ] An established connection closed to endpoint: NULL:NULL - soc
[INFO ] An established connection closed to endpoint: 127.0.0.1:46716
[INFO ] An established connection closed to endpoint: NULL:NULL - soc
[INFO ] An established connection closed to endpoint: 127.0.0.1:46716
[INFO ] Xvnc start:Xvnc :10 -geometry 1920x1080 -depth 24 -rfbauth /h
[INFO ] starting xrdp-sessvc - xpid=13581 - wmpid=13580
pam_unix(xrdp-sesman:session): session opened for user user by (uid=0)
pam_unix(xrdp-sesman:session): session closed for user user
[DEBUG] VNC Error after security negotiation
[DEBUG] VNC error before sending share flag
[DEBUG] VNC error before receiving server init
[DEBUG] VNC error before receiving pixel format
[DEBUG] VNC error before receiving name length
[DEBUG] VNC error before receiving name
[DEBUG] xrdp_mm_module_cleanup
[DEBUG] VNC mod_exit
[INFO ] An established connection closed to endpoint: NULL:NULL - socket: 13
[INFO ] An established connection closed to endpoint: 127.0.0.1:3350 - socke
[INFO ] An established connection closed to endpoint: 192.168.0.1:47829 -
[DEBUG] xrdp_mm_module_cleanup

Может быть. Как это проверить?

И так, запускаю xrdp и xrdp-sesman в режиме -ns, смотрим xrdp:

Loaded module ‘libvnc.so’ ok, interface size 4016, version 2
VNC started connection
VNC connecting to 127.0.0.1 5910
… VNC Errore after security negociation
и пошло…(

Смотрим, что в этот момент происходить в xrdp-sesman:

Connections: accepted: 127.0.0.1::57908
xrdp-sessvc: VM is dead (waitpid said 12902, errno in 0) exiting…
xrdp-sessvc: stoppong channel server
Короче всё стоп, клин, и экзит.

То же самое, только предварительно создана сессия руками, той же коммандой, что и её создаёт xrdp:
Всё нормально, нормально, много-много текста о том, что всё ОК, но потом:
[ERROR] xrdp_mm_connect_chansrv: connect failed trying again…
И эта строка несколько раз повторяется и чёрный экран.

Из этого можно судить, что у xrdp почему-то не получается нормально создать XVNC окружение. А если оно есть, то оно почему-то не может подгрузить рабочее окружение.
startwm.sh пробовал в 2-х конфигарациях, в старой, где прописано SESSIONS=“gnome-session startkde” и перебор этого списка. И новая версия, которая шла с 0,9 там wm_start() нескольк другой:
wm_start()
{
if -r /etc/default/locale ]; then
. /etc/default/locale
export LANG LANGUAGE
fi
#стёр всё. что не относится к suse
#suse
if -r /etc/X11/xdm/Xsession ]; then
. /etc/X11/xdm/Xsession
exit 0
fi
xterm
}
Разницы как-то нет.

Фуф. Проблема решилась.

Подменил новый /etc/xrdp/startwm.sh из 0,9 xrdp на startwm.sh из версии 0,7.

Кто-нибудь, куда-нибудь повесьте это предупреждение, а то народ поставит 0,9 и будет как я сидеть 2 дня выяснять.

А на рабочем компе всё работало, так как там был startwm.sh из версии 0,7, если не из 0,4.
Система не даёт прикрепить файлики. Так бы прикрепил оба файлика для сравнения. Если будет время посмотрю, что там за разница, из-за которой оно всё пошло крахом.
Но и тот и тот файлик были взяты из пакетов, которые выдаёт download.opensuse.org по запросу xrdp.

Итого, для запуска xrdp 0.9 на openSuSE 13.2 нужно слить пакет с download.opensuse.org, или добавить репозиторий X11: и поставить с него, подкинуть xrdp.ini, sesman.ini, startwm.sh в /etc/xrdp/. Всё. Работает.

Мне такой хак не помог - не подключается.

А пам правился? Там тоже надо в /ect/pam.d/xrdp-sesman
заменить на

#%PAM-1.0
auth       required	pam_unix.so shadow nullok
account    required	pam_unix.so