什么是远程桌面协议?
- IAM 词汇表
- 什么是远程桌面协议?
远程桌面协议 (RDP) 是一种网络通信协议,允许用户以安全的方式远程连接电脑。除了使 IT 管理员和 DevOps 人员能够执行远程系统维护和修复之外,RDP 还允许非技术最终用户远程访问其工作站。
RDP 最初由 Microsoft 开发,并预装在大多数 Windows 机器上。此外,Mac OS、Apple iOS、Android 和 Linux/Unix 系统均有包括开源版本在内的 RDP 客户端。例如,Java 远程桌面协议是适用于 Windows 终端服务器的开源 Java RDP 客户端,Apple 远程桌面 (ARD) 则是面向 Mac 的专有解决方案。
远程桌面协议的工作原理是什么?
RDP 有时会与云计算混淆,因为这两种技术都支持远程工作。实际上,RDP 和云计算的相似之处就结束于远程访问。
在云环境中,用户访问的是存储在云服务器上的文件和应用,而不是其台式电脑的硬盘。相比之下,RDP 直接将用户与台式电脑连接起来,允许他们访问文件和运行应用,就好像他们就坐在那台机器前一样。从这个角度来看,使用 RDP 连接远程电脑工作就像使用遥控器驾驶无人机一样,只是 RDP 通过互联网传输数据,而不是使用无线电频率。
RDP 要求用户在连接使用的机器上安装客户端软件,并在所连接的机器上安装服务器软件。连接到远程机器后,远程用户将看到相同的桌面图形用户界面 (GUI),并可以像在本地工作时一样访问文件和应用。
RDP 客户端和服务器软件通过网络端口 3389 进行通信,使用 TCP/IP 传输协议传输鼠标移动、键盘输入和其他数据。RDP 会对传输中的所有数据进行加密,以防被威胁行为者拦截。由于有 GUI,客户端和服务器的通信高度不对称。虽然客户端只传输鼠标和键盘输入(其中包含相对较少的数据),但服务器必须传输数据密集的图形用户界面。
RDP 的用途是什么?
即使是在基于云的世界中,RDP 也非常适合许多用例。以下是一些最普遍的用例:
- 由于 RDP 可将用户直接连接到特定机器,因此管理员、服务台和技术支持人员广泛使用它来设置、维护、检测和修复电脑和服务器。
- RDP 在连接到服务器时提供现成的 GUI,因此管理员可以选择通过 GUI 而不是命令行界面 (CLI) 来完成工作。
- RDP 使用户能够使用移动设备或低端电脑访问具有更强计算能力的远程机器。
- 销售和营销人员可以使用 RDP 来演示通常只能在本地访问的流程或软件应用。
- RDP 和云计算可以一起使用。Microsoft Entra ID (Azure) 客户可使用 RDP 访问其 Entra ID (Azure) 云实例上的虚拟机。一些组织使用 RDP 使远程工作人员能够通过虚拟桌面界面 (VDI) 访问云环境,这对于非技术用户来说可能更简单。
RDP 的优点和缺点是什么?
由于 RDP 是直接连接本地服务器和电脑,因此它支持具有旧的本地基础设施(包括混合云环境)的组织进行远程工作。同样道理,当远程用户必须访问出于法律或合规原因必须存储在本地的数据时,RDP 也是一个不错的选项。IT 和安全管理员可以将特定机器的 RDP 连接限制为一次只能连接几个用户(甚至一个用户)。
然而,尽管 RDP 有很多好处,但它确实也有一些缺点,包括:
- 由于必须对用户键盘和鼠标活动进行加密,然后通过互联网传输到远程机器,因此 RDP 连接会遇到延迟问题,尤其是在客户端电脑的互联网连接速度较慢的情况下。
- RDP 要求在客户端和服务器上都使用软件。虽然大多数版本的 Windows 中都预装了此软件,但仍必须对其进行配置和维护。如果 RDP 设置不当,软件更新未及时应用,则可能会导致严重的安全问题。
- RDP 容易受到许多安全漏洞的影响,我们将在下一节进行讨论。
RDP 安全漏洞
RDP 最大的两个安全漏洞涉及弱登录凭据和端口 3389 暴露于互联网。
员工使用自己的设备时,会存在使用弱密码,不安全地存储密码,并在多个帐户中重复使用密码。这包括用于 RDP 连接的密码。泄露的 RDP 凭据是勒索软件攻击的主要媒介。这个问题非常普遍,以至于有一个流行的社交媒体梗暗讽 RDP 实际上是表示“勒索软件部署协议 (Ransomware Deployment Protocol)”。
由于 RDP 连接默认使用网络端口 3389,因此威胁行为者会将此端口作为在途攻击(亦称为中间人攻击)的目标。在途攻击中,威胁行为者处于客户端和服务器之间,从而得以拦截、读取和更改往返通信。
如何保护 RDP
首先,确定您的组织是否真的需要使用 RDP,还是更适合选择 RDP 替代方案,例如虚拟网络计算 (VNC),这是一种与平台无关的图形桌面共享系统。如果 RDP 是您的最佳选择,则应将访问权限仅限于绝对需要的用户,并锁定对端口 3389 的访问。保护端口 3389 的选项包括:
- 配置防火墙规则,以便只有允许列表中的 IP 才能访问端口 3389。
- 要求用户在登录到 RDP 之前先连接到虚拟专用网络 (VPN)。
- 作为 VPN 的替代方案,要求用户通过远程桌面网关(例如 Keeper Connection Manager)连接到 RDP。除了比 VPN 更易于使用和更少延迟之外,远程桌面网关还具有会话记录功能,并使管理员能够强制使用多步验证 (MFA)。
全面的密码安全与防范基于端口的攻击同样重要:
- 要求员工为每个帐户(而不仅仅是 RDP)使用高强度的唯一密码,并要求使用多步验证。部署 Keeper 之类的企业密码管理程序 (EPM) 来强制执行这些策略。
- 考虑“屏蔽”RDP 密码。这是密码管理程序(包括 Keeper)中的一项功能,允许用户在登录表单中自动填充密码,但用户无法查看密码。
- 请勿使用“Administrator”、“Admin”或同等用户名。由于管理员用户具有最高特权,许多自动密码破解器会试图猜测其密码。
- 可以使用速度限制来防御暴力密码攻击。速度限制在数次错误猜测后阻止用户,从而防止密码破解机器人在短时间内进行数百或数千次快速猜测密码的尝试。