Как заблокировать несколько файлов в Брандмауэре Windows?
Фаервол — это программное обеспечение или аппаратное средство, которое выполняет проверку входящей информации из Интернета или сети, и либо блокирует ее, либо позволяет проходить через компьютер, в зависимости от настроек самого firewall.
Фаервол может помочь пользователям уберечься от нападения хакеров или от вредоносного программного обеспечения, которые могут получить доступ к вашему компьютеру через вашу сеть. Фаервол также может помочь остановить отправку вредоносных файлов с вашего компьютера на другие ПК.
Все вышеописанное также можно отнести и к Брандмауэру Windows. Некоторые приложения требуют для себя подключения к сети время от времени. Однако, у фаервола есть контроль над тем, какие .exe и .dll на вашем компьютере подключать к публичной, личной или доменным сетям.
По умолчанию, все приложения заблокированы Брандмауэром. Если какому-то приложению или программе запрещено связываться с сетью, то Брандмауэр блокирует ей доступ. В список этих программ также могут входить и ваши игры, для работы с которыми вам требуется Интернет-подключение.
Для того чтобы установить нужные вам настройки в Брандмауэре Windows, вы можете:
- Нажать одновременно кнопки Win+R.
- Затем вписать в строку утилиты «Выполнить» запрос firewall.cpl и нажать Enter.
- Выбрать «Разрешение взаимодействия с приложением или компонентом в брандмауэре Windows».
В этом окне вы сможете выдавать разрешения определенным программам или же добавлять новые исполнительные файлы.
Однако, когда вам нужно заблокировать или снять блокировку с более чем одного исполнительного файла на вашем компьютере(или если вы разрабатываете приложение, которому требуется разрешение firewall’а), то вам нужно проделывать достаточно много однообразной работы для этого.
Сейчас мы покажем вам, как блокировать несколько файлов одновременно или даже целые папки в Брандмауэре Windows. Для демонстрационных целей, мы будет показывать этот метод на папке Program Files.
Для начала вы рекомендуем вам сделать резервную копию вашей политики в Брандмауэре Windows, на случай того, если что-то пойдет не так. Для этого сделайте следующее:
- Нажмите комбинацию из Win+R, напишите wf.msc и нажмите Enter для открытия Брандмауэра Windows в режиме повышенной безопасности.
- В самом правом углу окна, нажмите на «Экспортировать политики…» и сохраните их в файл. Если что-то произойдет при выполнении нижеуказанных шагов, то вы сможете использовать этот Wfw-файл для восстановления состояний политик.
Блокировка нескольких .exe-файлов с помощью BAT-файла
Через netsh(скриптовый инструмент, которые позволяет Командной строке изменять настойки сетевого подключения), вы можете использовать силы Командной строки изменить настройки вашего Firewall’а. Так как Брандмауэр контролирует входящие и исходящие соединения, то вы должны отключить их обоих для ваших файлов. Для этого сделайте следующее:
- Откройте Блокнот и копируйте следующие строки в него:
for %%G in (“C:\Program Files (x86)\Test Folder\*.exe”) do (netsh advfirewall firewall add rule name=”Blocked With Batchfile %%G” dir=in action=block program=”%%G” enable=yes profile=anynetsh advfirewall firewall add rule name=”Blocked With Batchfile %%G” dir=out action=block program=”%%G” enable=yes profile=any)
- Затем сохраните текстовый файл и измените его расширение на .bat.
- Запустите созданный BAT-файл и вы заблокируйте все файлы, которые были указанны в скрипте. Соответственно, замените в скрипте строчку C:\Program Files (x86)\Test Folder\ на ту, которая нужна вам.
- Помимо созданного BAT-файла, вы можете также использовать продвинутый скрипт, который может выполнять поиск exe-файлов и добавлять их в список блокировки для Брандмауэра Windows.
- Опять-таки, создайте текстовый файл и вставьте его в него следующий скрипт:
@ echo off
@setlocal enableextensions
@cd /d «%~dp0»
color F0
title Exe blocker
echo.
echo. ==============================
echo. == Welcome to .exe blocker ==
echo. ==============================
echo.
Echo Current location: %cd%
echo.
CHOICE /C YN /M «Do you want to search in the current location?»
IF Errorlevel 2 goto END
IF Errorlevel 1 goto Yes
::———————CHECK and searching files——————
:Yes
set location=%cd%
cls
echo.
Echo. Searching for .exe files in %location%
echo.
set /a count=0
echo.___________________________________________
echo.Found:
echo.
FOR %%i in (*.exe) do (echo. %%i & set /a count+=1)
echo.___________________________________________
echo.
title Exe blocker %count% Files found
echo. Number of files found with .exe extention: %count%
echo.
echo.
set add2=
CHOICE /C YN /M «Do you want to add aditional information?»
IF Errorlevel 2 goto block
IF Errorlevel 1 goto ADD
::——————ADD additional info—————
:ADD
Set /p add=Please type the additonal information for the name:
Set add2=%add%
::——————Add files to firewall—————
:block
cls
title Exe blocker — Blocking Rules
set /a countt=0
echo.
echo.___________________________________________
echo. Inbound Rules
echo.___________________________________________
FOR /r %%B in (*.exe) do (set /a countt+=1 & echo.%countt%. %%~nxB blocking… & netsh advfirewall firewall add rule name=»%add2%%%~nxB» dir=in action=block program=»%%~dpfnxB»)
echo.___________________________________________
echo. OutBound rules
set /a coun=0
echo.___________________________________________
FOR /r %%B in (*.exe) do (set /a coun+=1 & echo.%coun%. %%~nxB blocking… & netsh advfirewall firewall add rule name=»%add2%%%~nxB» dir=out action=block program=»%%~dpfnxB»)
echo.___________________________________________
Echo. Added files to Firewall
echo.
title Exe blocker — Rules Blocked
Pause
::————————END———————
:END
cls
ECHO.
Echo. Thanks for using .exe blocker
Echo.
CHOICE /C YN /T 10 /D n /M «Do you want to open firewall? (10 seconds)»
IF Errorlevel 2 goto EXIT
IF Errorlevel 1 goto OPEN
::——————Open Firewall—————
:OPEN
start «C:\Windows\System32» rundll32.exe shell32.dll,Control_RunDLL firewall.cpl
Goto EXIT
:EXIT
- Чтобы разрешить заблокированные файлы, просто замените значение action=block на значение action=allow.
- Чтобы разрешать или блокировать dll-файлы, найдите в скрипте *.exe и замените ее на *.dll.