Gibt es eine Möglichkeit, eine Gruppe zu einer Regel in der erweiterten Windows-Firewall zu erstellen oder zu einer vorhandenen Gruppe hinzuzufügen (vorzugsweise über eine Eingabeaufforderung oder ein WSH-Skript)?
Bearbeiten:
quelle
Gibt es eine Möglichkeit, eine Gruppe zu einer Regel in der erweiterten Windows-Firewall zu erstellen oder zu einer vorhandenen Gruppe hinzuzufügen (vorzugsweise über eine Eingabeaufforderung oder ein WSH-Skript)?
Bearbeiten:
Ich habe eine Lösung für diese alte Frage gefunden, die mich auch schon lange nervt!
Der TechNet-Artikel zu New-NetFirewallRule enthält folgende Informationen zu den -Group
Parametern des New-NetFirewallRule-Befehls:
[...] Dieser Parameter gibt die Quellzeichenfolge für den Parameter DisplayGroup an. [...] Regelgruppen können verwendet werden, um Regeln nach Einfluss zu organisieren, und ermöglichen Änderungen von Stapelregeln. Wenn bei Verwendung der Cmdlets Set-NetFirewallRule der Gruppenname für einen Satz von Regeln oder Sätzen angegeben wird, erhalten alle Regeln oder Sätze in dieser Gruppe denselben Satz von Änderungen. Es wird empfohlen, diesen Parameterwert mit einem universellen und weltweit einsatzbereiten indirekten @ FirewallAPI-Namen anzugeben.
Hinweis : Der Parameter DisplayGroup kann bei der Objekterstellung mit dem Cmdlet New-NetFirewallRule nicht angegeben werden, kann jedoch mithilfe der Punktnotation und des Cmdlets Set-NetFirewallRule geändert werden.
Das klingt nach einer Chance, oder? Bei dem Versuch, selbst herauszufinden, wie das geht, habe ich Folgendes ausgeführt:
Get-NetFirewallRule -DisplayName "Core Networking - IPv6 (IPv6-In)" | Get-Member
... und stellte fest, dass die DisplayGroup
Eigenschaft nur eine Get-Methode hat, die Group
Eigenschaft (mit ihrem RuleGroup
Alias) jedoch sowohl eine Get- als auch eine Set-Methode.
Die PowerShell-Lösung lautet wie folgt:
Dank @maoizm funktioniert diese Lösung jetzt, wenn eine oder mehrere Regeln mit demselben Anzeigenamen vorhanden sind:
$RuleName = "NameOfYourFirewallRuleGoesHere"
$RuleGroup = "YourGroupNameGoesHere"
Get-NetFirewallRule -DisplayName $RuleName | ForEach { $_.Group = '$RuleGroup'; Set-NetFirewallRule -InputObject $_ }
Dadurch wird tatsächlich ein neuer Gruppenname erstellt, der Ihrer Regel zugewiesen wird.
Hinweis : Der netsh
Befehl hat keinen add group
Befehl. Die Syntax für Netsh AdvFirewall Firewall-Befehle finden Sie hier.
Get-NetFirewallRule -DisplayName 'GTA V' | ForEach { $_.Group = 'games'; Set-NetFirewallRule -InputObject $_ }
Regeln in der Windows-Firewall können gebündelt und als Gruppe aktiviert oder deaktiviert werden.
Mit dem
netsh advfirewall
Befehl können Sie der Firewall Regeln hinzufügen. Verwenden Sie den Switchgroup=
zum Verwalten der AdvFirewall-Gruppen.Verwenden Sie so etwas:
quelle
netsh advfirewall firewall set rule Group="SmarterTools Administrative Interfaces" new
und erhalte die Fehlermeldung 'Keine Regeln entsprechen den angegebenen Kriterien'Während Sie ausdrücklich erwähnen
Ich gehe davon aus, dass Sie ein Skript verwenden wollen. Mit 2008 können Sie Powershell verwenden. Es ist ziemlich einfach:
Weitere Informationen finden Sie in diesem Artikel ...
quelle
netsh
).Die
netsh
Kommandozeile hat hierfür kein Flag.Als Alternative zu den oben genannten PowerShell-Lösungen ist der Gruppenname Teil der Registrierungsstruktur.
Tatsächlich ist der
.wfw
Firewall-Export eine unformatierteregf
Registrierungsstruktur . Wenn Sie dies in den Registrierungseditor importieren, sehen Sie, dass es sich um eine Liste von durchREG_SZ
Pipe getrennten Werten handelt.Benutzerdefinierte Werte finden Sie unter
Hier ist eine Momentaufnahme eines Google Chrome-Firewall-Eintrags (Zeilenumbrüche zur besseren Lesbarkeit hinzugefügt)
Die "Gruppe" wird unter gespeichert
EmbedCtxt
und ihr Wert istGoogle Chrome
.... also könnte man annehmen, dass Sie den Registrierungswert mit der gleichen Technik manipulieren können ...
Suchen Sie den Registrierungseintrag
...|EmbedCtx=My Custom Group|
Hinweis 1: Der Code wurde absichtlich weggelassen, da das Anhängen an einen vorhandenen Registrierungswert über die Eingabeaufforderung sehr schwierig ist .
Hinweis 2: Ohne das Trailing
|
wird der Wert ignoriert.quelle