电脑设置只允许某个软件连网

9,300 阅读2分钟

电脑有时候需要对网络进行设置,让其只允许某个程序访问互联网,其他程序不允许访问互联网。

1,修改防火墙状态

打开控制面板 --->> 系统和安全 --->> Windows Defender 防火墙 --->> 高级设置 --->> 本地计算机 上的高级安全 Windows Defender 防火墙 --->> 右键属性

image-20231124170354219.png

域配置文件,专用配置文件,公用配置文件出入站连接 全改成 阻止,应用、确定。

image-20231124170426510.png

改完之后电脑即不能访问互联网了。

2,添加出站规则

设置单独允许某一个程序连网

打开控制面板 --->> 系统和安全 --->> Windows Defender 防火墙 --->> 高级设置 --->> 出站规则 --->> 新建规则

image-20231124170712360.png

规则类型选择 程序

image-20231124170824681.png

选择需要放行的程序路径,下一步

image-20231124171029898.png

选择允许连接

image-20231124171128621.png

勾选 所有,下一步

image-20231124171201323.png

命名之后 完成

image-20231124171324490.png

刷新一下可以看到新建的出站规则,现在对应程序即可以访问互联网了

image-20231124171452009.png

很多程序安装目录下不止一个 exe 文件,将需要联网的在出站规则中逐个放行就可以了。

3,其他

使用 poweroff 命令添加禁止出站规则:

# powershell 管理员方式打开执行

New-NetFirewallRule -DisplayName "规则名" -Direction Outbound -Action Block -Protocol Any -Program "程序绝对路径" -Profile Any

批量禁止文件夹(含子文件夹)里所有 exe 文件联网 bat 脚本:

@Echo Off
SetLocal

:begin

echo:
echo ****** 禁止文件夹联网 ******
echo:

set /p folder=请输入文件夹(退出请直接关闭窗口): 
If Not Exist "%folder%\" Exit/B
If /I "%CD%" NEq "%folder%" PushD %folder%
Set "Cmnd=netsh advfirewall firewall add rule action=block"
echo:
For /R %%a In (*.exe) Do (For %%b In (in out) Do (
      echo 创建禁止 %%b 规则【%%a】
      %Cmnd% name="blocked %%a via script" dir=%%b program="%%a"))

echo:
echo %folder% 中所有 exe 文件的禁止入站、出站规则都已成功创建!
echo ----------------------------
echo:

goto begin