确定 Windows 防火墙正在阻止哪项服务?

确定 Windows 防火墙正在阻止哪项服务?

我正在设置一个启用了 Windows 防火墙的强化应用程序服务器。

操作系统是 2008 R2。我们使用高级防火墙设置,并在必要时使用 IPSec 和 Kerberos 身份验证。我的另一台主机 (192.168.100.21) 需要访问我的服务器 (192.168.100.29),我的应用程序才能正常工作。如果我允许来自该 IP 的所有入站流量,它就可以完美运行。不幸的是,这不符合我的监管要求。

审计事件显示正在尝试连接 svchost,但是没有成功。如何确定正在尝试访问哪些服务?

我使用下面显示的调试审核来确定 svchost 行为。

auditpol /set /subcategory:"Filtering Platform Packet Drop" /success:enable /failure:enable
auditpol /set /subcategory:"Filtering Platform Connection" /success:enable /failure:enable
auditpol /set /subcategory:"IPsec Driver" /success:enable /failure:enable
auditpol /set /subcategory:"IPsec Main Mode" /success:enable /failure:enable
auditpol /set /subcategory:"IPsec Quick Mode" /success:enable /failure:enable
auditpol /set /subcategory:"IPsec Extended Mode" /success:enable /failure:enable

答案1

如您所知,SVCHOST 只是底层服务的总括服务,其中大多数服务都以 DLL 而非 EXE 的形式出现。如果是我,我会使用三个 Microsoft SysInternals 工具和 TASKLIST:

  • ProcessMonitor :这将让你实际看到 TCP/UDP 请求,更具体地说,正在使用哪些端口
  • TCPView:这可以让你看到 TCP/UDP 连接的建立和断开(有点像实时 NETSTAT)
  • ProcessExplorer:这将让你深入了解并准确了解正在引用哪个 SVCHOST 实例

因此,一旦您看到了 TCP/UDP 活动,并且知道正在引用哪个 SVCHOST 以及知道哪些端口,您就可以使用 TASKLIST 查看该 SVCHOST 托管了哪些服务(任务列表/svc/fi“映像名称 eq svchost.exe”),然后使用端口号推断出它到底是哪种服务。

无论如何,这就是我的方法。祝你好运。

相关内容