
如果您需要在不同Windows设备间迁移防火墙策略,或为现有配置创建可恢复的副本,则必须对防火墙规则进行完整导出与精确导入。以下是实现该目标的多种方法:
一、使用netsh命令导出和导入规则
该方法适用于所有Windows版本(Win7及以后),生成二进制.wfw格式文件,保留全部规则属性、配置文件关联及启用状态,是官方推荐的标准备份方式。
1、以管理员身份打开命令提示符(CMD)。
2、执行导出命令:netsh advfirewall export “C:\FirewallBackup_20260328.wfw”。
3、确认导出成功后,将该.wfw文件复制至目标计算机。
4、在目标机上以管理员身份运行CMD,执行导入命令:netsh advfirewall import “C:\FirewallBackup_20260328.wfw”。
5、重启Windows防火墙服务(可选):net stop mpssvc && net start mpssvc。
二、通过PowerShell导出为可读文本并重建规则
该方法生成人类可读的CSV或脚本文件,便于审核、筛选或跨版本适配,但需手动重建规则,不自动继承原始启用状态与作用域细节。
1、以管理员身份启动PowerShell。
2、导出全部入站规则为CSV:Get-NetFirewallRule -Direction Inbound | Select-Object DisplayName, Enabled, Direction, Action, Protocol, LocalPort, RemotePort, Profile, Description | Export-Csv -Path “C:\InboundRules.csv” -Encoding UTF8 -NoTypeInformation。
3、导出全部出站规则为CSV:Get-NetFirewallRule -Direction Outbound | Select-Object DisplayName, Enabled, Direction, Action, Protocol, LocalPort, RemotePort, Profile, Description | Export-Csv -Path “C:\OutboundRules.csv” -Encoding UTF8 -NoTypeInformation。
4、在目标机上,使用Import-Csv读取CSV并逐条调用New-NetFirewallRule重建规则,例如:Import-Csv “C:\InboundRules.csv” | ForEach-Object { New-NetFirewallRule -DisplayName $_.DisplayName -Direction $_.Direction -Action $_.Action -Protocol $_.Protocol -LocalPort $_.LocalPort -Profile $_.Profile }。
三、利用组策略对象(GPO)备份与还原(仅限专业版/企业版)
该方法适用于域环境或本地组策略深度定制用户,将防火墙策略嵌入GPO结构中,支持集中部署与版本控制,但要求目标系统已配置相同策略路径。
1、按Win + R输入gpedit.msc打开本地组策略编辑器。
2、导航至计算机配置 > Windows设置 > 安全设置 > Windows防火墙与高级安全。
3、右键“Windows防火墙与高级安全”,选择“导出策略”,保存为.wfw文件(与netsh导出格式兼容)。
4、在目标机上,右键同一节点,选择“导入策略”,指定此前导出的.wfw文件路径。
5、执行gpupdate /force刷新组策略,使新规则立即生效。
四、手动复制注册表项(高风险,仅限紧急诊断)
该方法直接操作底层注册表存储,可捕获netsh未覆盖的隐藏策略或调试信息,但极易引发系统不稳定,**严禁在生产环境直接修改或导入**。
1、以管理员身份运行regedit。
2、定位到注册表路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy。
3、右键该主键,选择“导出”,保存为.reg文件,并勾选“选择分支”选项。
4、在目标机上双击导入该.reg文件前,**必须确保两台设备Windows版本完全一致且未启用Secure Boot锁定注册表写入**。
5、导入后强制重启系统,否则防火墙服务可能拒绝加载变更。

评论(0)