window开启防火墙限定IP访问
Windows 防火墙(Windows Defender Firewall)开启后,可以支持基于 IP 地址的访问限制,通过“高级安全 Windows Defender 防火墙”来设置 IP 限制访问。
限制指定 IP 访问某端口或程序(以入站规则为例)图形化操作
1. 打开防火墙高级设置
- 打开“控制面板” → “系统和安全” → “Windows Defender 防火墙”
- 左侧点击 “高级设置”(会打开“高级安全 Windows 防火墙”窗口)
2. 创建新规则
- 点击左侧“入站规则”
- 右侧点击“新建规则”
3. 选择规则类型
选择“端口”或“程序”,点击“下一步”
- 选择端口:限制某个端口的访问(例如:80、443、3306)
- 选择程序:限制某个程序(如某个服务)
4. 选择协议和端口
- 例如 TCP,指定端口号(如 3389)
5. 选择“允许连接”或“阻止连接”
根据你的需求选择:
- 允许连接:只允许指定 IP 通信
- 阻止连接:禁止指定 IP 通信
6. 选择配置文件
- 根据需求勾选 “域”、“专用”、“公用”
7. 命名规则
- 设置一个易于识别的名称,比如 “仅允许 192.168.1.100 访问端口 3389”
8. 编辑作用的 IP 地址
在规则创建完后,双击该规则 → 切换到 “范围” 标签页
在“远程 IP 地址”中:
- 选择“这些 IP 地址”
- 点击“添加” → 输入允许或拒绝的 IP 地址(支持 CIDR,如
192.168.1.0/24)
PowerShell 实现IP限制访问
例如允许某个 IP 访问本机的 80 端口:
1 | # 单IP限制访问 |
查看现有规则
1 | Get-NetFirewallRule | Where-Object {$_.DisplayName -like "*Allow_HTTP*"} |

开启 Windows 防火墙(使用命令)
CMD 命令(管理员运行):
1 | netsh advfirewall set allprofiles state on |
这个命令会开启所有防火墙配置文件(域、专用、公用)。
allprofiles 表示开启所有配置文件(域、专用、公用)
若你只想开启某一类网络,可以用:
1 | netsh advfirewall set domainprofile state on |
查看当前防火墙状态(可选)
1 | netsh advfirewall show allprofiles |
删除规则(可选)
1 | netsh advfirewall firewall delete rule name="Allow_HTTP_192.168.1.100" |