了解 Windows 防火墙例外
首次打开 Windows 防火墙或还原 Windows 防火墙默认设置时,所有非请求传入通信在所有网络连接上都将被阻止。这意味着试图在 TCP 或 UDP 端口上侦听通信的任何程序或系统服务将无法接收网络通信。要允许程序和系统服务通过这些端口接收非请求通信,您需要将程序或系统服务添加到 Windows 防火墙例外列表,或者需要确定程序或系统服务使用的端口,然后将所用端口添加到 Windows 防火墙例外列表。将程序、系统服务和端口添加到例外列表是控制 Windows 防火墙允许通过哪些通信的最常用方法。 注意 还可以通过配置“Windows 防火墙: 允许通过验证的 IPSec 旁路”组策略设置,来控制 Windows 防火墙允许通过哪些通信。但是,这不是控制通过 Windows 防火墙的通信的常用方法。 配置例外可以基于全局或每连接将例外添加到 Windows 防火墙例外列表。全局例外适用于计算机上的所有网络连接,包括您创建的新连接。配置全局 Windows 防火墙例外时建议使用安全配置向导 (SCW)。还可以在“控制面板”的“Windows 防火墙”中使用“例外”选项卡将程序、系统服务和端口的全局例外添加到 Windows 防火墙例外列表。还可以通过 netsh firewall 命令和 Windows 防火墙组策略设置添加程序、系统服务和端口的例外。每连接例外适用于特定网络连接。可以通过在“控制面板”上的“Windows 防火墙”中配置“高级”选项卡上的“网络连接设置”和使用 netsh firewall set portopening 和 netsh firewall set icmpsettings 命令来添加系统服务和端口的每连接例外。不能使用 Windows 防火墙组策略设置配置每连接例外。 还可以通过“控制面板”上“Windows 防火墙”中的“例外”选项卡、netsh firewall set 命令或 Windows 防火墙组策略设置启用或禁用预配置的 Windows 防火墙例外,来配置例外。下表列出预配置的例外,默认情况下,它们都已禁用:
注意 可使用 Windows 防火墙应用程序编程接口 (API) 通过编程方式来配置 Windows 防火墙例外。 降低与例外相关的风险每次将程序、系统服务或端口添加到例外列表时,都会使计算机更容易受到攻击。常见的网络攻击使用端口扫描软件识别端口处于打开和未受保护状态的计算机。将很多程序、系统服务和端口添加到例外列表,将防火墙的用途失效,并增加了计算机的攻击面。在为多个不同角色配置服务器并且需要打开许多端口以满足每个服务器角色的要求时,通常会发生该问题。您应该仔细评估需要您打开许多端口的任何服务器的设计。在您的组织内,为许多角色配置的或被配置为提供许多服务的服务器可能是关键故障点,通常表明基础结构设计不完善。 要降低安全风险,请遵照以下准则: 仅在需要例外时创建例外如果您认为某个程序或系统服务可能需要通过某个端口接收非请求传入通信,那么只有在您确定该应用程序或系统服务已试图侦听非请求传入通信后,才可以将该程序或系统服务添加到例外列表。默认情况下,程序试图侦听非请求通信时,Windows 防火墙会显示通知。还可以使用安全事件日志确定系统服务是否已试图侦听非请求通信。 对于不认识的程序从不允许例外。如果 Windows 防火墙通知您某个程序已试图侦听非请求通信,在将该程序添加到例外列表之前,请检查该程序的名称和可执行文件 (.exe)。同样,如果使用安全事件日志识别已试图侦听非请求通信的系统服务,在为该系统服务向例外列表添加端口之前,请确定该服务是合法的系统服务。 不再需要例外时删除例外在服务器上将程序、系统服务或端口添加到例外列表后,如果更改该服务器的角色或重新配置该服务器上的服务和应用程序,请确保更新例外列表,并删除已不必要的所有例外。 创建例外的最佳操作除了通常用于管理例外的准则以外,在将程序、系统服务或端口添加到例外列表时,还请使用下列最佳操作。 添加程序在尝试添加端口之前,始终先尝试将程序(.exe 文件)或在 .exe 文件内运行的系统服务添加到例外列表。将程序添加到例外列表时,Windows 防火墙将动态地打开该程序所需的端口。该程序运行时,Windows 防火墙允许传入的通信通过所需的端口;程序不运行时,Windows 防火墙将阻止发送到这些端口的所有传入通信。 添加系统服务如果系统服务在 Svchost.exe 内运行,请不要将该系统服务添加到例外列表。将 Svchost.exe 添加到例外列表就是允许在 Svchost.exe 的每个实例内运行的任何系统服务都接收非请求传入通信。只有当系统服务在 .exe 文件中运行时或者您能够启用预配置的 Windows 防火墙系统服务例外(例如“UPnP 框架”例外或“文件和打印机共享”例外)时,才应该将系统服务添加到例外列表。 添加端口将端口添加到例外列表应当是最后的手段。将端口添加到例外列表时,不管是否有程序或系统服务在该端口上侦听传入的通信,Windows 防火墙都允许传入的通信通过该端口。 |