1. 前言
本文主要讲解如何在ubuntu 20.04系统上安装和配置xrdp远程桌面。
xrdp是微软的远程桌面协议(remote desktop protocol, rdp)的开源版本。在linux系统上安装xrdp后,用户可以使用rdp客户端远程访问linux桌面。
现在我们来一起看看如何在ubuntu桌面20.04和18.04上安装xrdp吧。
目标:在ubuntu 20.04系统上安装和配置xrdp,远程windows用户可以使用系统自带的远程桌面工具连接ubuntu 20.04桌面。
实施前提:
- 1. 带图形界面的ubuntu 20.04系统
- 2. 具有root权限或者sudo权限
- 3. 熟悉linux基本命令行操作,比如apt命令
软件工具清单:
- 1. xrdp:基于微软rdp协议的开源套件。
2. 在ubuntu系统上安装xrdp套件
如果您现在的ubuntu版本是server版,还没有安装桌面环境,那么您需要先安装图形桌面环境。
要安装ubuntu桌面环境,运行以下命令:
sudo apt install ubuntu-desktop
2.1 在ubuntu 20.04系统上安装xrdp
执行以下命令开始安装xrdp:
sudo apt install xrdp -y
在ubuntu 20.04系统上安装xrdp
xrdp服务安装后自动启动。你可以通过运行下面的命令来验证这一点:
sudo systemctl status xrdp
在ubuntu 20.04系统上检查xrdp运行状态
从上图中可以看出,xrdp守护进程处于正在运行的状态并设置了开机自启动。
2.2 在ubuntu 20.04上配置xrdp
当安装xrdp时,它会自动生产一个ssl证书的密钥文件ssl-cert-snakeoil.key,它位于/etc/ssl/private/目录中。我们需要将xrdp用户添加到ssl-cert组,以使该文件对用户可读。
sudo adduser xrdp ssl-cert
在ubuntu 20.04上配置xrdp
xrdp监听tcp端口3389,如果你开启了ufw防火墙,你需要开放这个端口,允许其它客户端远程连接到该服务器上。在这个例子中,我将允许从我的整个子网ip远程连接到ubuntu系统的rdp服务。
sudo ufw allow from 192.168.2.0/24 to any port 3389
执行完之后,需要重新加载防火墙,并确认端口是否已经打开。
sudo ufw reload
sudo ufw status
2.3: 使用rdp客户端访问远程ubuntu桌面
接下来,我们将在windows 10中使用远程桌面客户端访问ubuntu桌面系统。但在此之前,请确保您首先退出ubuntu 20.04。这是因为xrdp只支持一个x会话。
接下来,启动客户机并输入远程系统的ip地址,然后单击“连接”按钮。
在windows系统上启动rdp远程桌面客户端,连接ubuntu服务器
在windows系统上启动rdp远程桌面客户端,连接ubuntu服务器
rdp连接安全警告,点击“是”
rdp连接安全警告
输入正确的用户名和密码后,xrdp提示错误:
输入正确的用户名和密码后,xrdp提示错误
xrdp远程桌面报错
xrdp远程桌面报错
注意:你可能会遇到错误提示,而不是直接进入ubuntu桌面。事实上,我自己也遇到过这种情况,经过一番研究,我发现了一个解决办法。
解决方法很简单。回到命令行界面,编辑/etc/xrdp/startwm.sh脚本。
sudo vim /etc/xrdp/startwm.sh
在2个unset后面添加以下2行:
unset dbus_session_bus_address
unset xdg_runtime_dir
按下图修改xrdp配置文件
修改xrdp配置文件
重启xrdp协议:
sudo systemctl restart xrdp
2.4 再次使用rdp客户端访问远程ubuntu桌面
正确输入用户名和密码后,即可成功进入ubuntu桌面。
通过xrdp服务成功进入ubuntu桌面
3. 结论
通过本文,您应该可以学习到如何在ubuntu系统中配置基于rdp协议的远程桌面了吧?rdp是微软公司的标准,好处在于与windows自带的rdp客户端完全兼容,并且不需要安装第三方软件。如果你有更好的用法,请留言。