Windows netsh advfirewall 允许端口上的 ip

Windows netsh advfirewall 允许端口上的 ip

我需要创建一个防火墙,只允许特定端口上的特定 IP。例如,允许1.2.3.42.2.2.25.5.5.5在 端口 上45654。如果6.6.6.6尝试访问45654则拒绝它。

我尝试过什么命令:

netsh advfirewall firewall add rule name="application" dir=in action=allow program="C:\application.exe" enable=yes remoteip=64.68.22.49,51.68.11.49/32,LocalSubnet profile=private protocol=TCP localport=42262

问题是我尝试通过 Windows 防火墙(界面)阻止所有 IP 并允许每个 IP,但没有起作用,要么阻止所有,要么允许所有。

在 Linux 中一切都很简单:

Linux 等效版本

-I INPUT -s 0/0 -p tcp  --dport 1080:65535  -j REJECT

-I INPUT -p tcp --match multiport --dports 35001:65000 -j ACCEPT

-I INPUT -p tcp --dport 61605 -j REJECT
-I INPUT -p tcp  -s 103.204.244.3/32 --dport 61605 -j ACCEPT

-I INPUT -p tcp --dport 62814 -j REJECT
-I INPUT -p tcp  -s 103.204.244.3/32 --dport 62814 -j ACCEPT

-I INPUT -p tcp --dport 61525 -j REJECT
-I INPUT -p tcp  -s 103.204.244.3/32 --dport 61525 -j ACCEPT

iptables 输出:

ACCEPT     tcp  --  178.166.173.55       0.0.0.0/0            tcp dpt:61605
REJECT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:61605 reject-with icmp-port-unreachable

ACCEPT     tcp  --  178.150.247.127      0.0.0.0/0            tcp dpt:62814
REJECT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:62814 reject-with icmp-port-unreachable

ACCEPT     tcp  --  178.150.247.127      0.0.0.0/0            tcp dpt:61525
REJECT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:61525 reject-with icmp-port-unreachable

REJECT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpts:1080:65535 reject-with icmp-port-unreachable

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0

有任何想法吗?

谢谢。

相关内容