基础防火墙管理命令
-
查看防火墙状态
netsh advfirewall show allprofiles
- 输出包含
域配置文件
、专用配置文件
、公用配置文件
的状态(启用/禁用)及默认规则。
- 输出包含
-
启用/禁用防火墙
netsh advfirewall set allprofiles state on :: 启用 netsh advfirewall set allprofiles state off :: 禁用
- 替换
allprofiles
为domain
、private
或public
可针对特定配置文件操作。
- 替换
自定义入站/出站规则
-
允许程序通过防火墙
netsh advfirewall firewall add rule name="允许MyApp" dir=in action=allow program="C:\MyApp.exe" enable=yes
name
:规则名称(自定义)dir
:方向(in
入站/out
出站)action
:allow
允许或block
拒绝program
:程序绝对路径
-
开放特定端口
netsh advfirewall firewall add rule name="开放80端口" dir=in action=allow protocol=TCP localport=80
protocol
:支持TCP
、UDP
或ANY
localport
:端口号(多端口用逗号分隔,如80,443
)
-
禁止IP地址访问
netsh advfirewall firewall add rule name="屏蔽危险IP" dir=in action=block remoteip=192.168.1.100
remoteip
:目标IP(支持范围如168.1.10-192.168.1.20
)
规则管理与维护
-
查看现有规则
netsh advfirewall firewall show rule name="规则名称" :: 查看指定规则 netsh advfirewall firewall show rule name=all :: 查看所有规则
-
删除规则
netsh advfirewall firewall delete rule name="规则名称" protocol=TCP localport=80
- 需指定与添加时一致的参数(如
name
、protocol
等)确保精准删除。
- 需指定与添加时一致的参数(如
-
导出/导入配置(备份与恢复)
netsh advfirewall export "C:\backup.xml" :: 导出配置 netsh advfirewall import "C:\backup.xml" :: 导入配置
高级配置示例
- 创建日志记录规则(记录被拦截的连接)
netsh advfirewall set allprofiles logging droppedconnections enable
- 设置默认拦截策略
netsh advfirewall set allprofiles firewallpolicy blockinbound,allowoutbound
参数说明:
blockinbound
:默认拦截入站allowoutbound
:默认允许出站
注意事项
- 操作风险
- 错误配置可能导致网络中断或安全漏洞,建议测试前备份规则(
export
命令)。 - 禁用防火墙仅限临时调试,完成后务必重新启用。
- 错误配置可能导致网络中断或安全漏洞,建议测试前备份规则(
- 命令生效范围
所有操作即时生效,无需重启系统。
- 兼容性
netsh
适用于Windows Vista及以上系统,Windows XP需使用旧版netsh firewall
语法。
引用说明基于Microsoft官方文档《Netsh Commands for Windows Firewall》及技术社区最佳实践,具体参数详见:Microsoft Learn – Netsh 命令参考。
权威提示:企业环境建议通过组策略(GPO)集中管理防火墙,个人用户操作前请确认理解命令含义。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6961.html