Post

Windows防火墙规则配置指南:netsh命令与批处理脚本应用

2026-04-30

使用 netsh 配置 Windows 防火墙与批处理脚本技巧

概述

本文聚焦于通过 Windows 命令行工具 netsh 配置防火墙规则的实践方法,以及结合批处理脚本实现基础文件管理的操作场景。适用于需要临时封禁网络访问或自动化清理残留文件的系统管理场景。

防火墙规则管理

添加入站/出站封禁规则

通过 netsh advfirewall firewall add rule 命令可创建针对性规则:

  • 封禁特定 IP 入站
    netsh advfirewall firewall add rule name="Block_IP_192.168.1.100" dir=in action=block protocol=TCP remoteip=192.168.1.100
    
  • 封禁特定端口出站
    netsh advfirewall firewall add rule name="Block_Port_8080" dir=out action=block protocol=TCP remoteport=8080
    

注意:dir 参数区分流量方向,remoteiplocalport 分别对应目标 IP 和本地端口,需根据实际需求选择参数。

查看现有规则

执行以下命令可列出所有规则,便于排查配置冲突:

netsh advfirewall firewall show rule name=all

网络参数调整

MTU 值修改

通过 netsh interface ipv4 set subinterface 命令调整子网接口的 MTU(最大传输单元):

netsh interface ipv4 set subinterface "以太网" mtu=1445 store=persistent

该操作需指定网络接口名称(可通过 netsh interface show interface 查询),store=persistent 参数确保重启后配置保留。

批处理脚本示例

文件存在性检查与删除

以下脚本片段可实现条件化文件清理逻辑:

IF EXIST "C:\path\to\your\file.txt" (DEL "C:\path\to\your\file.txt")

路径需根据实际环境替换,DEL 命令默认无确认提示,建议在测试环境验证脚本行为。

注意事项

  1. 权限要求:所有 netsh 操作需以管理员身份运行命令提示符。
  2. 规则命名唯一性name 参数需全局唯一,避免规则覆盖。
  3. 脚本调试:复杂逻辑建议先用 echo 替代实际操作进行验证。

总结

netsh 提供了细粒度的 Windows 防火墙管理能力,结合批处理脚本可实现基础自动化任务。但其配置逻辑依赖准确的参数定义,且缺乏图形化反馈,建议在熟悉命令语法后使用。