cmd를 사용하여 응용 프로그램의 인터넷 액세스를 차단할 수 있습니까?

cmd를 사용하여 응용 프로그램의 인터넷 액세스를 차단할 수 있습니까?

일반적으로 저는 FireWall을 사용하여응용 프로그램의 인터넷 액세스 차단. 하지만 단지 응용 프로그램용으로 FireWall 시스템을 설정하고 싶지는 않습니다.

내가 원하는 것은 애플리케이션을 시작하기 위한 bat 파일을 만드는 것입니다. 다음과 유사한 박쥐 파일이것.

bat 파일을 실행하면 응용 프로그램의 인터넷 액세스가 차단됩니다. 애플리케이션을 직접 실행하면 애플리케이션이 인터넷에 액세스할 수 있습니다.

그게 가능할까요?

답변1

애플리케이션을 실행하기 전에 방화벽 규칙을 추가하여 들어오고 나가는 트래픽을 차단하고 종료 후에 방화벽 규칙을 비활성화(또는 삭제)할 수 있습니다.

차단 규칙 설정

:: Variables
set RULE_NAME=TemporaryBlock
set PROGRAM=C:\Program Files (x86)\App\app.exe

netsh advfirewall firewall add rule name="%RULE_NAME%" dir=in action=block profile=any program="%PROGRAM%"
netsh advfirewall firewall add rule name="%RULE_NAME%" dir=out action=block profile=any program="%PROGRAM%"

인터넷이 차단된 상태에서 앱을 실행하세요.

@echo off

:: Variables
set RULE_NAME=TemporaryBlock
set PROGRAM=C:\Program Files (x86)\App\app.exe

:: Block the app
netsh advfirewall firewall set rule name="%RULE_NAME%" dir=in new enable=yes
netsh advfirewall firewall set rule name="%RULE_NAME%" dir=out new enable=yes

:: Running the app
start "" /wait "%PROGRAM%"

:: Disable the firewall rules
netsh advfirewall firewall set rule name="%RULE_NAME%" dir=in new enable=no
netsh advfirewall firewall set rule name="%RULE_NAME%" dir=out new enable=no

세부

  • 선적 서류 비치:netsh advfirewall firewall add rule -?
  • 앱을 실행할 때마다 규칙을 만들고 삭제할 수도 있지만, 저는 규칙을 한 번 만든 다음 활성화하거나 비활성화하는 것을 더 좋아합니다.
  • 관리자 권한이 필요합니다

관련 정보