RDP 协议

1 阅读2分钟

RDP(Remote Desktop Protocol,远程桌面协议)是微软的远程桌面协议,端口 3389。 基于 ITU-T T.120 系列协议(T.123/T.125/T.128,微软的 T-Share 实现)扩展而来,支持多通道传输 + TLS 加密。

1. 网络拓扑

┌─────────────────────────────────────────────────────────────────┐
│                     RDP 远程桌面拓扑                             │
│                                                                 │
│  ┌──────────────┐    TCP 3389 / UDP 3389    ┌────────────────┐ │
│  │ RDP 客户端    │ ─────────────────────────→ │ RDP 服务器      │ │
│  │ (mstsc.exe)  │ ←── 增量图形帧 ─────────── │ (Windows 主机)  │ │
│  │              │                            │                │ │
│  │ ┌──────────┐ │    虚拟通道复用             │ ┌────────────┐ │ │
│  │ │ 显示渲染  │ │ ←── 通道0: 图形 ────────── │ │ 显示捕获    │ │ │
│  │ │ 剪贴板    │ │ ←── 通道1: 剪贴板 ──────── │ │ 剪贴板服务  │ │ │
│  │ │ 文件传输  │ │ ←── 通道2: 文件 ────────── │ │ 文件系统    │ │ │
│  │ │ 音频      │ │ ←── 通道3: 音频 ────────── │ │ 音频设备    │ │ │
│  │ │ 打印      │ │ ←── 通道4: 打印 ────────── │ │ 打印机      │ │ │
│  │ └──────────┘ │                            │ └────────────┘ │ │
│  └──────────────┘                            └────────────────┘ │
│                                                                 │
│  NLA 认证流程(认证先于会话):                                  │
│  客户端 ── CredSSP/NTLM ──→ 服务器                              │
│    │                              │                             │
│    │  ① 认证(无登录界面暴露)     │                             │
│    │ ←── 认证成功 ──────────────  │                             │
│    │                              │                             │
│    │  ② 建立 RDP 会话             │                             │
│    │ ── TLS 加密通道 ──────────→  │                             │
│    │ ←── 图形帧/输入流 ──────────  │                             │
│                                                                 │
│  无 NLA(危险):登录界面先暴露 → 可被 BlueKeep 类攻击           │
│  有 NLA(安全):认证先完成 → 登录界面不暴露给未认证者           │
└─────────────────────────────────────────────────────────────────┘

2. 设计哲学

RDP 的核心设计是高效传输图形界面:

  1. 增量编码:只传变化的屏幕区域
  2. 压缩:RDP 6.0+ 使用 NSCodec/RFX 算法
  3. 虚拟通道:剪贴板/文件/音频/打印多通道复用
  4. UDP 传输:RDP 8.0+ 数据走 UDP 降低延迟

专家视角:RDP 的UDP 传输(RDP 8.0+)是重要演进——TCP 的重传和有序性在远程桌面场景是负担(旧帧重传无意义),UDP + 应用层可靠性更高效。

3. 安全层

层说明
标准安全RDP 加密(弱,已不推荐)
Enhanced (TLS)TLS 1.2 加密(推荐)
NLA网络层认证(CredSSP),认证前即验证

专家视角:NLA(Network Level Authentication)是关键安全配置——在显示登录界面前就完成认证,防止"蓝屏漏洞"类攻击(如 BlueKeep CVE-2019-0708)。生产环境必须启用 NLA。