我安装了 Ubuntu 20.04,然后安装了 xrdp。每当我尝试连接时,无论是从另一个 Ubuntu 20.04 机器使用 xfreerdp 或 krdc,还是从 Mac,都会出现黑屏,然后立即断开连接。我确保服务器上没有同时进行任何其他会话。
过了一会儿,我放弃了,并尝试了以下脚本: https://www.c-nergy.be/products.html 没什么区别
这是 /var/log/xrdp.log 的唯一输出
[20200529-18:17:16] [INFO ] Socket 12: AF_INET6 connection received from ::ffff:192.168.0.216 port 45006
[20200529-18:17:16] [DEBUG] Closed socket 12 (AF_INET6 ::ffff:192.168.0.199 port 3389)
[20200529-18:17:16] [DEBUG] Closed socket 11 (AF_INET6 :: port 3389)
[20200529-18:17:16] [INFO ] Using default X.509 certificate: /etc/xrdp/cert.pem
[20200529-18:17:16] [INFO ] Using default X.509 key file: /etc/xrdp/key.pem
[20200529-18:17:16] [DEBUG] TLSv1.3 enabled
[20200529-18:17:16] [DEBUG] TLSv1.2 enabled
[20200529-18:17:16] [DEBUG] Security layer: requested 3, selected 1
[20200529-18:17:16] [INFO ] connected client computer name: coruscant
[20200529-18:17:16] [INFO ] adding channel item name cliprdr chan_id 1004 flags 0xc0a00000
[20200529-18:17:16] [INFO ] TLS connection established from ::ffff:192.168.0.216 port 45006: TLSv1.3 with cipher TLS_AES_256_GCM_SHA384
[20200529-18:17:16] [DEBUG] xrdp_00000506_wm_login_mode_event_00000001
[20200529-18:17:16] [INFO ] Loading keymap file /etc/xrdp/km-00000409.ini
[20200529-18:17:16] [WARN ] local keymap file for 0x00000409 found and doesn't match built in keymap, using local keymap file
[20200529-18:17:17] [DEBUG] Closed socket 12 (AF_INET6 ::ffff:192.168.0.199 port 3389)
[20200529-18:17:17] [DEBUG] xrdp_mm_module_cleanup
非常感谢
答案1
在尝试 RDP 之前,我可以通过在机器上注销桌面会话来解决此问题。
答案2
我在本地服务器上也遇到了同样的问题Ubuntu 20.04(已安装 xubuntu-desktop)我通过执行以下命令修复了这个问题。
# echo "startxfce4" > ~/.Xsession
# chmod +x ~/.Xsession
# sudo systemctl restart xrdp.service
如果您收到警告消息[创建色彩管理设备需要身份验证]当通过 Xrdp 连接 Ubuntu 服务器时,需要执行以下命令来忽略它:
# cd /usr/share/polkit-1/actions/
# vi org.freedesktop.color.policy
Modify <allow_any> settings from auth_admin to yes.
<defaults>
<allow_any>yes</allow_any>
<allow_inactive>no</allow_inactive>
<allow_active>yes</allow_active>
</defaults>
# reboot the system
答案3
答案4
1. 删除以前安装的 xrdp:
$ sudo systemctl disable xrdp
$ sudo systemctl stop xrdp
$ sudo apt purge xrdp
$ sudo apt purge xserver-xorg-core
$ sudo apt purge xserver-xorg-input-all
$ sudo apt purge xorgxrdp
2. 重新安装 xrdp 及所需的软件包:
$ sudo apt install xrdp
$ sudo apt install xserver-xorg-core
$ sudo apt install xserver-xorg-input-all
$ sudo apt install xorgxrdp
您还需要授予访问权限证书颁发机构 (SSL) 证书颁发机构 (SSL)申请偏磷酸钠用户。它可供SSL 证书默认分组。
$ sudo adduser xrdp ssl-cert # add xrdp into ssl-cert group
$ sudo systemctl start xrdp # start xrdp service
$ systemctl is-active xrdp # check xrdp state
...
active
$ sudo systemctl enable xrdp # start xrdp on system start
3.重启系统:
$ sudo reboot
4.防火墙配置:
您需要开放 3389 端口的访问。
$ sudo ufw allow 3389
仅针对您的 IP 地址或网络打开它会更安全。例如:
$ sudo ufw allow from 10.5.5.0/24 to any port 3389
最佳做法是使用 SSH 隧道连接到远程桌面,并让 xRDP 仅监听本地连接。
5. 设置你的 RDP 客户端
请注意,在某些情况下,连接到 xRDP 的用户必须在执行此操作之前注销!
- 使用任何 RDP 客户端连接到您的服务器。
- 输入您的 Ubuntu 计算机的用户凭据。
- 现在您可以看到远程桌面初始屏幕。
相关命令:
$ sudo systemctl status xrdp # display current xrdp status
$ sudo systemctl start xrdp # start xrdp service
$ sudo systemctl stop xrdp # stop xrdp service
$ sudo systemctl restart xrdp # restart xrdp service
$ sudo systemctl enable xrdp # enable xrdp on system start
$ sudo systemctl disable xrdp # disable xrdp on system start