È possibile bloccare un'applicazione dall'accesso a Internet con cmd?


1

Normalmente, userei FireWall per impedire a un'applicazione di accedere a Internet . Ma non voglio configurare il mio sistema FireWall solo per un'applicazione.

Quello che voglio è: creare un file bat per avviare un'applicazione. Il file bat simile a questo .

Se eseguo il file bat, l'applicazione non può accedere a Internet. Se eseguo direttamente l'applicazione, l'applicazione può accedere a Internet.

è possibile farlo?

Risposte:


0

È possibile aggiungere una regola firewall per bloccare il traffico in entrata e in uscita prima di eseguire l'applicazione e disabilitare (o eliminare) le regole del firewall dopo essere usciti.

Regole del blocco di installazione

:: 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%"

Esegui l'app con Internet bloccato

@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

Dettagli

  • documentazione: netsh advfirewall firewall add rule -?
  • puoi anche creare ed eliminare le regole ogni volta che esegui l'app, ma mi piace creare le regole una volta e poi semplicemente abilitarlo o disabilitarlo di più
  • hai bisogno dei diritti di amministratore

Vedo che Windows non ha progettato questa funzionalità, quindi per ora dobbiamo farlo manualmente. Ma come usare questo file batch? Eseguirlo per avviare l'applicazione e ricordare di eseguirlo di nuovo dopo aver chiuso l'applicazione per eliminare il firewall?
123

L'intenzione era di eseguire una volta lo script delle regole del blocco di installazione . E poi avvierai la tua app usando l'app Esegui l'app con lo script Internet bloccato che fa 3 cose: abilita le regole di blocco del firewall, avvia l'app e attende che esca (cioè start /wait) e infine disabilita le regole del firewall.
Vlastimil Ovčáčík,

Che cosa succede se eseguo 2 istanze dell'applicazione, quindi esco dalla prima istanza ma consento comunque alla seconda istanza di funzionare.
123
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.