Windows系统如何批量添加防火墙策略禁止端口入和出?

一、在 Windows 系统中,若要通过防火墙策略禁止特定端口的入站和出站通信,需分别为"入站规则"和"出站规则"创建"阻止连接"策略。以下是详细步骤(适用于 Windows 10/11 及 Server 系列)

✅ 步骤一:打开高级防火墙设置

  1. Win + R,输入 wf.msc,回车;
    或:控制面板 → 系统和安全 → Windows Defender 防火墙 → 高级设置。

✅ 步骤二:创建入站禁止规则(阻断外部访问该端口)

  1. 左侧点击 "入站规则" → 右侧点击 "新建规则"
  2. 规则类型选择 "端口" → 下一步
  3. 选择协议类型(TCP 或 UDP),输入要禁止的端口号(如 3389)→ 下一步
  4. 选择 "阻止连接" → 下一步
  5. 配置文件建议全选(域、专用、公用)→ 下一步
  6. 命名规则(如 Block-3389-In)→ 完成

✅ 步骤三:创建出站禁止规则(阻断本机访问该端口)

  1. 左侧点击 "出站规则" → 右侧点击 "新建规则"
  2. 重复上述步骤,选择相同端口和协议
  3. 同样选择 "阻止连接" ,命名如 Block-3389-Out

✅ 验证规则是否生效

  • 使用命令行工具如 netstat -an 查看端口状态
  • 或使用外部设备尝试连接该端口,确认被阻止

🔍 补充说明

  • 若需仅对特定 IP 生效,可在"作用域"步骤中设置远程 IP 地址范围
  • 若需批量禁止多个端口 ,可在端口输入框中用英文逗号分隔,如 135,139,445

二、在 Windows 系统中,使用命令行添加防火墙策略禁止特定端口的入站和出站连接,推荐使用 netsh advfirewall firewall 命令,以下是详细步骤和示例:

✅ 禁止端口入站(外部访问该端口)

cmd 复制代码
netsh advfirewall firewall add rule name="Block-3389-In" dir=in action=block protocol=TCP localport=3389

✅ 禁止端口出站(本机访问该端口)

cmd 复制代码
netsh advfirewall firewall add rule name="Block-3389-Out" dir=out action=block protocol=TCP localport=3389

✅ 参数说明

参数 含义说明
name 规则名称(自定义,需唯一)
dir 方向:in 入站,out 出站
action 行为:block 阻止,allow 允许
protocol 协议:TCPUDP
localport 本地端口号,支持单个或范围(如 5000-5010

✅ 示例:禁止 TCP 135 端口入站和出站

cmd 复制代码
netsh advfirewall firewall add rule name="Block-135-In" dir=in action=block protocol=TCP localport=135
netsh advfirewall firewall add rule name="Block-135-Out" dir=out action=block protocol=TCP localport=135

✅ 验证规则是否生效

cmd 复制代码
netsh advfirewall firewall show rule name="Block-135-In"

✅ 删除规则(如需撤销)

cmd 复制代码
netsh advfirewall firewall delete rule name="Block-135-In"

该方法适用于 Windows 7 及以上系统(包括 Windows 10/11 和 Server 系列),规则添加后立即生效,无需重启。
如需批量禁止多个端口,可结合脚本循环添加。


三、示例:

1.在 Windows 系统中,你可以通过以下常用命令行方式,一次性添加一条防火墙规则来禁止多个端口入站:

✅ 方法:使用 netsh (适合批处理或脚本)

1.1:禁止 TCP 端口 135、139、445 入站

bash 复制代码
netsh advfirewall firewall add rule name="Block高危端口" dir=in action=block protocol=TCP localport=135,139,445

1.2:禁止一段端口(如 5000--5010)

bash 复制代码
netsh advfirewall firewall add rule name="Block端口段" dir=in action=block protocol=TCP localport=5000-5010

⚠️ 注意: netsh 不支持在一个规则中混合"离散端口"和"端口段",但支持多个离散端口用英文逗号分隔,或一个连续段用连字符表示。


2.在 Windows 系统中,可以批量添加防火墙规则来禁止TCP端口和UDP端口入站和出站:

2.1:禁止 TCP 135和UDP 135端口入站

bash 复制代码
netsh advfirewall firewall add rule name="Block-135-TCP-In" dir=in action=block protocol=TCP localport=135

netsh advfirewall firewall add rule name="Block-135-UDP-In" dir=in action=block protocol=UDP localport=135

2.2:禁止 TCP 135和UDP 135端口出站

bash 复制代码
netsh advfirewall firewall add rule name="Block-135-TCP-Out" dir=out action=block protocol=TCP localport=135

netsh advfirewall firewall add rule name="Block-135-UDP-Out" dir=out action=block protocol=UDP localport=135

相关推荐
程序员老陆24 分钟前
FFmpeg6 在 Windows 打开麦克风并录成 PCM:不走 Qt Multimedia,也不碰 WASAPI
windows·ffmpeg·音视频·pcm
chushiyunen1 小时前
神雕武功排名
windows
酩酊仙人1 小时前
Windows Server部署django
windows·django·sqlite
蓝斯49716 小时前
从.到实现一个Windows上的虚拟hid键盘设备
windows·单片机·计算机外设
CODER030420 小时前
封装忽律底层硬件差异的自定义系统
windows·microsoft
软件资深者21 小时前
Windows10、11轻松设置 使用教程:把Windows繁杂的设置集成到一个面板,关广告/关更新/调隐私全搞定,系统设置工具新手 5 分钟上手(2026)
windows
脚踏实地皮皮晨21 小时前
003005002_WPF StackPanel 基类官方类定义逐行深度解析
开发语言·windows·算法·c#·wpf·visual studio
YCOSA20251 天前
Windows 11 Insider 实验预览版 26300.9032 基于26100.6(检查点26100.1746)
windows
happymagic1 天前
vmware workstation Pro 虚拟机设定启停的时间段
运维·服务器·windows
PC2005-cloud1 天前
Windows 下 WSL2 + Docker Desktop + Ubuntu 开发环境搭建指南
windows·ubuntu·docker