以下是针对 Windows Server RDP 安全加固中基于 IP 地址的访问控制策略的详细配置指南,涵盖原理、操作步骤及扩展优化建议:
通过限制 RDP(Remote Desktop Protocol,默认端口 3389)的访问来源 IP,仅允许可信 IP 地址或 IP 段连接到服务器,降低以下风险:
暴力破解攻击:阻止非法 IP 尝试登录。
零日漏洞利用:缩小攻击面,防止未授权访问。
内部横向渗透:限制内部网络中的异常访问行为。
步骤 1:创建入站规则
打开 Windows Defender 防火墙 → 高级安全设置。
右键点击 入站规则 → 新建规则 → 选择 端口 → 协议类型选择 TCP → 输入端口 3389(若修改过默认端口,需填入实际端口)。
选择 允许连接 → 勾选所有配置文件(域、专用、公用)。
步骤 2:限制允许的 IP 地址范围4. 在规则创建向导的 作用域 页面:
远程 IP 地址 → 选择 下列 IP 地址 → 添加允许的 单个 IP 或 IP 段(如 192.168.1.0/24)。
示例:仅允许本地局域网 192.168.1.0/24 和特定公网 IP 203.0.113.5。
步骤 3:命名规则并启用5. 指定规则名称(如 RDP_IP_Restrict)→ 完成配置。
验证规则:
使用不在白名单中的 IP 尝试 RDP 连接,应显示 “连接被拒绝” 或 “超时”。
打开 组策略管理(gpmc.msc) → 编辑目标 GPO。
导航至:计算机配置 → 策略 → Windows 设置 → 安全设置 → 高级安全 Windows Defender 防火墙 → 入站规则
参照方法 1 创建规则,并指定允许的 IP 范围。
通过 gpupdate /force 强制刷新策略。
通过注册表修改端口(降低扫描器识别风险):
powershell 复制Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name "PortNumber" -Value 3390
同步更新防火墙规则中的端口号。
强制要求客户端支持 NLA(需 Windows 7+ 或支持 CredSSP 的客户端):
powershell 复制Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name "UserAuthentication" -Value 1
在 本地安全策略 → 用户权限分配 中,移除 “允许通过远程桌面服务登录” 中的非必要用户组(如 Users)。
启用 Windows 事件日志(事件 ID 4625 记录失败登录尝试)。
使用工具(如 ELK、Splunk)分析日志,设置阈值告警(如 5 分钟内 3 次失败尝试)。
误封锁自身:确保规则中包含管理员维护 IP,或保留本地控制台访问权限。
规则冲突:检查防火墙规则优先级(规则按顺序匹配,需确保限制规则未被其他规则覆盖)。
端口冲突:确认 RDP 端口未被其他服务占用(netstat -ano | findstr :3389)。
通过 IP 地址访问控制结合端口修改、NLA 认证和日志监控,可显著提升 RDP 安全性。建议定期审计 IP 白名单,并在变更网络环境时提前更新规则,避免服务中断。对于高安全需求场景,可进一步部署 VPN 或跳板机作为前置访问层。