Windows防火墙无法开启的五大原因及对应修复方法:一、启动并配置mpssvc与wscsvc服务;二、重置SharedAccess注册表权限及Start值为2;三、卸载或禁用第三方安全软件;四、运行sfc /scannow和DISM命令修复系统文件;五、清除组策略禁用项及修正EnableFirewall值。
如果您尝试启用 Windows防火墙,但系统持续提示“无法开启”或设置界面呈灰色不可操作,则可能是由于核心服务未运行、登录身份配置错误、注册表权限缺失、第三方安全软件冲突或组策略锁定所致。以下是多种独立有效的修复路径:
一、启动并正确配置 mpssvc 与 wscsvc 服务
Windows 防火墙功能由 mpssvc(Windows Defender Firewall)服务驱动,Security Center 服务(wscsvc)则负责向安全中心提供状态反馈;二者任一未运行或身份异常,均会导致防火墙界面失效。
1、按下
Win + R,输入services.msc,回车打开服务管理器。
2、在列表中找到
Windows Defender Firewall(服务名:mpssvc),右键选择“属性”。
3、在“常规”选项卡中,将“启动类型”设为
自动;若“服务状态”为“已停止”,点击“启动”按钮。
4、切换至“登录”选项卡,勾选“此帐户”,在文本框中完整输入
NT SERVICE\mpssvc(注意大小写与反斜杠方向)。
5、点击“浏览”→“高级”→“立即查找”,从结果中双击选中该账户,密码栏留空,点击“确定”保存。
6、重复步骤 2–5,对Security Center(服务名:wscsvc)执行相同配置并确保其状态为“正在运行”。
二、重置 SharedAccess 注册表权限与关键值
mpssvc 服务需对HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess路径具备完全控制权,且其子项 mpssvc 的 Start 值必须为 2;权限丢失或数值被篡改为 0/4 将直接触发 0x6D9 或 0x80070005 错误。
1、按下
Win + R,输入regedit,以管理员身份运行注册表编辑器。
2、导航至
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess,右键该键 → “权限” → “添加”。
3、在“输入对象名称”框中输入
NT SERVICE\mpssvc,点击“检查名称”确认后,勾选“完全控制”,点击“确定”。
4、展开左侧树形目录,定位到
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\mpssvc,双击右侧的Start项。
5、将其“数值数据”修改为
2(十六进制或十进制均可),点击“确定”。
三、卸载或临时禁用第三方安全软件
多数第三方杀毒软件(如 360安全卫士、腾讯电脑管家、McAfee、Norton)会在安装时主动禁用 Windows 防火墙,并通过驱动层拦截其服务加载,导致 mpssvc 启动失败且无明确错误提示。
1、右键任务栏通知区域中的安全软件图标,选择“退出”或“关闭实时防护”。
2、打开“控制面板 → 程序和功能”,按安装日期排序,找到近期安装的安全类产品。
3、右键该程序,选择“卸载”,全程按向导完成卸载流程,**不勾选“保留用户配置”或“残留清理”等附加选项**。
4、重启计算机后,立即进入
services.msc检查 mpssvc 是否可正常启动并保持运行状态。
四、运行系统文件完整性修复命令
SFC 与 DISM 工具可识别并替换被损坏或被篡改的系统组件,包括 SharedAccess.dll、firewallapi.dll 及相关服务依赖文件,是解决服务加载失败类问题的基础手段。
1、右键“开始”按钮,选择
Windows PowerShell(管理员)
或命令提示符(管理员)
。
2、依次执行以下两条命令,每条执行完毕并显示“验证完成”或“操作成功完成”后再输入下一条:sfc /scannow DISM /Online /Cleanup-Image /RestoreHealth 3、等待全部过程结束(通常需 15–25 分钟),期间请勿关闭窗口或中断电源。
4、执行完成后,**不重启即刻返回 services.msc**,检查 mpssvc 服务是否已可手动启动。
五、清除组策略强制禁用项与防火墙策略键值
当域环境或本地组策略将防火墙设为“已禁用”时,即使服务运行,安全中心仍显示灰色开关,并提示“某些设置由组策略控制”;此时需清除注册表中对应策略标记。
1、按下
Win + R,输入regedit,以管理员身份运行。
2、依次定位并**删除以下两个注册表项**(若存在):
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\StandardProfile
3、若上述路径不存在,继续检查
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile下的EnableFirewall DWORD 值。
4、若该值存在且数据为
0,双击修改为1;若不存在,无需创建。
