如何重新触发“Windows防火墙已阻止...”消息?


30

我运行了一些程序,它弹出了Windows防火墙通知。我没想到并点击了“取消”。

现在我的程序因网络错误而崩溃。

如何重新启用此消息才能按“允许”按钮?

UPDATE

注意:问题不是关于如何向fireall添加排除项,因为我不知道程序的名称

想象一下:我运行了一些脚本。这个脚本运行了一些其他脚本,其中一些脚本导致另一个程序运行。其中一些程序触发了防火墙消息,我忽略了。

现在这个程序被阻止了。当我再次运行脚本时,我发现它有故障,没有任何混乱。

我不知道,阻止了什么程序。

问题是要么找到它,要么以某种方式重新询问。




1
我投票将此问题视为非主题,因为如果没有作者知道程序的名称,作者就没有可能采取任何步骤来重新显示通知,因为存在当前的异常必须由作者手动删除该应用程序。正因为如此,这个问题目前“过于宽泛”。 如果这个问题被关闭,我将删除我的答案。
Ramhound 2016年

“例如,可以通过添加的日期和时间对规则进行排序,以此方式来查找排除。” - Windows防火墙没有此功能,因此本示例不太现实。
Ramhound 2016年

2
“事件查看器中可能会记录防火墙警告。” - 您可以检查事件查看器以确定您阻止了哪个应用程序,然后使用该信息添加允许例外。添加该程序的允许例外是您点击取消的所有通知。
Ramhound

Answers:


33

如何找出被阻止的程序?

“防火墙”规则集的更改将记录在“应用程序和服务”事件日志中。

您可以检查此日志(包括事件的日期/时间),以查看在安装此程序时添加了哪些规则。

使用此信息,您可以删除规则或在防火墙中创建适当的例外。


在事件查看器中查看防火墙和IPsec事件

在事件查看器中查看具有高级安全性的Windows防火墙的事件

  1. 事件查看器作为计算机管理的一部分提供。单击“开始”,右键单击“计算机”,然后单击“管理”。在系统工具下,单击事件查看器。

  2. 在导航树中,展开“事件查看器”,展开“应用程序和服务”,展开“Microsoft”,展开“Windows”,然后展开“高级安全Windows防火墙”。

  3. 提供的操作事件有四种观点:

    • ConnectionSecurity。此日志维护与IPsec规则和设置配置相关的事件。例如,添加或删除连接安全规则或修改IPsec的设置时,会在此处添加事件。

    • ConnectionSecurityVerbose。此日志维护与IPsec引擎的运行状态相关的事件。例如,当连接安全规则变为活动状态或添加或删除加密设置时,会在此处添加事件。默认情况下禁用此日志。若要启用此日志,请右键单击“ConnectionSecurityVerbose”,然后单击“启用日志”。

    • 防火墙。此日志维护与Windows防火墙配置相关的事件。例如,添加,删除或修改规则时,或者当网络接口更改其配置文件时,会在此处添加事件。

    • FirewallVerbose。此日志维护与防火墙的运行状态相关的事件。例如,当防火墙规则变为活动状态或更改配置文件的设置时,会在此处添加事件。默认情况下禁用此日志。要启用此日志,请右键单击“FirewallVerbose”,然后单击“启用日志”。

  4. 每个事件都包含一个“常规”选项卡,用于汇总事件中包含的信息。有关事件的更多信息,请单击“事件日志联机帮助”以在Windows Server技术库中打开包含详细信息和说明性指导的网页。

    该事件还包括一个“详细信息”选项卡,用于显示与事件关联的原始数据。您可以通过选择文本(CTRL + A选择全部)然后按CTRL-C复制并粘贴详细信息选项卡中的信息。

查看事件查看器中的防火墙和IPsec事件


添加规则时会触发什么事件?

4946:已对Windows防火墙例外列表进行了更改。增加了一条规则。

例:

A change has been made to Windows Firewall exception list. A rule was added.

