Debian下安装XRDP服务

1 什么是RDP

什么是远程桌面协议(RDP)?

远程桌面协议 (RDP) 指的是用于远程使用桌面计算机的协议或技术标准。远程桌面软件可以使用几种不同的协议,如 RDP、独立计算架构 (ICA) 和虚拟网络计算 (VNC) 等,但 RDP 是最常用的协议。RDP 最初由微软公司发布,可用于大多数 Windows 操作系统,但 Mac 操作系统也提供相应的支持。

“远程桌面”是什么意思?

远程桌面是从另外一台计算机连接并使用远方的桌面计算机的功能。远程桌面用户可以访问其桌面,打开和编辑文件,并使用各种应用程序,就如实际坐在桌面计算机前一样。员工在出差期间或居家办公时,通常使用远程桌面软件访问其办公用计算机。

远程桌面访问与云计算有显著差别,尽管两者都能让员工实现远程办公。在云计算中,用户访问存储在云端(具体而言,云服务器中)的文件和应用程序。相反,使用远程桌面软件时,用户实际上是在访问其物理桌面计算机,并且只能使用存储于该桌面计算机本地的文件和应用程序。对于远程工作者而言,云计算有时更易于使用和实施,但许多公司尚未迁移到云,或者由于安全或法规方面的原因而无法迁移到云。

RDP 如何工作?

可以比作遥控无人机或玩具车。用户按下按钮并操控远处的无人机或玩具车,并将命令传输给它们。使用 RDP 有点像这样:用户的鼠标移动和击键通过互联网远程传输到其桌面计算机,而不是通过无线电波传输。用户的桌面显示在他们从中连接的计算机上,就像坐在桌面前一样。

RDP 协议开启一个专用的网络通道,用于在连接的两台计算机(远程桌面和当前使用的计算机)之间来回发送数据。为此,它始终使用网络端口 3389。鼠标移动、击键、桌面显示和所有其他必要的数据利用 TCP/IP 并通过此通道发送,这是用于大多数种类的 Internet 流量的传输协议。RDP 也会加密所有数据,提升通过公共互联网连接的安全性。

由于必须对键盘和鼠标活动进行加密并通过互联网传输(这需要花费几毫秒时间),而且必须将桌面显示传回给用户,因此经常会出现一些延迟。例如,如果用户双击某个应用程序以将其打开,则“双击”可能要等待几毫秒才会执行,因为用户操作需要传输到桌面后才会执行。然后,应用程序打开时也要等待一个短暂的延迟让显示画面传回给用户。

使用 RDP 有什么优缺点?

RDP 有几个优点。一个优点是它不需要 VPN。数据也会安全地存储在用户的桌面上,而不是存储到云服务器或用户的不安全个人设备上。此外,RDP 使具有传统本地 IT 设置的公司可以实现员工居家办公。

不过,RDP 可能会导致用户遭受延迟,尤其是在其本地互联网连接速度较慢的情况下。这可能会使远程员工感到沮丧,并降低他们的工作效率。RDP 还具有一些严重的安全漏洞,容易受到网络攻击。

常见的 Web 应用程序安全漏洞有哪些?

漏洞指的是某一软件的构建存在缺陷或错误,使攻击者可以未经授权而进行访问。这就像是房屋大门上门闩安装不当导致犯罪分子闯入屋内。

下面列出了 RDP 中最重要的漏洞:

  1. 用户登录凭证羸弱。大多数台式计算机使用密码进行保护,用户常常会随意设置这些密码。问题在于,同样的密码常常也会用于 RDP 远程登录。公司通常不管理这些密码以确保其强度,常常让这些远程连接暴露于暴力凭证填充攻击。
  2. 端口访问不设限制。RDP 连接几乎总是在端口 3389*。攻击者可以假定这是使用中的端口,并将其作为目标来进行在途攻击

*在网络中,端口指的是为某些类型的连接指定的基于软件的逻辑位置。将不同的进程分配到不同的端口有助于计算机跟踪这些进程。例如,HTTP 流量始终流向端口 80,而 HTTPS 流量始终流向端口 443。

有哪些方式可以解决这些 RDP 漏洞?

减少弱登录凭据的普遍性:

单点登录 (SSO):许多企业已使用 SSO 服务来管理各种应用程序的用户登录。SSO 为企业提供了一种更简单的方法来强制使用强密码,以及实施双因素身份验证 (2FA) 等更加安全的措施。可将 RDP 远程访问移到 SSO 后面,来修复上述用户登录漏洞。例如,Cloudflare Zero Trust 可协助企业实现这个目标。

密码管理和实施:对于某些公司,将 RDP 移到 SSO 后面可能不是一种选择。但在最低程度上,他们应要求员工将其台式机密码重置为更强的密码。

防范基于端口的攻击:

锁定端口 3389:安全隧道软件有助于阻止攻击者发送到达端口 3389 的请求。使用安全隧道(例如Cloudflare Tunnel)后,将会拦截所有未通过隧道的请求。

