目录

介绍

远程桌面网关(RD 网关)通过 HTTPS 保护 RDP,但仅靠密码无法阻止网络钓鱼、凭证填充或暴力攻击。添加多因素身份验证(MFA)可以通过在建立会话之前验证用户身份来填补这一空白。在本指南中,您将学习 MFA 如何与 RD 网关和 NPS 集成、确切的配置步骤,以及保持您的部署在规模上可靠的操作提示。

TSplus远程访问免费试用

终极的Citrix/RDS替代方案,用于桌面/应用访问。安全、经济高效、本地/云端

为什么 RD 网关需要 MFA?

RD网关集中管理和审计 remote access 然而,它无法单独中和被盗的凭据。凭据填充和网络钓鱼常常绕过单因素防御,尤其是在存在遗留协议和广泛暴露的情况下。在RDG身份验证层强制实施多因素身份验证可以阻止大多数常见攻击,并显著提高针对性入侵的成本。

对于面向互联网的RDP,主要风险包括密码重用、暴力破解尝试、令牌重放和通过配置错误的TLS进行的会话劫持。MFA通过要求一个抵抗凭证重放的第二因素来应对这些风险。

许多框架——NIST 800-63、ISO/IEC 27001 控制以及各种网络保险基准——隐含或明确地期望使用 MFA。 remote access 在RDG上实施多因素身份验证(MFA)满足了控制意图和审计员的期望,而无需重新构建您的交付架构。

多因素身份验证如何适应远程桌面网关架构?

控制平面很简单:用户通过 RDG 启动 RDP;RDG 通过 RADIUS 向 NPS 发送身份验证;NPS 评估策略并调用 MFA 提供者;成功后,NPS 返回 Access-Accept,RDG 完成连接。对内部资产的授权仍然受 RD CAP/RD RAP 的管理,因此身份验证是附加的,而不是破坏性的。

  • 身份验证流程和决策点
  • 远程用户的用户体验考虑

身份验证流程和决策点

关键决策点包括 MFA 逻辑运行的位置(带有 Entra MFA 扩展的 NPS 或第三方 RADIUS 代理)、允许哪些因素以及如何处理失败。集中决策在 NPS 上简化了审计和变更控制。对于大型环境,考虑使用专用的 NPS 对来将策略评估与 RDG 容量解耦,并简化维护窗口。

远程用户的用户体验考虑

推送和基于应用的提示提供了最可靠的体验。 RDP 凭证流程。没有次级提示用户界面的情况下,短信和语音可能会失败。教育用户有关预期提示、超时和拒绝原因,以减少支持票。在高延迟地区,适度延长挑战超时时间,以避免错误失败而不掩盖真正的滥用。

什么是前提条件清单?

一个干净的设置始于经过验证的平台角色和身份卫生。确保 RDG 在受支持的 Windows Server 上稳定运行,并规划回滚路径。确认目录组以限制用户访问,并验证管理员能够区分政策变更与证书或网络问题。

  • 角色、端口和证书
  • 目录和身份准备

角色、端口和证书

在具有可靠 AD 连接的服务器上部署 NPS 角色。标准化为 RADIUS UDP 1812/1813 并记录任何遗留的 1645/1646 使用。在 RDG 上,为 HTTPS 监听器安装一个公开信任的 TLS 证书,并移除弱协议和密码。将共享密钥记录在保险库中,而不是在票据或桌面笔记中。

目录和身份准备

为RDG允许的用户和管理员创建专用的AD组;避免使用“域用户”范围。如果使用Entra ID,请验证用户是否已注册MFA。对于第三方提供商,先同步身份并测试一个试点用户的端到端体验,然后再进行大规模注册。确保RDG、NPS和MFA平台之间的用户名格式(UPN与sAMAccountName)一致,以避免静默不匹配。