Profile Changed: All
Added Rule:
   Rule ID: DNSSrv-UDP-Out
   Rule Name: @dns.exe,-1005

Windows安全日志事件ID 4946


进一步阅读


16

在注册表中,防火墙规则列表保存在此密钥中:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules

当新程序尝试开始侦听时,会自动为其创建一对Windows防火墙规则(一个TCP,一个UDP),根据用户为响应该对话框而选择的内容,“允许”或“阻止”。方便地,以这种方式创建的规则的值名称始终以相同的字符串开头:TCP Query UserUDP Query User

一些注册表项

GUID之后是可执行文件的完整路径。在数据开始附近给出给定规则是“允许”还是“阻止”。如果单击“取消”,则规则将被阻止。一旦确定哪个可执行文件可能是您的程序,删除一对注册表项(TCP和UDP)并重新启动Windows防火墙服务(MpsSvc)。或者,打开具有高级安全性的Windows防火墙窗口(wf.msc),并删除Name注册表项数据部分中给出的名称的两个条目。

完成后,下次应用程序尝试启动其网络时,您将获得Windows防火墙确认对话框。


这非常有用,因此我可以导出此密钥并搜索各种内容。
AresAvatar

7

对于某些人来说,这可能不是最受欢迎的答案,但它是迄今为止最容易回答的问题。只需将Windows防火墙设置恢复为默认值即可。这是最简单的解决方案,因为它将在下次应用程序需要防火墙权限时重新触发确认对话框,而您不必在日志中搜索确切的程序名称。我喜欢每年至少做一次这样的事情,这样我才能记住确切的内容。

当然,如果您花了数小时为媒体服务器或其他东西配置端口,这可能不是一个好主意,但对大多数人来说应该没问题。

为此,请在“控制面板”中打开“Windows防火墙”页面,然后单击“恢复默认值”。

在此输入图像描述 在此输入图像描述


1
+我只是去重置规则 - 我用过它可能很多次,在奇怪的网络/阻塞行为的情况下工作完美
integratorIT

5

我运行了一些程序,它弹出了Windows防火墙通知。我没想到并点击了“取消”。

请按照以下说明操作:

  1. 打开“控制面板”(图标视图),然后单击/点击“Windows防火墙”图标。
  2. 单击/点击左侧允许程序通过Windows防火墙链接

在此输入图像描述

  1. 单击/点击“ 更改设置”按钮。

在此输入图像描述

  1. 通过选中复选框并点击键盘上的Space按钮来允许该程序,该按钮会创建允许例外。

在此输入图像描述

  1. 将可执行文件添加到允许和拒绝的程序列表中。任何没有允许例外的程序目前都被阻止。您可以通过单击允许其他程序按钮并选择所需的可执行文件来完成此操作。

在此输入图像描述

  1. 完成后,单击/点击确定
  2. 如果愿意,请关闭Windows防火墙窗口。

如何在Windows 7和Windows 8中添加或删除Windows防火墙例外

现在我的程序因网络错误而崩溃。

按照指南为相关程序创建Windows防火墙允许例外。

我跑了一些剧本。这个脚本运行了一些其他脚本,其中一些脚本导致另一个程序运行。其中一些程序触发了防火墙消息,我忽略了。

您需要确定运行哪些程序,手动将它们添加到例外列表中,一旦执行此操作,程序将正常运行。

问题是要么找到它,要么以某种方式重新询问。

必须由作者修改exectuable,以便生成新的异常请求。您也可以只删除当前异常,然后运行程序,将显示创建允许异常的新请求。

我不知道该计划的名称

您必须确定程序的名称。您可以通过查看已创建的例外列表来执行此操作。您还可以通过再次运行脚本来确定程序的名称,并在程序“崩溃”时查看exectuable的名称。然后,您可以将该exectuable添加到您的例外列表中以解决您的问题。


1
值得注意的是,(禁用的)条目将始终添加到防火墙的例外列表中。仅当完全删除此条目时,才会再次提示用户。或者,也可以启用例外。
Daniel B
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.