我会及时更新信息
问题
我在一台旧电脑上使用最近安装的 Lubuntu 20.04.3。我打算通过 xRDP 从 Ubuntu(remmina)和 Windows 10 电脑进行连接,但到目前为止,我无法从任何一台电脑进行连接。
从 Ubuntu 20.04.3 remmina 连接时看到的内容:
- 屏幕 1 显示消息显示 0 登录失败。
从下面的日志中,我明白这只是一个警告,但随后尝试连接显示器 10(或显示器 11,如果已经使用显示器 10 进行 X 连接)成功。
所以我以后只会考虑如何删除显示器 0 的初始尝试,或者如何使其成功。 - 屏幕 2 带有登录提示。
- 短暂的黑屏,然后连接窗口关闭。
我怎样才能解决这个问题?
注意:我认为用户名/密码没有问题。没有特殊字符,也没有大写字母。我可以从 Ubuntu 和 Win 10 毫无问题地 ssh 到该服务器。此外,下面的日志表明这是没问题的。
我迄今为止尝试过
请参阅下文了解具体信息;这些都没有改变结果:
安装所需的软件包:
xrdp
xorgxrdp
xserver-xorg-core
xserver-xorg-input-all
已启用该服务。
添加两行
/etc/xrdp/startwm.sh
如图所示修复 Ubuntu 黑屏. 重新启动服务。删除了证书问题(选项 2这里),然后
sudo adduser xrdp ssl-cert
重新启动服务。再次连接后,remmina 要求我接受证书,我照做了。编辑
/etc/X11/Xwrapper.config
如下这里. 重新启动服务。~/.xorgxrdp.11.log
鉴于(failed to take device: Operation not permitted
)中的错误信息和这解决了类似的问题(尽管不是用 xrdp),我尝试启用 KMS(我了解到radeon
这是驱动程序)$ sudo nano /etc/initram-tools/modules (adding radeon at the end) $ sudo update-initramfs -u $ sudo shutdown -r
按照以下步骤在服务器中注销并进行远程连接这。
我不太确定有几点:
- 这个问题是否与我在客户端使用 Gnome,在服务器上使用另一个 WM 有关?如果是可以,我该如何确认或排除这一点?我该如何解决这个问题?见下文。
- 问题是否与第一次尝试使用显示器 0 有关?如果是这样,我该如何删除该初始尝试,并在第一次尝试中使用可用的显示器(10、11 等)?
- 如果我在家,所有 PC 都连接到同一个路由器,我需要任何 UFW 规则吗?如果需要,设置规则的命令是什么?
- 我应该
/etc/xrdp/xrdp.ini
按照图示进行修改吗这里? - 下面的摘录是否
~/.xsession-errors
表明了下一步该尝试什么?如果是,应该遵循哪些命令? - 线路是
[ERROR] g_tcp_bind(9, 6010) failed bind IPv6 (errno=98) and IPv4 (errno=22)
解决方案的关键吗?如果是,应该遵循哪些命令? - 我可以在没有 VNC 服务器的情况下执行此操作吗?(我会尽可能降低对服务器的需求,因为它是一台旧电脑)。这和这提及 VNC 服务器作为一项要求。
具体信息
在防火墙上
$ sudo ufw status verbose
Status: inactive
在包裹上
$ dpkg -l | grep xrdp
ii xorgxrdp 1:0.2.12-1 amd64 Remote Desktop Protocol (RDP) modules for X.org
ii xrdp 0.9.12-1 amd64 Remote Desktop Protocol (RDP) server
$ dpkg -l | grep xserver
ii x11-xserver-utils 7.7+8 amd64 X server utilities
ii xserver-common 2:1.20.11-1ubuntu1~20.04.2 all common files used by various X servers
ii xserver-xorg 1:7.7+19ubuntu14 amd64 X.Org X server
ii xserver-xorg-core 2:1.20.11-1ubuntu1~20.04.2 amd64 Xorg X server - core server
ii xserver-xorg-input-all 1:7.7+19ubuntu14 amd64 X.Org X server -- input driver metapackage
ii xserver-xorg-input-libinput 0.29.0-1 amd64 X.Org X server -- libinput input driver
ii xserver-xorg-input-wacom 1:0.39.0-0ubuntu1 amd64 X.Org X server -- Wacom input driver
ii xserver-xorg-legacy 2:1.20.11-1ubuntu1~20.04.2 amd64 setuid root Xorg server wrapper
ii xserver-xorg-video-all 1:7.7+19ubuntu14 amd64 X.Org X server -- output driver metapackage
ii xserver-xorg-video-amdgpu 19.1.0-1 amd64 X.Org X server -- AMDGPU display driver
ii xserver-xorg-video-ati 1:19.1.0-1 amd64 X.Org X server -- AMD/ATI display driver wrapper
ii xserver-xorg-video-fbdev 1:0.5.0-1ubuntu1 amd64 X.Org X server -- fbdev display driver
ii xserver-xorg-video-intel 2:2.99.917+git20200226-1 amd64 X.Org X server -- Intel i8xx, i9xx display driver
ii xserver-xorg-video-nouveau 1:1.0.16-1 amd64 X.Org X server -- Nouveau display driver
ii xserver-xorg-video-qxl 0.1.5+git20200331-1 amd64 X.Org X server -- QXL display driver
ii xserver-xorg-video-radeon 1:19.1.0-1 amd64 X.Org X server -- AMD/ATI Radeon display driver
ii xserver-xorg-video-vesa 1:2.4.0-2 amd64 X.Org X server -- VESA display driver
ii xserver-xorg-video-vmware 1:13.3.0-3 amd64 X.Org X server -- VMware display driver
关于服务(撰写本文时)
$ sudo systemctl status xrdp
[sudo] password for user1:
● xrdp.service - xrdp daemon
Loaded: loaded (/lib/systemd/system/xrdp.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2021-11-03 07:17:27 -03; 46min ago
Docs: man:xrdp(8)
man:xrdp.ini(5)
Process: 794 ExecStartPre=/bin/sh /usr/share/xrdp/socksetup (code=exited, status=0/SUCCESS)
Process: 809 ExecStart=/usr/sbin/xrdp $XRDP_OPTIONS (code=exited, status=0/SUCCESS)
Main PID: 821 (xrdp)
Tasks: 2 (limit: 4114)
Memory: 13.6M
CGroup: /system.slice/xrdp.service
├─ 821 /usr/sbin/xrdp
└─2270 /usr/sbin/xrdp
nov 03 07:51:49 server1 xrdp[2270]: (2270)(140250390095680)[DEBUG] xrdp_000008de_wm_login_mode_event_00000001
nov 03 07:51:49 server1 xrdp[2270]: (2270)(140250390095680)[INFO ] Loading keymap file /etc/xrdp/km-0000080a.ini
nov 03 07:51:49 server1 xrdp[2270]: (2270)(140250390095680)[WARN ] local keymap file for 0x0000080a found and doesn't match built in keym>
nov 03 07:51:50 server1 xrdp[2270]: (2270)(140250390095680)[DEBUG] xrdp_wm_log_msg: connecting to sesman ip 127.0.0.1 port 3350
nov 03 07:51:50 server1 xrdp[2270]: (2270)(140250390095680)[INFO ] xrdp_wm_log_msg: sesman connect ok
nov 03 07:51:50 server1 xrdp[2270]: (2270)(140250390095680)[DEBUG] xrdp_wm_log_msg: sending login info to session manager, please wait...
nov 03 07:51:50 server1 xrdp[2270]: (2270)(140250390095680)[DEBUG] return value from xrdp_mm_connect 0
nov 03 07:51:52 server1 xrdp[2270]: (2270)(140250390095680)[INFO ] xrdp_wm_log_msg: login failed for display 0
nov 03 07:51:52 server1 xrdp[2270]: (2270)(140250390095680)[DEBUG] xrdp_mm_module_cleanup
nov 03 07:51:52 server1 xrdp[2270]: (2270)(140250390095680)[DEBUG] Closed socket 16 (AF_INET6 ::1 port 33602)
在最后 2 次连接尝试中(在撰写本文时),通过tail -100 /var/log/xrdp.log
。请注意,倒数第二次的日志要简短得多(我不知道为什么)。
[20211103-08:12:23] [DEBUG] xrdp_wm_log_msg: connecting to sesman ip 127.0.0.1 port 3350
[20211103-08:12:23] [INFO ] xrdp_wm_log_msg: sesman connect ok
[20211103-08:12:23] [DEBUG] xrdp_wm_log_msg: sending login info to session manager, please wait...
[20211103-08:12:23] [DEBUG] return value from xrdp_mm_connect 0
[20211103-08:12:24] [INFO ] xrdp_wm_log_msg: login successful for display 11
[20211103-08:12:24] [DEBUG] xrdp_wm_log_msg: started connecting
[20211103-08:12:25] [INFO ] lib_mod_log_peer: xrdp_pid=2270 connected to X11rdp_pid=2309 X11rdp_uid=1000 X11rdp_gid=1001 client_ip=::ffff:192.168.0.139 client_port=42290
[20211103-08:12:25] [DEBUG] xrdp_wm_log_msg: connected ok
[20211103-08:12:25] [DEBUG] xrdp_mm_connect_chansrv: chansrv connect successful
[20211103-08:12:25] [DEBUG] Closed socket 16 (AF_INET6 ::1 port 33604)
[20211103-08:12:27] [DEBUG] Closed socket 12 (AF_INET6 ::ffff:192.168.0.176 port 3389)
[20211103-08:12:27] [DEBUG] xrdp_mm_module_cleanup
[20211103-08:12:27] [DEBUG] Closed socket 17 (AF_UNIX)
[20211103-08:12:27] [DEBUG] Closed socket 18 (AF_UNIX)
[20211103-08:20:06] [DEBUG] Closed socket 11 (AF_INET6 :: port 3389)
[20211103-08:20:06] [INFO ] address [0.0.0.0] port [3389] mode 1
[20211103-08:20:06] [INFO ] listening to port 3389 on 0.0.0.0
[20211103-08:20:06] [INFO ] xrdp_listen_pp done
[20211103-08:20:07] [DEBUG] Closed socket 7 (AF_INET6 :: port 3389)
[20211103-08:20:09] [INFO ] starting xrdp with pid 2430
[20211103-08:20:09] [INFO ] address [0.0.0.0] port [3389] mode 1
[20211103-08:20:09] [INFO ] listening to port 3389 on 0.0.0.0
[20211103-08:20:09] [INFO ] xrdp_listen_pp done
[20211103-08:20:34] [INFO ] Socket 12: AF_INET6 connection received from ::ffff:192.168.0.139 port 42446
[20211103-08:20:34] [DEBUG] Closed socket 12 (AF_INET6 ::ffff:192.168.0.176 port 3389)
[20211103-08:20:34] [DEBUG] Closed socket 11 (AF_INET6 :: port 3389)
[20211103-08:20:34] [INFO ] Using default X.509 certificate: /etc/xrdp/cert.pem
[20211103-08:20:34] [INFO ] Using default X.509 key file: /etc/xrdp/key.pem
[20211103-08:20:34] [DEBUG] TLSv1.3 enabled
[20211103-08:20:34] [DEBUG] TLSv1.2 enabled
[20211103-08:20:34] [DEBUG] Security layer: requested 3, selected 1
[20211103-08:20:40] [INFO ] connected client computer name: ViaLactea
[20211103-08:20:40] [INFO ] adding channel item name rdpdr chan_id 1004 flags 0xc0800000
[20211103-08:20:40] [INFO ] adding channel item name rdpsnd chan_id 1005 flags 0xc0000000
[20211103-08:20:40] [INFO ] adding channel item name cliprdr chan_id 1006 flags 0xc0a00000
[20211103-08:20:40] [INFO ] adding channel item name drdynvc chan_id 1007 flags 0xc0800000
[20211103-08:20:41] [INFO ] TLS connection established from ::ffff:192.168.0.139 port 42446: TLSv1.3 with cipher TLS_AES_256_GCM_SHA384
[20211103-08:20:41] [DEBUG] xrdp_0000097f_wm_login_mode_event_00000001
[20211103-08:20:41] [INFO ] Loading keymap file /etc/xrdp/km-0000080a.ini
[20211103-08:20:41] [WARN ] local keymap file for 0x0000080a found and doesn't match built in keymap, using local keymap file
[20211103-08:20:41] [DEBUG] xrdp_wm_log_msg: connecting to sesman ip 127.0.0.1 port 3350
[20211103-08:20:42] [INFO ] xrdp_wm_log_msg: sesman connect ok
[20211103-08:20:42] [DEBUG] xrdp_wm_log_msg: sending login info to session manager, please wait...
[20211103-08:20:42] [DEBUG] return value from xrdp_mm_connect 0
[20211103-08:20:43] [INFO ] xrdp_wm_log_msg: login failed for display 0
[20211103-08:20:43] [DEBUG] xrdp_mm_module_cleanup
[20211103-08:20:43] [DEBUG] Closed socket 18 (AF_INET6 ::1 port 33606)
[20211103-08:20:52] [DEBUG] xrdp_wm_log_msg: connecting to sesman ip 127.0.0.1 port 3350
[20211103-08:20:52] [INFO ] xrdp_wm_log_msg: sesman connect ok
[20211103-08:20:52] [DEBUG] xrdp_wm_log_msg: sending login info to session manager, please wait...
[20211103-08:20:52] [DEBUG] return value from xrdp_mm_connect 0
[20211103-08:20:53] [INFO ] xrdp_wm_log_msg: login successful for display 11
[20211103-08:20:53] [DEBUG] xrdp_wm_log_msg: started connecting
[20211103-08:20:53] [INFO ] lib_mod_log_peer: xrdp_pid=2431 connected to X11rdp_pid=2434 X11rdp_uid=1000 X11rdp_gid=1001 client_ip=::ffff:192.168.0.139 client_port=42446
[20211103-08:20:53] [DEBUG] xrdp_wm_log_msg: connected ok
[20211103-08:20:54] [DEBUG] xrdp_mm_connect_chansrv: chansrv connect successful
[20211103-08:20:54] [DEBUG] Closed socket 18 (AF_INET6 ::1 port 33608)
[20211103-08:20:55] [DEBUG] Closed socket 12 (AF_INET6 ::ffff:192.168.0.176 port 3389)
[20211103-08:20:55] [DEBUG] xrdp_mm_module_cleanup
[20211103-08:20:55] [DEBUG] Closed socket 19 (AF_UNIX)
[20211103-08:20:55] [DEBUG] Closed socket 20 (AF_UNIX)
在最后一次连接尝试中(在撰写本文时),通过tail -200 /var/log/xrdp-sesman.log
。请注意,... created session (access granted): username user1...
表明用户名/密码正确。
[20211103-08:20:06] [INFO ] shutting down sesman 1
[20211103-08:20:06] [DEBUG] Closed socket 7 (AF_INET6 ::1 port 3350)
[20211103-08:20:06] [DEBUG] libscp initialized
[20211103-08:20:06] [DEBUG] Testing if xrdp-sesman can listen on 127.0.0.1 port 3350.
[20211103-08:20:06] [DEBUG] Closed socket 5 (AF_INET6 ::1 port 3350)
[20211103-08:20:06] [INFO ] starting xrdp-sesman with pid 2420
[20211103-08:20:06] [INFO ] listening to port 3350 on 127.0.0.1
[20211103-08:20:41] [INFO ] A connection received from ::1 port 33606
[20211103-08:20:43] [DEBUG] Closed socket 8 (AF_INET6 ::1 port 3350)
[20211103-08:20:52] [INFO ] A connection received from ::1 port 33608
[20211103-08:20:52] [INFO ] ++ created session (access granted): username user1, ip ::ffff:192.168.0.139:42446 - socket: 12
[20211103-08:20:52] [INFO ] starting Xorg session...
[20211103-08:20:52] [DEBUG] Closed socket 9 (AF_INET6 :: port 5910)
[20211103-08:20:52] [ERROR] g_tcp_bind(9, 6010) failed bind IPv6 (errno=98) and IPv4 (errno=22).
[20211103-08:20:52] [DEBUG] Closed socket 9 (AF_INET6 :: port 0)
[20211103-08:20:52] [DEBUG] Closed socket 9 (AF_INET6 :: port 5911)
[20211103-08:20:52] [DEBUG] Closed socket 9 (AF_INET6 :: port 6011)
[20211103-08:20:52] [DEBUG] Closed socket 9 (AF_INET6 :: port 6211)
[20211103-08:20:53] [DEBUG] Closed socket 8 (AF_INET6 ::1 port 3350)
[20211103-08:20:53] [INFO ] calling auth_start_session from pid 2432
[20211103-08:20:53] [DEBUG] Closed socket 7 (AF_INET6 ::1 port 3350)
[20211103-08:20:53] [DEBUG] Closed socket 8 (AF_INET6 ::1 port 3350)
[20211103-08:20:53] [INFO ] /usr/lib/xorg/Xorg :11 -auth .Xauthority -config xrdp/xorg.conf -noreset -nolisten tcp -logfile .xorgxrdp.%s.log
[20211103-08:20:53] [CORE ] waiting for window manager (pid 2433) to exit
[20211103-08:20:55] [CORE ] window manager (pid 2433) did exit, cleaning up session
[20211103-08:20:55] [INFO ] calling auth_stop_session and auth_end from pid 2432
[20211103-08:20:55] [DEBUG] cleanup_sockets:
[20211103-08:20:55] [DEBUG] cleanup_sockets: deleting /run/xrdp/sockdir/xrdp_chansrv_audio_out_socket_11
[20211103-08:20:55] [DEBUG] cleanup_sockets: deleting /run/xrdp/sockdir/xrdp_chansrv_audio_in_socket_11
[20211103-08:20:55] [DEBUG] cleanup_sockets: deleting /run/xrdp/sockdir/xrdpapi_11
[20211103-08:20:55] [INFO ] ++ terminated session: username user1, display :11.0, session_pid 2432, ip ::ffff:192.168.0.139:42446 - socket: 12
在窗口管理器上。
从服务器上的图形终端。
$ wmctrl -m Name: Openbox Class: PID: N/A Window manager's "showing the desktop" mode: OFF
从 ssh 记录客户端的图形终端。
$ wmctrl -m Name: GNOME Shell Class: N/A PID: N/A Window manager's "showing the desktop" mode: OFF
摘录自~/.xsession-errors
(撰写本文时)
Xsession: X session started for user1 at mié 03 nov 2021 10:33:01 -03
dbus-update-activation-environment: systemd --user not found, ignoring --systemd argument
dbus-update-activation-environment: setting DISPLAY=:11.0
localuser:user1 being added to access control list
dbus-update-activation-environment: systemd --user not found, ignoring --systemd argument
dbus-update-activation-environment: setting QT_ACCESSIBILITY=1
dbus-update-activation-environment: systemd --user not found, ignoring --systemd argument
dbus-update-activation-environment: setting USER=user1
摘录自~/.xorgxrdp.11.log
(撰写本文时,已根据这)
[ 10692.409] (EE) systemd-logind: failed to take device /dev/dri/card0: Operation not permitted
[ 10692.409] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied
有关的