Windows 10 防火墙 - 如何拒绝所有出站但只允许 Windows 更新?

Windows 10 防火墙 - 如何拒绝所有出站但只允许 Windows 更新?

目标:

  • 仅使用 Windows 10 防火墙
  • 默认阻止所有出站流量
  • 允许 Windows 10 更新
  • 限制允许哪些 svchost 服务通过

我迄今为止全新安装的进度:

  • 默认情况下拒绝出站流量
  • 所有默认规则均已禁用
  • 核心网络 - DHCP-Out:允许
  • svchost TCP(远程端口:80、443)和 svchost UDP(远程端口:53):允许
  • 我想要连接到互联网的程序被允许

使用我当前的配置,Windows 能够成功更新,但所有 svchost 服务(近 200 个)都能够连接到互联网。我想将允许的 svhost 服务数量减少到最低限度。

在另一次尝试减少连接的 svchost 服务时,我为特定的 svchost 服务创建了不同的规则(同时禁用上述通用 svchost 规则),但 Windows 更新不起作用(但我允许的程序可以工作)。我在这次尝试中允许的 svchost 服务是:

  • 后台智能传输服务 (BITS)
  • 客户端许可服务 (ClipSVC)
  • 安全中心
  • 更新 Orchestrator 服务
  • Windows 许可证管理服务
  • Windows 更新服务

我是否需要允许 svchost TCP(远程端口:80、443)和 svchost UDP(远程端口:53),然后为其他每个 svchost 服务手动创建新的阻止规则(基本上反转我尝试过的操作)?

谢谢!

答案1

我也在想办法。“Windows 防火墙控制”的制造商说“在 Windows 7 上,你可以为 svchost.exe 创建基于服务的规则,但不能在 Windows 10 上创建“Windows 防火墙已经退化,无法执行其提供的功能,阻止 svchost 保护下的单个服务。微软每月第二个星期二发布 Windows 更新,间隔大约 24 小时。您可以创建一个任务,每月自动启用 svchost,每天自动启用 svchost 进行防御者更新;(持续 5-10 分钟)或者手动执行。或者创建一个桌面上按需运行的任务的快捷方式

如果您喜欢冒险,您可以阻止所有内容,启用数据包日志记录,监控每个 Windows 更新服务器连接的 IP 地址和端口,然后仅允许 svchost 输出这些特定 IP 地址,这将缩小范围以仅允许 Windows 更新。如果您使用 cidr 格式将最后 3 位数字替换为 .1/24,您将能够访问该子网上的每个 IP(如果它们随时间而变化)。如果您注意到该范围之外的其他 IP 弹出,您就会知道它不是 Windows 更新,我不确定除了手动触发它之外,如何才能准确检测出在 svchost 保护下运行的程序/服务。

以下是使用 Windows 防火墙控制的示例,它是 Windows Defender 防火墙的 GUI。对于 Windows 更新,请使用组策略“传递优化”下载模式,设置为 99,(意味着没有 P2P 或云服务,只有微软服务器;因此您不会获得 1,000,000,000 个不同的 IP)

远程地址:65.55.163.1/24,13.74.179.1/24,191.232.139.1/24,20.36.222.1/24,20.42.23.1/24,191.232.139.2/24,20.36.218.1/24,95.101.0.1/24,95.101.1.1/24,13.78.168.1/24,93.184.221.1/24,13.83.184.1/24,13.107.4.1/24,13.83.148.1/24

这就是 Windows 10。

在此处输入图片描述

相关内容