RD Gateway的MFA逐步配置是什么?

  • 安装和注册 NPS
  • 将 RD 网关添加为 RADIUS 客户端
  • 创建 NPS 策略 (CRP & NP)
  • 安装 MFA 扩展或第三方代理
  • 将 RD 网关指向中央 NPS (RD CAP 存储)
  • 测试多因素身份验证端到端

步骤 1 — 安装和注册 NPS

安装网络策略和访问服务角色,打开 nps.msc 并在Active Directory中注册NPS,以便它可以读取用户属性。验证该 网络策略服务器 (IAS) 服务正在运行,服务器可以以低延迟访问域控制器。请注意 NPS FQDN/IP 以便于日志和策略。

可选命令:

安装-WindowsFeature NPAS -IncludeManagementTools nps.msc

运行 netsh nps 添加注册服务器

Get-Service IAS | Start-Service  
Test-Connection -Count 4 -ComputerName (Get-ADDomainController -Discover).HostName

步骤 2 — 将 RD 网关添加为 RADIUS 客户端

在 RADIUS 客户端中,通过 IP/FQDN 添加您的 RD 网关,设置一个友好的名称(例如, RDG01 ),并使用一个安全的、长的共享密钥。在 NPS 服务器上打开 UDP 1812/1813 并确认可达性。如果您运行多个 RDG,请逐个添加每个(子网定义是可能的,但更容易出现范围错误)。

可选命令

添加客户: netsh nps add client name="RDG01" address=10.0.10.20 sharedsecret="VeryLongVaultedSecret" vendor=standard enable=YES

netsh advfirewall firewall add rule name="RADIUS Auth (UDP 1812)" dir=in action=allow protocol=UDP localport=1812  
netsh advfirewall firewall add rule name="RADIUS Acct (UDP 1813)" dir=in action=allow protocol=UDP localport=1813

步骤 3 — 创建 NPS 策略 (CRP & NP)

创建一个连接请求策略,范围为您的 RDG 客户端 IPv4 地址。选择在此服务器上进行身份验证(通过 NPS 扩展进行 Microsoft Entra MFA)或转发到远程 RADIUS(用于第三方 MFA 代理)。然后创建一个包含您的 AD 组的网络策略(例如, GRP_RDG_用户 ) 访问权限已授予。确保这两个政策高于通用规则。

可选命令

# 验证用户是否在允许的组中
Get-ADUser user1 -Properties memberOf |
  Select-Object -ExpandProperty memberOf |
  Where-Object { $_ -like "*GRP_RDG_Users*" }

导出政策快照以供参考: reg export "HKLM\SYSTEM\CurrentControlSet\Services\IAS\Policy" C:\NPS-Policy.reg /y

步骤 4 — 安装 MFA 扩展或第三方代理

对于 Microsoft Entra MFA,安装 NPS 扩展,运行租户绑定脚本,并重启 NPS。确认用户已注册 MFA,并优先使用推送/应用方法。对于第三方 MFA,安装供应商的 RADIUS 代理/代理程序,配置端点/共享密钥,并将您的 CRP 指向该远程组。

可选命令

# Entra MFA NPS 扩展绑定
Set-Location "C:\Program Files\Microsoft\AzureMfa\"
.\AzureMfaNpsExtnConfigSetup.ps1
Restart-Service IAS
# 有用的日志开关 (0–3)  
New-Item -Path HKLM:\SOFTWARE\Microsoft\AzureMfa -Force | Out-Null  
New-ItemProperty HKLM:\SOFTWARE\Microsoft\AzureMfa -Name LOG_LEVEL -Value 2 -PropertyType DWord -Force | Out-Null

配置远程RADIUS组和服务器: netsh nps add remoteradiusservergroup name="MFA-VENDOR"
netsh nps add remoteradiusserver name="MFA-VENDOR" address=10.0.20.50 authport=1812 sharedsecret="AnotherVaultedSecret"

步骤 5 — 将 RD 网关指向中央 NPS (RD CAP 存储)