防火墙规则:可以手动配置公司防火墙,以便只有来自列入白名单的IP 地址范围(例如,已知属于员工的设备)的流量才能通过端口 3389。但是,此方法需要大量人工操作。如果攻击者劫持了列入白名单的 IP 地址或员工设备被盗用,仍然容易受到攻击。此外,通常很难预先识别所有员工设备并将其列入允许名单,因而被阻止的员工会不断提出 IT 请求。

RDP 还有哪些其他漏洞?

RDP 还有其他在技术上已得到修补的漏洞,但若不加以检查,这些漏洞仍然很严重。

RDP 中最严重的一个漏洞称为“BlueKeep”。BlueKeep(官方分类为CVE-2019-0708)是这样一个漏洞,如果攻击者向特定端口(通常为 3389)发送经特殊设计的请求,则攻击者可以在计算机上执行所需的任何代码。BlueKeep 具有蠕虫性质,这意味着它可以传播到网络中的所有计算机,无需用户采取任何行动。

最好的防御方法是禁用 RDP,除非有必要时。利用防火墙屏蔽端口 3389 也有帮助。微软最终于 2019 年发布了一个补丁程序来纠正此漏洞,系统管理员务必安装这个补丁程序。

像任何其他程序或协议一样,RDP 也具有其他几个漏洞,大多可通过始终使用协议的最新版本来消除。供应商通常会在他们发布的每个新版本软件中修补漏洞。

2 什么是XRDP

XRDP 使用 Microsoft 的 Remote Desktop Protocol(远程桌面协议,简称 RDP) 提供了一个图形界面以登录到计算机。XRDP 接受来自各种 RDP 客户端的连接。比如:

  • FreeRDP
  • rdesktop
  • KRDC
  • NeutrinoRDP
  • Windows MSTSC (Microsoft Terminal Services Client, aka mstsc.exe)
  • Microsoft Remote Desktop (found on Microsoft Store, which is distinct from MSTSC)

XRDP 主要针对 Linux 操作系统,可以让 Windows,使用其自带的远程桌面,通过 RDP 协议,远程控制装有 XRDP 的 Linux 系统,以实现远程图形化控制。

3 XRDP服务组建

https://github.com/neutrinolabs/xrdp

xrdp——一个开源 RDP 服务器

xrdp使用 Microsoft 远程桌面协议 (RDP) 提供到远程机器的图形登录。xrdp 接受来自各种 RDP 客户端的连接:

  • 自由RDP
  • 桌面
  • 韩国核能发展委员会
  • 中微子RDP
  • Windows MSTSC(Microsoft 终端服务客户端,又名mstsc.exe
  • Microsoft 远程桌面(可在 Microsoft Store 找到,与 MSTSC 不同)

其中许多适用于 Windows、Mac OS、iOS 和/或 Android 的部分或全部版本。

默认情况下,RDP 传输使用 TLS 加密。

Debian下安装XRDP服务

特征

远程桌面访问

  • 从任何地方使用 RDP 连接到 Linux 桌面(需要 xorgxrdp Xorg 模块)
  • 重新连接到现有会话
  • 会话大小调整(连接时和运行中)
  • RDP/VNC 代理(通过 xrdp 连接到另一个 RDP/VNC 服务器)

访问远程资源

支持的平台

xrdp主要针对 GNU/Linux 操作系统。x86(包括 x86-64)和 ARM 处理器是运行 xrdp 最成熟的架构。另请参阅平台支持层

某些组件(例如 xorgxrdp 和 RemoteFX 编解码器)针对使用 SIMD 指令的 x86 进行了特殊优化。因此在 x86 处理器上运行 xrdp 将获得完全加速的体验。

4 Debian下安装XRDP服务

#安装xrdp

sudo apt -y install xrdp

#查看xrdp状态

sudo systemctl status xrdp

看到下面的输出就是成功了。Debian下是关闭防火墙的。因此不需要配置开放端口3389

3389是 xrdp 协议是默认端口。

示意图

Debian下安装XRDP服务

然后用mstsc或者类似客户端软件访问即可。

5 连接时黑屏

连接黑屏问题

只需要编辑 /etc/xrdp/startwm.sh 文件即可:(但是这个文件在redhat上不存在)

  1. 打开文件
sudo vim /etc/xrdp/startwm.sh
  1. 添加配置
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
. $HOME/.profile
  1. 重启xrdp服务
sudo systemctl restart xrdp.service

备注:

  1. 有时候因为访问不同,修改/etc/xrdp/sesman.ini文件中的ListenAddress到0.0.0.0,允许所有访问,不然只有本机可以访问。
  2. 长时间黑屏。需要在客户端耐心等一下。

6 远程连接时显示对应程序

默认是启动桌面,但是可以修改。

在sudo vim /etc/xrdp/startwm.sh 中

/usr/bin/qq 尝试启动的时候就启动qq程序,你可以替换成你的任何程序即可。

见示意截图如下:

Debian下安装XRDP服务

RA/SD 衍生者AI训练营。发布者:chris,转载请注明出处:https://www.shxcj.com/archives/7272

Like (0)
Previous 2024-11-20 4:00 下午
Next 2024-11-20 7:15 下午

相关推荐

发表回复

Please Login to Comment
本文授权以下站点有原版访问授权 https://www.shxcj.com https://www.2img.ai https://www.2video.cn