系统学习 学习路径总入口:先选领域,再建立模型,最后用故障演练验证

用 Windows 防火墙按配置文件放行或阻断入站、出站流量

适用场景

本机端口在 localhost 正常但其他机器连不上、需要临时开放程序或端口、撤销过期规则时使用。不要在服务器上直接关闭防火墙来“验证网络”:远程操作时先放行 RDP 或管理端口,再启用防火墙,否则会把自己锁在机器外。

前置条件

操作步骤

1. 图形界面

Win+R 输入 wf.msc,在“入站规则/出站规则”右侧“新建规则”,选程序或端口,设置允许/阻止、配置文件、作用域,规则名带业务和日期便于回收。

2. 查看当前策略

C:\> netsh advfirewall show allprofiles
C:\> netsh advfirewall firewall show rule name=all dir=in

3. 放行、删除和备份

C:\> netsh advfirewall firewall add rule name="MyApp TCP 8443" dir=in action=allow protocol=TCP localport=8443 profile=domain,private remoteip=192.168.1.0/24
C:\> netsh advfirewall firewall delete rule name="MyApp TCP 8443"
C:\> netsh advfirewall export C:\backup\fw.wfw
C:\> netsh advfirewall import C:\backup\fw.wfw

影响范围:规则立即生效;profile=public 会把端口暴露在不可信网络。只开必要端口,优先用 remoteip 限制来源,并记录申请人和到期时间。

4. PowerShell 对照

PS C:\> Get-NetFirewallRule -DisplayName "MyApp*" | Format-Table DisplayName,Enabled,Direction,Action
PS C:\> New-NetFirewallRule -DisplayName "MyApp TCP 8443" -Direction Inbound -Protocol TCP -LocalPort 8443 -Action Allow -Profile Domain,Private
PS C:\> Remove-NetFirewallRule -DisplayName "MyApp TCP 8443"

netsh advfirewall set allprofiles state off 会关闭全部防火墙,只应在隔离测试环境短时使用。

验证

回滚与风险

相关命令

参考链接

读完自测

合上页面,先回答,再展开对照。

  1. 放行端口时 profile 选错会有什么后果?
  2. 批量修改防火墙前怎样备份和回滚?
  3. 为什么不能靠“关掉防火墙能连上”结束排障?
答案
  1. 选到 public 会把服务暴露在不可信网络,应只开放必要配置文件并限制来源 IP。
  2. 先 netsh advfirewall export,回滚时 netsh advfirewall import 覆盖恢复。
  3. 关闭防火墙只是绕过策略并扩大攻击面,应加精确放行规则并确认无其他拦截。
微信小程序码:扫码打开命令速查小程序

小程序版

微信扫码,随时查命令