Xrdp 是 Microsoft 远程桌面协议 (RDP) 的开源实现,允许您以图形方式控制远程系统。使用 RDP,您可以登录到远程计算机并创建真实的桌面会话,就像登录到本地计算机一样。
本教程介绍如何在 CentOS 8 上安装和配置 Xrdp 服务器。
如果您更喜欢开源替代方案,请查看VNC
.
安装桌面环境#
一般来说,Linux服务器没有安装桌面环境。如果您要连接的计算机没有 GUI,则第一步是安装它。否则,请跳过此步骤。
Gnome 是 CentOS 8 中的默认桌面环境。要在远程计算机上安装 Gnome,请运行以下命令
sudo dnf groupinstall "Server with GUI"
根据您的系统,下载和安装 Gnome 软件包和依赖项可能需要一些时间。
安装Xrdp#
Xrdp 可在EPEL软件存储库。如果您的系统上未启用 EPEL,请通过键入以下内容来启用它:
sudo dnf install epel-release
安装 Xrdp 包:
sudo dnf install xrdp
安装过程完成后,启动 Xrdp 服务并在启动时启用它:
sudo systemctl enable xrdp --now
您可以通过键入以下内容来验证 Xrdp 是否正在运行:
sudo systemctl status xrdp
输出将如下所示:
● xrdp.service - xrdp daemon
Loaded: loaded (/usr/lib/systemd/system/xrdp.service; enabled; vendor preset: disabled)
Active: active (running) since Sun 2020-02-02 18:30:43 UTC; 11s ago
...
配置Xrdp#
配置文件位于/etc/xrdp
目录。对于基本 Xrdp 连接,您不需要对配置文件进行任何更改。 Xrdp 使用默认的 X Window 桌面,在本例中为 Gnome。
主配置文件名为xrdp.ini。该文件分为多个部分,允许您设置全局配置设置(例如安全性和侦听地址)并创建不同的 xrdp 登录会话。
每当您对配置文件进行任何更改时,您都需要重新启动 Xrdp 服务:
sudo systemctl restart xrdp
Xrdp用途startwm.sh
文件来启动 X 会话。如果您想使用另一个 X Window 桌面,请编辑此文件。
配置防火墙#
默认情况下,Xrdp 监听端口3389
在所有接口上。如果你运行一个CentOS 机器上的防火墙(您应该始终这样做),您需要添加一条规则以允许 Xrdp 端口上的流量。
通常,您希望仅允许从特定 IP 地址或 IP 范围访问 Xrdp 服务器。例如,仅允许来自192.168.1.0/24
范围内,输入以下命令:
sudo firewall-cmd --new-zone=xrdp --permanent
sudo firewall-cmd --zone=xrdp --add-port=3389/tcp --permanent
sudo firewall-cmd --zone=xrdp --add-source=192.168.1.0/24 --permanent
sudo firewall-cmd --reload
允许流量到达端口3389
从任何地方使用以下命令。出于安全原因,强烈建议不要允许从任何地方进行访问。
sudo firewall-cmd --add-port=3389/tcp --permanent
sudo firewall-cmd --reload
为了提高安全性,您可以考虑将 Xrdp 设置为仅在本地主机上侦听并创建一个SSH隧道安全地转发来自本地计算机端口的流量3389
到同一端口上的服务器。
另一个安全的选择是安装 OpenVPN并通过专用网络连接到Xrdp服务器。
连接到 Xrdp 服务器#
现在 Xrdp 服务器已配置完毕,是时候打开本地 Xrdp 客户端并连接到远程 CentOS 8 系统了。
Windows 用户可以使用默认的 RDP 客户端。在 Windows 搜索栏中输入“远程”,然后单击“远程桌面连接”。这将打开 RDP 客户端。在“计算机”字段中,输入远程服务器 IP 地址,然后单击“连接”。
在登录屏幕上,输入您的username和密码,然后单击“确定”。
登录后,您应该会看到默认的 Gnome 桌面。它应该看起来像这样:
您现在可以开始使用键盘和鼠标从本地计算机与远程桌面进行交互。
如果您使用的是 macOS,则可以从 Mac App Store 安装 Microsoft 远程桌面应用程序。 Linux 用户可以使用 RDP 客户端,例如 Remmina 或 Vinagre。
结论#
安装 Xrdp 服务器允许您通过易于使用的图形界面从本地桌面计算机管理 CentOS 8 服务器。
如果您有疑问,请随时在下面发表评论。