
tl;drWie überprüfe ich mithilfe von Powershell, ob die Windows-Firewall eine Anwendung zulässt?
Unter Windows 10 möchte ich programmgesteuert prüfen, ob eine Anwendung durch die Windows Defender-Firewall zugelassen wird. Im Wesentlichen möchte ich den Firewall-Dialog überprüfenZulassen, dass Apps über die Windows Defender-Firewall kommunizierenmit Powershell.
Wie kann ich beispielsweise bei einem python.exe
unter installierten Programm C:\Program Files\Python\python.exe
überprüfen, ob die Anwendung mit den verschiedenen Netzwerken kommunizieren darf?Domain,Privat,Öffentlichvon einem Powershell-Skript?
Antwort1
Ich habe dieses hier vor ein paar Jahren benutzt: https://medium.com/@glizzykingdreko/open-a-port-on-windows-firewall-with-a-simple-powershell-script-dc5cc48d013a
Skript:
[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."
}
Führen Sie dann das Skript aus dem Ordner aus: .\scriptname.ps1 -port 5000