在数据费用昂贵的国家,我必须花费大量时间使用计费连接。我使用Glasswire 防火墙监视哪些软件正在使用我宝贵的数据,并限制使用过多数据(或不应该使用任何数据)的程序。它允许我查看哪些软件使用了多少数据,然后打开和关闭不遵守我的“计量网络”设置的占用大量数据的互联网访问(例如 Dropbox)。
我的问题是,有时软件会通过搭载 来偷偷绕过 Glasswire Host Process for Windows Services
。数据使用量显示为 ,Host Process for Windows Services
但不知道哪个应用程序正在使用主机进程:
我唯一的选择是完全关闭主机进程,或者允许恶意应用程序不受控制地吞噬我的数据 - 许多程序都依赖于它。例如,如果我关闭它,通过浏览器访问互联网将停止工作。
通常,它使用很少的数据:
...但偶尔它会发疯并开始无缘无故地下载数百兆字节的数据。有时它访问的 Web 主机名称中会有一些线索,但通常是像 akamai 这样的通用名称。
例如,最近,没有任何警告或解释,Windows 服务的 Host Process 下载了大约 250 MB,其中几乎全部来自 akamai,一小部分来自 adobe.com(但这可能是巧合)。我不得不选择关闭所有依赖 Host Process 的东西(包括我的浏览器),或者允许某个未知的应用程序毫无理由地吞噬大量未知的数据。
有什么办法可以让我看见什么是否使用 Windows 服务的主机进程来消耗数据,并有选择地关闭 Windows 服务的主机进程的个别用途,而不关闭整个进程?
使用 Glasswire 或现有 Windows 功能的答案是最好的,但如果有必要,安装其他软件也可以。
答案1
我问了一个类似问题前段时间终于找到了一个答案关于服务内存使用情况的 Server Fault 问题。答案是将每个可能的服务从主机进程中分离出来,这样它也可以用于网络使用。(即使在分离之后,我也不确定 GlassWire 是否区分了不同的服务,但Nirsoft CurrPorts或者Sysinternals 进程浏览器可以)
彼得·莫滕森:
将每个服务拆分为在其自己的 SVCHOST.EXE 进程中运行,并且消耗 CPU 周期的服务将在任务管理器或进程资源管理器中轻松可见(“=” 后的空格是必需的):
SC Config Servicename Type= own
在命令行窗口中执行此操作或将其放入 BAT 脚本中。需要管理员权限,并且需要重新启动计算机才能生效。
可以通过以下方式恢复原始状态:
SC Config Servicename Type= share
例如:让 Windows Management Instrumentation 在单独的 SVCHOST.EXE 中运行:
SC Config winmgmt Type= own
这种技术没有不良影响,除了可能稍微增加内存消耗。除了观察每个服务的 CPU 使用率之外,它还可以轻松观察每个服务的页面错误增量、磁盘 I/O 读取率和磁盘 I/O 写入率。对于 Process Explorer,菜单 View/Select Columns:选项卡 Process Memory/Page Fault Delta、选项卡 Process Performance/IO Delta Write Bytes、选项卡 Process Performance/IO Delta Read Bytes。
在大多数系统中,只有一个 SVCHOST.EXE 进程,其中包含许多服务。我使用了以下序列(可以直接粘贴到命令行窗口中):
rem 1. "Automatic Updates" SC Config wuauserv Type= own rem 2. "COM+ Event System" SC Config EventSystem Type= own rem 3. "Computer Browser" SC Config Browser Type= own rem 4. "Cryptographic Services" SC Config CryptSvc Type= own rem 5. "Distributed Link Tracking" SC Config TrkWks Type= own rem 6. "Help and Support" SC Config helpsvc Type= own rem 7. "Logical Disk Manager" SC Config dmserver Type= own rem 8. "Network Connections" SC Config Netman Type= own rem 9. "Network Location Awareness" SC Config NLA Type= own rem 10. "Remote Access Connection Manager" SC Config RasMan Type= own rem 11. "Secondary Logon" SC Config seclogon Type= own rem 12. "Server" SC Config lanmanserver Type= own rem 13. "Shell Hardware Detection" SC Config ShellHWDetection Type= own rem 14. "System Event Notification" SC Config SENS Type= own rem 15. "System Restore Service" SC Config srservice Type= own rem 16. "Task Scheduler" SC Config Schedule Type= own rem 17. "Telephony" SC Config TapiSrv Type= own rem 18. "Terminal Services" SC Config TermService Type= own rem 19. "Themes" SC Config Themes Type= own rem 20. "Windows Audio" SC Config AudioSrv Type= own rem 21. "Windows Firewall/Internet Connection Sharing (ICS)" SC Config SharedAccess Type= own rem 22. "Windows Management Instrumentation" SC Config winmgmt Type= own rem 23. "Wireless Configuration" SC Config WZCSVC Type= own rem 24. "Workstation" SC Config lanmanworkstation Type= own rem End.