检查 Windows 防火墙是否允许应用程序

检查 Windows 防火墙是否允许应用程序

总结使用 Powershell,如何检查 Windows 防火墙是否允许某个应用程序?

使用 Windows 10,我想以编程方式检查应用程序是否被允许通过 Windows Defender 防火墙。本质上,我想检查防火墙对话框允许应用通过 Windows Defender 防火墙进行通信使用 Powershell。

允许的应用程序

例如,给定一个python.exe安装在的程序C:\Program Files\Python\python.exe,我如何检查该应用程序是否被允许与各种网络通信领域私人的民众来自 Powershell 脚本?

答案1

我几年前用过这个: https://medium.com/@glizzykingdreko/open-a-port-on-windows-firewall-with-a-simple-powershell-script-dc5cc48d013a

脚本:

    [int]$port = 3777
)

$ruleName = "Allow Port $port"

# Check if the rule already exists
$existingRule = Get-NetFirewallRule -DisplayName $ruleName -ErrorAction SilentlyContinue

if ($existingRule) {
    Write-Host "Firewall rule '$ruleName' already exists."
} else {
    # Create a new inbound rule for the specified port
    New-NetFirewallRule -DisplayName $ruleName -Direction Inbound -Action Allow -Protocol TCP -LocalPort $port
    Write-Host "Firewall rule '$ruleName' created."
}

然后从文件夹运行脚本:\scriptname.ps1 -port 5000

相关内容