作者选择了COVID-19 救济基金接受捐赠作为为捐款而写程序。
远程桌面协议(RDP) 是 Microsoft 开发的一种网络协议,允许用户远程访问远程 Windows 服务器的图形用户界面并与之交互。 RDP 采用客户端-服务器模型,其中 RDP 客户端安装在本地计算机上,RDP 服务器安装在远程服务器上。
RDP 广泛用于 Windows 远程连接,但您也可以使用类似工具访问远程 Linux 服务器的图形用户界面并与之交互xrdp,RDP 服务器的开源实现。
在本教程中,您将在 Ubuntu 22.04 服务器上使用 xrdp 安装和配置 RDP 服务器,并使用本地计算机上的 RDP 客户端访问它。您将了解如何通过配置和使用 RDP 连接来建立对远程 Linux 服务器的访问。
要完成本教程,您将需要:
在此步骤中,您将在 Ubuntu 服务器上安装并配置桌面环境。默认情况下,Ubuntu 服务器仅附带终端环境。需要安装桌面环境才能访问用户界面。
从 Ubuntu 的可用选项中,您将安装Xfce桌面环境。 Xfce 为基于 Linux 的系统提供了一个轻量级、用户友好的桌面环境。
首先,使用 SSH 连接到您的服务器并使用以下命令更新可用软件包的列表:
接下来,安装xfce
and xfce-goodies
您服务器上的包:
-
sudo apt installxfce4 xfce4-好东西-y
系统将提示您选择显示管理器,这是一个管理图形登录机制和用户会话的程序。您可以从可用显示管理器列表中选择任何选项,但本教程将使用gdm3
.
安装桌面环境后,您现在将在服务器上安装 xrdp。
xrdp 是 RDP 服务器的开源实现,允许基于 Linux 的服务器进行 RDP 连接。在此步骤中,您将在 Ubuntu 服务器上安装 xrdp。
要安装 xrdp,请在终端中运行以下命令:
安装 xrdp 后,使用以下命令验证 xrdp 的状态systemctl
:
该命令将显示状态为active (running)
:
Output
● xrdp.service - xrdp daemon
Loaded: loaded (/lib/systemd/system/xrdp.service; enabled; vendor preset: enabled)
Active: **active (running)** since Sun 2022-08-07 13:00:44 UTC; 26s ago
Docs: man:xrdp(8)
man:xrdp.ini(5)
Main PID: 17904 (xrdp)
Tasks: 1 (limit: 1131)
Memory: 1016.0K
CGroup: /system.slice/xrdp.service
└─17904 /usr/sbin/xrdp
如果 xrdp 的状态不是running
,您可能需要使用以下命令手动启动服务:
执行上述命令后,再次验证状态以确保 xrdp 处于running
state.
您现在已经在服务器上安装了 xrdp。接下来,您将查看 xrdp 配置以接受来自远程客户端的连接。
在此步骤中,您将查看 xrdp 的默认配置,该配置存储在/etc/xrdp/xrdp.ini
,并添加 RDP 连接的配置。您还将更新防火墙设置。
xrdp.ini
是设置与 xrdp 服务器的 RDP 连接的默认配置文件。可以修改和自定义配置文件以满足 RDP 连接要求。
打开文件在nano
文本编辑器或您选择的任何编辑器:
-
sudo nano/etc/xrdp/xrdp.ini
配置文件包含不同的部分:
-
Globals定义 xrdp 的一些全局配置设置。
-
Logging定义日志的日志记录子系统参数。
-
Channels定义了 RDP 支持的多个通道参数。
-
会话类型xrdp 定义了多种支持的会话类型。每个会话类型配置都被定义为其会话类型名称下的单独部分,并用方括号括起来,例如
[Xorg]
and [XVnc]
。没有[Sessions types]
文件中的标题;相反,它被写成注释。
在配置文件中,导航到Session types
部分。您会发现多种支持的会话类型及其参数列出:
Output
...
;
; Session types
;
; Some session types such as Xorg, X11rdp, and Xvnc start a display server.
; Startup command-line parameters for the display server are configured
; in sesman.ini. See and configure also sesman.ini.
[Xorg]
name=Xorg
lib=libxup.so
username=ask
password=ask
ip=127.0.0.1
port=-1
code=20
[Xvnc]
name=Xvnc
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=-1
#xserverbpp=24
#delay_ms=2000
[vnc-any]
...
[neutrinordp-any]
...
...
默认情况下,username
and password
参数设置为ask
,这意味着系统将提示用户输入用户名和密码以通过 RDP 连接。参数,例如name
, username
, and password
,必要时可以修改。对于与服务器的初始 RDP 连接,默认配置就足够了。
完成后保存并关闭文件。
现在,如果您还不存在,请移至用户的主目录:
接下来,您将创建一个.xsession
文件下/home/sammy
并添加xfce4-session
作为登录时使用的会话管理器:
-
echo “xfce4-会话” | tee.xsession
tee
写入回显字符串"xfce4-session"
到文件.xsession
。上述配置确保xfce4-session
根据图形登录请求用作会话管理器。安装的结果是xfce
作为您的桌面环境,xfce4-session
充当其会话管理器。如果您不将此信息包含在.xsession
文件中,未选择会话管理器,RDP 会话将无法连接到图形显示。
重新启动 xrdp 服务器:
接下来,您将配置防火墙以允许端口上的公共 IP 进行远程连接3389
。 RDP 连接在 TCP/IP 端口上提供服务3389
。要通过 RDP 访问远程服务器,您必须允许端口3389
在你的防火墙中。
首先,找到本地计算机的公共IP:
在 Windows 上,使用 Windows 命令提示符运行此命令。
curl
提出请求ifconfig.me
返回您的公共 IP 作为输出:
Output
...
your_local_ip
Next, allow access to the RDP port 3389
on your remote server, replacing your_local_ip
with the output of the last command:
-
sudo ufw allow from your_local_ip/32 to any port 3389
验证您的状态UFW
防火墙:
输出应如下所示:
Output
Status: Active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
3389 ALLOW your_local_ip
OpenSSH (v6) ALLOW Anywhere (v6)
...
您现在已启用端口3389
接受来自您的公共 IP 的连接。接下来,您将测试本地计算机与远程服务器的 RDP 连接。
在此步骤中,您将测试本地计算机的 RDP 连接。以下部分包括在 Windows、macOS 和 Linux 计算机上测试连接的操作。
要在 Windows 上使用远程桌面连接客户端测试连接,请首先启动远程桌面连接应用程序。
在可填写的文本框中输入远程服务器的公共 IP 和用户名Computer and 用户名。您可能需要按向下箭头显示选项输入用户名:
按Connect按钮。如果您收到一条警报,表明Remote Desktop can't connect to the remote computer
,检查您是否已在系统设置中打开远程桌面选项。
Press Yes如果您收到身份验证弹出窗口:
然后,输入远程服务器的用户名(sammy
) 和您为用户创建的密码sammy
在初始服务器设置期间。按Ok.
登录后,您应该能够访问 Ubuntu 桌面环境:
使用 RDP,您已成功从本地计算机连接到远程 Ubuntu 服务器。使用完图形桌面后,可以使用退出按钮将其关闭。
要在 macOS 上使用远程桌面连接客户端测试连接,请首先启动 Microsoft 远程桌面连接应用程序。
Press Add PC,然后在可填写框中输入远程服务器的公共IP:
You can 添加用户帐户设置连接时:
如果您在设置过程中未添加用户,系统将提示您输入用户登录凭据:
Press Yes绕过身份验证弹出窗口:
登录后,您可以访问 Ubuntu 远程桌面。使用完图形桌面后,可以使用退出按钮将其关闭。
您将需要 RDP 客户端来测试本地 Linux 计算机上的 RDP 连接。首先,安装remmina
适用于 Ubuntu 的 RDP 客户端:
Select y
如果提示完成安装。该命令将安装Remmina,Ubuntu 系统上的开源远程桌面客户端,使用apt
。对于其他 Linux 发行版,您可以查看Remmina 安装文档.
安装后,启动remmina
在本地 Linux 计算机上运行应用程序,然后在可填写框中输入远程服务器的公共 IP。按Enter通过键盘连接到远程桌面。
然后,输入远程服务器的用户名(在本教程中,用户名是sammy
)以及您在初始服务器设置期间为用户创建的密码。按Ok.
您可能需要再次输入用户密码才能解锁远程桌面。
登录后,您应该能够访问 Ubuntu 桌面环境。
使用 RDP,您已成功从本地计算机连接到远程 Ubuntu 服务器。使用完图形桌面后,可以使用退出按钮将其关闭。
一旦确保远程连接正常工作,只要您需要使用远程 Linux 服务器的图形界面,就可以使用此序列。
在本文中,您将 xrdp 配置为通过 RDP 连接从本地计算机连接到远程 Ubuntu 服务器的图形桌面。
现在,您可以尝试使用以下命令为 Linux 服务器配置 VNC 连接如何在 Ubuntu 20.04 上安装和配置 VNC。 VNC 是远程连接 Linux 桌面的另一种选择。