前提:已经安装了Ubuntu 20.04桌面版GUI。如果没有,请运行以下命令:
linuxmi@linuxmi:~$ sudo apt install ubuntu-desktop
步骤1:在Ubuntu 20.04上安装Xrdp
的终端并调用以下命令,安装Xrdp。
sudo apt install xrdp
出现提示时,只需点击’Y’并按Enter即可继续安装。
Xrdp服务在安装后自动启动。您可以通过运行以下命令来验证这一点:
sudo systemctl status xrdp
输出确认xrdp守护程序是活动的并且正在运行。
步骤2:在Ubuntu 20.04上配置Xrdp
当XRDP安装,SSL证书密钥 – ssl-cert-snakeoil.key– 被放置在在 /etc/ssl/private/文件夹。我们需要将xrdp用户添加到 ssl-cert组,以使该文件对用户可读。
sudo adduser xrdp ssl-cert

将Xrdp用户添加到SSL证书组
Xrdp侦听端口3389,如果您位于UFW防火墙之后,则需要打开该端口以允许来自RDP客户端的入站流量。在此示例中,我将允许从我的整个子网到Ubuntu系统的通信。
sudo ufw allow from 192.168.1.0/24 to any port 3389
此后,重新加载防火墙并确认端口是否已打开。
linuxmi@linuxmi:~$ sudo ufw reload
linuxmi@linuxmi:~$ sudo ufw status
在Ubuntu防火墙上打开Xrdp端口
步骤3:使用RDP客户端访问远程Ubuntu桌面
在此步骤中,我们将使用 远程桌面客户端从Windows 10访问Ubuntu桌面系统。但是在执行此操作之前,请确保您首先注销Ubuntu 20.04。这是因为Xrdp仅支持一个Xsession。
接下来,启动客户端并输入远程系统的IP地址,然后单击“连接”按钮。

使用RDP连接远程Ubuntu系统
在要求您验证远程系统身份的弹出窗口中,忽略证书错误,然后单击“下一步”按钮继续进行连接。
验证远程Ubuntu系统的身份
在Xrdp登录页面上,提供您的登录凭据,然后单击“确定”。

输入后登录Ubuntu
注意:此时,您可能会遇到黑屏,而不是Ubuntu桌面背景。实际上,我也亲自遇到了它,经过一番挖掘,我发现了一个不错的解决方法。
修复Ubuntu黑屏幕
解决方案非常简单。转至远程系统并编辑/etc/xrdp/startwm.sh脚本。
linuxmi@linuxmi:~$ sudo vim /etc/xrdp/startwm.sh
在测试和执行Xsession的行之前添加这些行,如下面的屏幕快照所示。
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
保存文件并退出。然后重新启动Xrdp服务。
linuxmi@linuxmi:~$ sudo systemctl restart xrdp
接下来,重新启动连接。初始认证后,将要求您再次认证,如图所示。

Ubuntu登录