iptables -I WEITER -s 192.168.1.100 -p udp --dport 27000:27200 --match string --algo kmp --string 76561198923445525 -j AKZEPTIEREN
Ich brauche einfach ein Analogon zu diesem funktionierenden Befehl im Windows-Betriebssystem, zum Beispiel Powershell oder … cmd … was auch immer.
Im Grunde haben wir einen Benutzer mit ID, der sich mit dem Server verbindet. Mit dem Befehl AKZEPTIEREN wir die angegebene Zeichenfolge-ID auf den Ports 27000:27200 innerhalb des lokalen Servers 192.168.1.100. Wie funktioniert das ohne iptables?
Antwort1
Dies wird ziemlich nah dran sein. Die Windows-Firewall lässt authentifizierte Verbindungen zu (Benutzerzuordnung), aber dies funktioniert bei Ihnen möglicherweise nicht, je nachdem, welche Art von Client eine Verbindung herstellt und ob dieser dies unterstützt:
New-NetFirewallRule -DisplayName My-Firewall-Rule `
-Direction Inbound `
-Enabled True `
-Action Allow `
-Protocol UDP `
-LocalPort 27000 `
-LocalAddress 192.168.1.100 `
-Authentication Required `
-RemoteUser "D:(A;;CC;;;$UserSID)"
Ersetzen Sie dies $UserSID
durch die tatsächliche SID des zu authentifizierenden Benutzers.
Das ist nicht genau dasselbe, und ich glaube nicht, dass Windows wirklich die gleiche Funktionalität wie die FORWARD-Kette in iptables hat, ohne einige der Routing-Funktionen
# Basic maintenance commands:
Get-NetFirewallRule -DisplayName My-Firewall-Rule | format-list * ## show all properties
Remove-NetFirewallRule -DisplayName My-Firewall-Rule ## Delete your rule
# Enable detailed logging:
Set-NetFirewallProfile -LogAllowed True -LogFileName %SystemRoot%\System32\LogFiles\Firewall\pfirewall.log
# Watch log:
Get-Content -Tail 10 -Wait "C:\windows\System32\LogFiles\Firewall\pfirewall.log"
Für alles andere schauen Sie sich die Beispiele und die Dokumentation in Get-Help New-NetFirewallRule -Full
oder dieWeb-Dokumente. Erwägen Sie, Ihrer Frage weitere Informationen darüber hinzuzufügen, was Sie bisher versucht haben und welches Client-/Server-Betriebssystem verwendet wird.