Windows 中的 Iptables 命令模拟

Windows 中的 Iptables 命令模拟

iptables -I FORWARD -s 192.168.1.100 -p udp --dport 27000:27200 --匹配字符串 --algo kmp --字符串 76561198923445525 -j ACCEPT

我需要简单地模拟 Windows 操作系统中的工作命令,例如 powershell 或....cmd...等等。

基本上,我们有一个 ID 为 1 的用户连接到服务器。使用命令,我们在 192.168.1.100 本地服务器的端口 27000:27200 上接受指定的字符串 ID。如何在没有 iptables 的情况下实现此操作?

答案1

这将非常接近。Windows 防火墙允许经过身份验证的连接(用户映射),但这可能不适合您,具体取决于连接的客户端类型以及它是否支持此功能:

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)"

$UserSID用要授权的​​用户的实际 SID替换。

这并不完全相同,并且我不相信 Windows 真的具有与 iptables 中的 FORWARD 链相同的功能,而没有一些路由功能

# 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"

Get-Help New-NetFirewallRule -Full对于其他内容,请查看或中的示例和文档网络文档.考虑在您的问题中添加更多信息,说明您迄今为止尝试过什么,以及正在使用什么客户端/服务器操作系统。

相关内容