Xrdp是Microsoft远程桌面协议(RDP)的开源实现,可让您以图形方式控制远程系统。 使用RDP,您可以登录到远程计算机并创建真实的桌面会话,就像登录到本地计算机一样。

本教程介绍了如何在Ubuntu 20.04上安装和配置Xrdp服务器。包括安装桌面环境gnome或者xfce,配置Xrdp,以及xrdo的防火墙配置。

安装桌面环境

Ubuntu服务器是从命令行管理的,默认情况下未安装桌面环境。 如果您运行桌面版的Ubuntu,请跳过此步骤。

您可以选择Ubuntu存储库中的各种桌面环境。 一种选择是安装Gnome,这是Ubuntu 20.04中的默认桌面环境。 另一种选择是安装Xfce。 它是一种快速,稳定且轻巧的桌面环境,非常适合在远程服务器上使用。运行以下命令之一来安装您选择的桌面环境。

安装Gnome

Gnome与xfce相比,Gnome它具有简单但有效的用户界面。用户在屏幕上有更多动态的工作区域。它具有内置的恢复功能,可帮助用户保持工作的连续性非常适合初学者浏览所有功能并学习。它为开发着的应用程序的运行提供了一个完美的兼容平台。

sudo apt update
sudo apt install ubuntu-desktop

安装Xfce

Gnome与xfce相比,xfce由于其轻巧,它可以安装在低端台式机上。Xfce优雅的外观,增强了用户体验,它对用户非常友好,性能优于其他桌面环境,它提供了许多可定制的接触点以供灵活使用。

sudo apt update
sudo apt install xubuntu-desktop

下载和安装GUI软件包将需要一些时间。

安装Xrdp

Xrdp包含在默认的Ubuntu存储库中。 要安装它,请运行:

sudo apt install xrdp 

安装完成后,Xrdp服务将自动启动。 您可以输入以下内容进行验证:

sudo systemctl status xrdp

输出将如下所示:

● xrdp.service - xrdp daemon
     Loaded: loaded (/lib/systemd/system/xrdp.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2020-05-22 17:36:16 UTC; 4min 41s ago
  ...

默认情况下,Xrdp会读取使用/etc/ssl/private/ssl-cert-snakeoil.key文件,但该文件仅由ssl-cert组的成员读取。 因此你需要运行以下命令以将xrdp用户添加到ssl-cert组

sudo adduser xrdp ssl-cert  

重新启动Xrdp服务,以使更改生效:

sudo systemctl restart xrdp

至此,Xrdp已安装在您的Ubuntu服务器上。

Xrdp配置

Xrdp配置文件位于/etc/xrdp目录中。 对于基本的Xrdp连接,您无需对配置文件进行任何更改。Xrdp使用默认的X Window桌面环境(Gnome或XFCE)。

主要配置文件名为xrdp.ini。 该文件分为几个部分,可让您设置全局配置。例如安全性和监听地址,并创建不同的xrdp登录会话。无论何时对配置文件进行任何更改,都需要重新启动Xrdp服务。

Xrdp使用startwm.sh文件启动X会话。 如果要使用另一个X Window桌面,请编辑此文件。

配置防火墙

Xrdp守护程序在所有接口上的端口3389上进行侦听。 如果您在Ubuntu服务器上运行防火墙,则需要打开Xrdp端口。要允许从指定的IP地址或IP范围(例如192.168.33.0/24)访问Xrdp服务器,请运行以下命令:

sudo ufw allow from 192.168.33.0/24 to any port 3389

如果要允许从任何地方访问,出于安全考虑,强烈建议不要这样做,请运行:

sudo ufw allow 3389

为了提高安全性,您可以考虑将Xrdp设置为仅在localhost上侦听,并创建SSH隧道,该隧道将流量从本地计算机在端口3389上安全地转发到同一端口上的服务器。

连接到Xrdp服务器

现在,您已经设置了Xrdp服务器,是时候打开Xrdp客户端并连接到服务器了。如果您有Windows PC,则可以使用默认的RDP远程桌面客户端。 在Windows搜索栏中键入“远程桌面”,然后单击“远程桌面连接”。 这将打开RDP客户端。 在“计算机”输出框中,输入远程服务器的IP地址,然后单击“连接”。

在登录屏幕上,输入您的用户名和密码,然后单击“确定”。登录后,您应该看到默认的Gnome或Xfce桌面。您现在可以使用键盘和鼠标从本地计算机开始与远程桌面进行交互。

如果您的系统是macOS,则可以从Mac App Store安装Microsoft远程桌面应用程序。 Linux用户可以使用RDP客户端,例如Remmina或Vinagre。

结论

配置远程桌面使您可以通过易于使用的图形界面从本地计算机管理Ubuntu 20.04服务器。如果您有任何疑问,请随时在下面发表评论。