如何在PowerShell中查看已有的出站规则?
美国、香港服务器
如何在PowerShell中查看已有的出站规则?
09-24 来源:
## 1. 最简命令:列出全部出站规则
Get-NetFirewallRule -Direction Outbound
## 2. 精简输出(只显示名称、启用状态、动作,推荐)
Get-NetFirewallRule -Direction Outbound | Select DisplayName,Enabled,Action
- `DisplayName`:规则显示名称
- `Enabled`:True = 启用,False = 禁用
- `Action`:Allow = 允许,Block = 阻止
## 3. 只筛选【允许】的出站规则(你默认出站 Block 场景重点用)
Get-NetFirewallRule -Direction Outbound | Where-Object {$_.Action -eq "Allow"} | Select DisplayName,Enabled
## 4. 查看单条规则详细信息(端口、IP、协议)
把`"Outbound_Allow_HTTPS_443"`替换为你的规则显示名
Get-NetFirewallRule -DisplayName "Outbound_Allow_HTTPS_443" | Get-NetFirewallPortFilter
同时看 IP 筛选:
Get-NetFirewallRule -DisplayName "Outbound_Allow_HTTPS_443" | Get-NetFirewallAddressFilter
## 5. 导出全部出站规则到文本(留存备份)
Get-NetFirewallRule -Direction Outbound | Select DisplayName,Enabled,Action | Out-File C:\Firewall_Outbound_Rules.txt
## 6. 查看防火墙当前默认出站策略
Get-NetFirewallProfile | Select Name,DefaultOutboundAction
### 常用过滤小技巧
- 匹配名字包含`Outbound`的规则:
Get-NetFirewallRule -Direction Outbound | Where-Object {$_.DisplayName -match "Outbound"}
### 补充说明
1. 执行需要**管理员身份 PowerShell**,否则会返回空或报错
2. Windows Server2012 支持这套`NetFirewallRule`系列命令
3. 规则多的时候,后面加 `| Format-Table -AutoSize` 自动排版,示例:
Get-NetFirewallRule -Direction Outbound | Select DisplayName,Enabled,Action | Format-Table -AutoSize
三二互联专业提供香港VPS,美国VPS主机,香港云服务器租用等业务香港美国到大陆CN2 GIA速度最快