Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5
  Condividi: Facebook Twitter
file batch per blocco Ip
#1
salve a tutti
come ho gia detto in altre discussioni, ho il problema di dover snellire il traffico dati.
Pertanto sono stato costretto a farmi un piccolo software, 
al fine di bloccare tutto quel traffico inutile e non richiesto, della rete.


Come ho gia detto, per il monitoraggio della connessione uso Glasswire nella versione gratuita (ottimo software).
Da cui ottengo facilmente il nome dell'Host, l'IP ed il nome del processo che lo ha contattato.

Come firewall uso quello di Windows.
Per attivarlo mi sono fatto un file BAT in cui  all'interno c'e scritto
WF.msc
dopo ho creato un collegamento a questo file bat, di modo che con un solo click, lo avvio con i diritti di amministratore
(click tasto destro sul collegamento - proprietà - collegamento - avanzate - esegui come amministratore)

Una volta aperte le impostazioni avanzate del firewall di windows, le modifiche sono un po macchinose. 

Pertanto mi sono fatto un piccolo software batch, con il quale blocco un ip, nel firewall di windows, semplicemente mettendo il nome della regola e  l'indirizzo IP (dati che prelevo agevolmente da Glasswire), facendo un facile past e copy.

le righe di codice all'interno sono

Codice:
@ECHO OFF
@SETLOCAL EnableDelayedExpansion
@CD %~dp0

::Check for Admin rights; Exit if no rights
NET SESSION >nul 2>&1
IF %ERRORLEVEL% EQU 0 (goto :BEGIN) ELSE (Echo ERROR: devi avviare il file come amministratore. && pause && goto :eof)

:BEGIN
::Ask for rule name & port
set /p RULE_NAME=Quale nome alla nuopva regola vuoi dare, a cui successivamente aggiungere il blocco IP:
cls
set /p NEW_PORT=Quali IP vuoi bloccare nella nuova regola creata:"%RULE_NAME%":

::Get the LocalPort to Variable
netsh advfirewall firewall add rule name="%RULE_NAME%" dir=in action=block remoteip="%NEW_PORT%"
netsh advfirewall firewall add rule name="%RULE_NAME%" dir=out action=block remoteip="%NEW_PORT%"

WF.msc
pause


 
(anche qui ho usato il trucco del collegamento, per i diritti di amministrazione, di modo da avviarlo con un solo click)

Nonostante ho risolto il mio problema, vorrei ulteriormente migliorarlo, di modo che quando eseguo il file bat in oggetto
mi trasferisca il valore delle ultime 2 stringhe in un altro file bat, per registrarle.

Ad esempio quando quanto faccio partire il file bat in oggetto
mi chiede per primo la regola da aggiungere, 
se scrivo ad esempio "Amazon"
poi mi chiede il numero di ip da bloccare in quella regola 
e scrivo l'ip di Amazon, preso da Glasswire, che e' ad esempio 172.64.145.85, 

pertanto le due ultime stringhe diventeranno:

Codice:
netsh advfirewall firewall add rule name="Amazon" dir=in action=block remoteip=172.64.145.85

netsh advfirewall firewall add rule name="Amazon" dir=out action=block remoteip=172.64.145.85

esse saranno eseguite
e l'ip sara bloccato
e poi sara avviata l'interfaccia del firewall, che mostra le due nuove regole in entrata ed uscita, con il relativo  l'IP bloccato.

Ma io avrei bisogno di copiare quelle righe in un altro file bat, da eseguire successivamente, nel caso devo ripristinare il firewall con il comando 


Codice:
netsh advfirewall reset


Quest'ultimo comando ripristina il firewall nelle condizioni originali eliminando tutte le modifiche fatte.
Questa operazione serve quando internet non funziona piu correttamente, perche si sono andati a bloccare degli IP, che non dovevano essere bloccati.
Ma quando il firewall viene resettato, si perdono tutti gli indirizzi precedentemente registrati nelle rispettive regole e si perde il bambino insieme all'acqua sporca.

Avere un secondo file bat compiltato in automatico, significa semplicemente aprirlo, eliminare l'IP che non doveva essere boccato
e poi eseguirlo, 
e saranno facilmente ripristinate tutte le regole, tranne quella errata.

Conoscete un modo per farlo?
Cita messaggio


Messaggi in questa discussione
file batch per blocco Ip - da francesco crash - 18/09/2022, 07:35
RE: file batch per blocco Ip - da rage75 - 18/09/2022, 12:13

Vai al forum:


Utenti che stanno guardando questa discussione: 2 Ospite(i)