在 RD 网关服务器上,将 RD CAP 存储设置为运行 NPS 的中央服务器,添加 NPS 主机 + 共享密钥,并验证连接。将 RD CAP 对齐到您允许的用户组,并将 RD RAP 对齐到特定的计算机/集合。如果 MFA 成功但访问失败,请首先检查 RAP 范围。

第6步 — 端到端测试多因素身份验证

从外部客户端,通过 RDG 连接到已知主机并确认一个 MFA 提示,NPS 6272(访问被授予)和成功的会话。还要测试负路径(不在组中、未注册、错误因素、过期令牌)以验证错误清晰度和支持准备情况。

MFA在RD网关的故障排除手册是什么?

故障排除在分离网络、策略和身份层时最快。首先检查RADIUS可达性和端口,然后验证策略匹配,接着审查MFA注册和因素类型。保持一个具有受控条件的测试账户,以便在变更窗口期间一致地重现结果。

  • 无提示、循环或超时
  • 策略匹配与组范围
  • 实际可用的日志记录和遥测
  • 安全加固与操作最佳实践
  • 边界、TLS 和最小权限
  • 监控、警报和变更控制
  • 韧性与恢复

无提示、循环或超时

没有提示通常表示政策顺序或多因素身份验证注册的缺口。循环表明共享密钥不匹配或NPS与代理之间的转发递归。超时通常指向被阻止的UDP 1812/1813、不对称路由或过于激进的IDS/IPS检查。暂时增加日志详细程度以确认哪个跳点失败。

策略匹配与组范围

确认连接请求策略针对RDG客户端,并在任何通用规则之前生效。在网络策略中,验证确切的AD组和组嵌套行为;某些环境需要令牌膨胀缓解或直接成员资格。注意UPN和NT风格名称之间的用户名规范化问题。

实际可用的日志记录和遥测

使用 NPS 会计进行关联,并保持 RDG 操作日志启用。从您的 MFA 平台,查看每个用户的提示、拒绝和地理/IP 模式。建立一个轻量级仪表板:身份验证量、失败率、主要失败原因和平均挑战时间。这些指标指导容量和 安全性 调优。

安全加固与操作最佳实践

MFA是必要的,但不够充分。将其与网络分段、现代TLS、最小权限和强监控结合起来。保持一个简短的、强制执行的基线——加固只有在一致应用并在补丁和升级后进行验证时才有效。

边界、TLS 和最小权限

将RDG放置在一个加固的DMZ段中,仅允许必要的流量进入LAN。对RDG使用受信任的公共证书并禁用遗留功能。 TLS 和弱加密算法。通过专用的AD组限制RDG访问;避免广泛的权限,并确保RD RAP仅映射用户实际需要的系统和端口。

监控、警报和变更控制

在身份验证失败、异常地理位置或每个用户的重复提示上发出警报。记录NPS、RDG和MFA平台上的配置更改,并保留审批记录。将策略视为代码:在源控制中跟踪更改,或至少在变更登记中记录,并在生产切换之前在暂存环境中进行测试。

韧性与恢复

冗余运行 NPS 并配置 RDG 以引用多个 RADIUS 服务器。记录每个组件的故障开放与故障关闭行为;外部访问默认设置为故障关闭。备份 NPS 配置、RDG 策略和 MFA 设置;排练恢复,包括证书更换和重建后 MFA 扩展或代理的重新注册。

结论

将 MFA 添加到 RD 网关关闭了面向互联网的 RDP 中最大的漏洞:凭据滥用。通过在 NPS 上集中策略并集成 Entra MFA 或第三方 RADIUS 提供商,您可以在不干扰 RD CAP/RD RAP 模型的情况下强制执行强身份验证。通过有针对性的测试进行验证,持续监控,并将 MFA 与强化的 TLS、最小权限和弹性的 NPS/RDG 设计相结合。

TSplus远程访问免费试用

终极的Citrix/RDS替代方案,用于桌面/应用访问。安全、经济高效、本地/云端

进一步阅读

back to top of the page icon