A-A+

了解 Windows 防火墙例外

2008年11月13日 学习随笔 暂无评论 阅读 1 次

首次打开 Windows 防火墙或还原 Windows 防火墙默认设置时,所有非请求传入通信在所有网络连接上都将被阻止。这意味着试图在 TCP 或 UDP 端口上侦听通信的任何程序或系统服务将无法接收网络通信。要允许程序和系统服务通过这些端口接收非请求通信,您需要将程序或系统服务添加到 Windows 防火墙例外列表,或者需要确定程序或系统服务使用的端口,然后将所用端口添加到 Windows 防火墙例外列表。将程序、系统服务和端口添加到例外列表是控制 Windows 防火墙允许通过哪些通信的最常用方法。

注意

还可以通过配置“Windows 防火墙: 允许通过验证的 IPSec 旁路”组策略设置,来控制 Windows 防火墙允许通过哪些通信。但是,这不是控制通过 Windows 防火墙的通信的常用方法。

配置例外

可以基于全局或每连接将例外添加到 Windows 防火墙例外列表。全局例外适用于计算机上的所有网络连接,包括您创建的新连接。配置全局 Windows 防火墙例外时建议使用安全配置向导 (SCW)。还可以在“控制面板”的“Windows 防火墙”中使用“例外”选项卡将程序、系统服务和端口的全局例外添加到 Windows 防火墙例外列表。还可以通过 netsh firewall 命令和 Windows 防火墙组策略设置添加程序、系统服务和端口的例外。每连接例外适用于特定网络连接。可以通过在“控制面板”上的“Windows 防火墙”中配置“高级”选项卡上的“网络连接设置”和使用 netsh firewall set portopeningnetsh firewall set icmpsettings 命令来添加系统服务和端口的每连接例外。不能使用 Windows 防火墙组策略设置配置每连接例外。

还可以通过“控制面板”上“Windows 防火墙”中的“例外”选项卡、netsh firewall set 命令或 Windows 防火墙组策略设置启用或禁用预配置的 Windows 防火墙例外,来配置例外。下表列出预配置的例外,默认情况下,它们都已禁用:

 
例外 描述

文件和打印机共享

打开 TCP 端口 139 和 445 以及 UDP 端口 137 和 138。允许计算机接收向共享文件、文件夹和打印机传送的非请求通信。

远程桌面

打开 TCP 端口 3389。允许使用“远程桌面连接”功能远程管理计算机。

UPnP 框架

打开 TCP 端口 2869 和 UDP 端口 1900。允许计算机从其他计算机和设备接收 UPnP 发现请求。

远程管理

打开 TCP 端口 135 和 445。允许 Svchost.exe 和 Lsass.exe 接收非请求传入通信,允许主持的服务打开更多动态分配的端口,通常端口号范围是从 1024 到 1034。允许使用诸如 Microsoft 管理控制台 (MMC) 和 Windows Management Instrumentation (WMI) 等管理工具远程管理计算机。

ICMP

包括一套 Internet 控制消息协议 (ICMP) 例外。ICMP 例外允许您控制计算机响应和发送 ICMP 消息(包括 ping 命令使用的消息)的方式。

 

注意

可使用 Windows 防火墙应用程序编程接口 (API) 通过编程方式来配置 Windows 防火墙例外。

降低与例外相关的风险

每次将程序、系统服务或端口添加到例外列表时,都会使计算机更容易受到攻击。常见的网络攻击使用端口扫描软件识别端口处于打开和未受保护状态的计算机。将很多程序、系统服务和端口添加到例外列表,将防火墙的用途失效,并增加了计算机的攻击面。在为多个不同角色配置服务器并且需要打开许多端口以满足每个服务器角色的要求时,通常会发生该问题。您应该仔细评估需要您打开许多端口的任何服务器的设计。在您的组织内,为许多角色配置的或被配置为提供许多服务的服务器可能是关键故障点,通常表明基础结构设计不完善。

要降低安全风险,请遵照以下准则:

仅在需要例外时创建例外

如果您认为某个程序或系统服务可能需要通过某个端口接收非请求传入通信,那么只有在您确定该应用程序或系统服务已试图侦听非请求传入通信后,才可以将该程序或系统服务添加到例外列表。默认情况下,程序试图侦听非请求通信时,Windows 防火墙会显示通知。还可以使用安全事件日志确定系统服务是否已试图侦听非请求通信。

对于不认识的程序从不允许例外。

如果 Windows 防火墙通知您某个程序已试图侦听非请求通信,在将该程序添加到例外列表之前,请检查该程序的名称和可执行文件 (.exe)。同样,如果使用安全事件日志识别已试图侦听非请求通信的系统服务,在为该系统服务向例外列表添加端口之前,请确定该服务是合法的系统服务。

不再需要例外时删除例外

在服务器上将程序、系统服务或端口添加到例外列表后,如果更改该服务器的角色或重新配置该服务器上的服务和应用程序,请确保更新例外列表,并删除已不必要的所有例外。

创建例外的最佳操作

除了通常用于管理例外的准则以外,在将程序、系统服务或端口添加到例外列表时,还请使用下列最佳操作。

添加程序

在尝试添加端口之前,始终先尝试将程序(.exe 文件)或在 .exe 文件内运行的系统服务添加到例外列表。将程序添加到例外列表时,Windows 防火墙将动态地打开该程序所需的端口。该程序运行时,Windows 防火墙允许传入的通信通过所需的端口;程序不运行时,Windows 防火墙将阻止发送到这些端口的所有传入通信。

添加系统服务

如果系统服务在 Svchost.exe 内运行,请不要将该系统服务添加到例外列表。将 Svchost.exe 添加到例外列表就是允许在 Svchost.exe 的每个实例内运行的任何系统服务都接收非请求传入通信。只有当系统服务在 .exe 文件中运行时或者您能够启用预配置的 Windows 防火墙系统服务例外(例如“UPnP 框架”例外或“文件和打印机共享”例外)时,才应该将系统服务添加到例外列表。

添加端口

将端口添加到例外列表应当是最后的手段。将端口添加到例外列表时,不管是否有程序或系统服务在该端口上侦听传入的通信,Windows 防火墙都允许传入的通信通过该端口。

给我留言

Copyright © 浩然东方 保留所有权利.   Theme  Ality 07032740

用户登录