我正在尝试配置具有高级安全性的 Windows 防火墙,以便在程序尝试发出出站请求时记录并通知我。我之前尝试安装 ZoneAlarm,这在 Windows XP 中对我来说非常有效。但现在,我无法在 Windows 7 上安装 ZoneAlarm。
如果我将所有出站连接设置为自动阻止,当程序尝试执行此操作时,是否可以以某种方式监视日志或获取通知,以便我可以为该程序创建特定规则并阻止它?
更新
我已启用了高级安全 Windows 防火墙控制台属性窗口中提供的所有日志记录选项。但我只在文件中看到日志%systemroot%\system32\LogFiles\Firewall\pfirewall.log
,而没有在事件查看器中看到日志,正如第一个答案所建议的那样。
但是,我看到的日志只告诉我请求或响应的目标 IP 以及连接是被允许还是被阻止。但它没有告诉我它来自哪个可执行文件。我想找出每个被阻止的请求来自的可执行文件的文件路径。到目前为止,我还没能做到。
答案1
你应该能够看到这个事件查看器。首先,您需要调整高级设置控制台:
在事件查看器的左侧窗格中,展开至应用程序和服务日志 -> Microsoft -> Windows -> 高级安全 Windows 防火墙:
在那里,您可以创建自定义视图并将日志过滤为仅出站连接尝试。
答案2
在 Windows 7 和 8 中,您需要首先启用失败连接的审核。
本地计算机策略(运行:
GPEdit.msc
)> 计算机配置> Windows 设置> 安全设置> 本地策略> 审核策略> 审核对象访问:失败
现在断开的连接以及相应的可执行文件名称应显示在:
事件日志 > Windows 日志 > 安全:
- Windows 筛选平台已阻止数据包:[事件 ID:5152]
- Windows 筛选平台已阻止连接:[事件 ID:5157]
在这里,您将找到:
应用程序名称:\device\harddiskvolume2\program files\xyz.exe
答案3
我正在寻找同样的问题,事件查看器(没有事件)和 pfirewall.log 选项(没有违规程序的名称)都无法帮助我识别发生了什么。
环顾四周,我喜欢Windows 防火墙通知程序,它甚至提供了一个显示有问题的程序的 GUI,并允许生成异常规则(您需要在第一次调用时使用 WFN 来创建规则,而不是异常)。
答案4
尝试使用 SysInternals 的 Sysmon 实用程序。它是一个简单的安装程序,并且记录效果非常好。日志将为您提供所有详细信息,包括启动连接的程序、文件路径等。希望对您有所帮助。