Pare-feu : bloquer tout les programmes d'un dossier [Résolu/Fermé]

Signaler
-
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
-
Bonjour,

Je souhaite, depuis le pare-feu Windows 7, bloquer l’accès internet de tout les programmes .exe d'un dossier.

En effet je souhaite bloquer une liste de X programmes dans le dossier C:\Program Files\"DOSSIER"
Aucun problème pour bloquer les .exe un par un mais c'est vraiment très long !

Avez-vous une solution rapide ?

Merci d'avance !

16 réponses

Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
Non, il n'accepte pas d'avoir dir=in et dir=out.
Toutefois vous pouvez refaire l'ensemble en laissant juste dir=in.
2
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
14
Date d'inscription
mercredi 18 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016

J'ai rajouté une ligne et ca fonctionne nickel

cd "C:\Program Files (x86)\Common Files\Gestionnaire d'installation SOLIDWORKS"
$appli = ls * -recurse | where {$_.name -like "*.exe"}
foreach ($app in $appli)
{
$name = $app.name
$path = $app.fullname
netsh adv firewall add rule name=$name dir=in action=block program=$path
netsh adv firewall add rule name=$name dir=out action=block program=$path
}


Merci pour votre aide !
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
Bonjour,

Pour faire ce dont tu as besoin, je te propose un petit block powershell.
Tu dois donc exécuter powershell en mode administrateur.
Ensuite tape ceci :
cd "ton dossier"
$appli = ls *.exe
foreach ($app in $appli)
{
$name = $app.name
netsh adv firewall add rule name=$name dir=out action=block program=$app.fullpath
}

ton dossier est l'emplacement où sont tes applications que tu veux bloquer.
Ceci va créer une règle avec comme nom, le nom de ton application, qui va bloquer le trafic sortant.
Bonjour,

Merci beaucoup pour cette réponse.

En gros je dois taper tout simplement ceci ? :

cd C:\Program Files\"DOSSIER"
$appli = ls *.exe
foreach ($app in $appli)
{
$name = $app.name
netsh adv firewall add rule name=$name dir=out action=block program=$app.fullpath
}


Ce code bloque donc tout le trafic sortant de TOUTES les applications dans C:\Program Files\"DOSSIER" ?

Et si je souhaite désactivé ce blocage ?

Encore merci !
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
En effet, au temps pour moi.
Allez, on change encore une fois :)

cd "C:\Program Files (x86)\Common Files\Gestionnaire d'installation SOLIDWORKS"
$appli = ls * -recurse | where {$_.name -like "*.exe"}
foreach ($app in $appli)
{
$name = $app.name
$path = $app.fullname
netsh adv firewall add rule name=$name dir=out action=block program=$path
}


Cette fois devrait être la bonne
Messages postés
14
Date d'inscription
mercredi 18 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016

Merci, ça à l'air de marcher à merveille !

est-il possible d'ajouter aussi une restriction en trafic entrant ?

du style

cd "C:\Program Files (x86)\Common Files\Gestionnaire d'installation SOLIDWORKS"
$appli = ls * -recurse | where {$_.name -like "*.exe"}
foreach ($app in $appli)
{
$name = $app.name
$path = $app.fullname
netsh adv firewall add rule name=$name dir=in dir=out action=block program=$path
}
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
Ok impeccable.

Bonne journée
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
Bonjour,
Si le dossier dont il est question s'appelle exactement "DOSSIER" (avec les guillemets, la première commande est
cd 'C:\program Files\"DOSSIER"'

Ensuite, j'ai vu une erreur sur la deuxième ligne : il faut ajouter -recurse à la fin. Ce qui donne :
$appli = ls *.exe -recurse


Oui, ce code bloque le trafic d'absolument tous les fichiers .exe du dossier C:\program Files\"DOSSIER".

Pour supprimer toutes les règles précédemment créées, utilise ce code de la même manière :
cd 'C:\program Files\"DOSSIER"'
$appli = ls *.exe
foreach ($app in $appli)
{
$name = $app.name
netsh adv firewall delete rule name=$name
}
Bonjour,

Merci pour cette réponse mais ça ne fonctionne pas.

J'ai Copier Coller ce code tel quel dans Windows PowerShell (%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe) en mode admin :

cd 'C:\Program Files (x86)\Common Files\DOSSIER'
$appli = ls *.exe -recurse
foreach ($app in $appli)
{
$name = $app.name
netsh adv firewall add rule name=$name dir=out action=block program=$app.fullpath
}


Comment être sur que la commande a bien été prise en compte ?

Les Soft présents dans C:\Program Files (x86)\Common Files\DOSSIER se connecte toujours sur le net !

Merci
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
Est ce que vous avez des messages d'erreurs ?

Si la commande c'est bien exécutée, vous pouvez voir les règle dans "Pare-feu Windows avec fonctions avancées de sécurité", catégorie "Règles de trafic sortant"
Pas de message d'erreur, voulez-vous que je vous envoie une capture du powershell ?

Dans le "Pare-feu Windows avec fonctions avancées de sécurité", catégorie "Règles de trafic sortant" je n'ai pas vu apparaître de nouvel règle.
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
Oui en effet, je veux bien une capture.
Merci
http://img15.hostingpics.net/pics/480751Sanstitre.png
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
Appuyez une ou deux fois sur entrée.
Vous devriez avoir des "ok" ou des erreurs.
En appuyant sur entrée j'ai juste ceci qui apparaît à chaque "entrée"

>>
>>
>>
J'ai eu une erreur, je vous poste le screen de suite
http://img15.hostingpics.net/pics/958061Sanstitre.png
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
Ok, au lieu de la première et dernière apostrophe de la première ligne, mettez des guillemet. Le problème viens de l'apostrophe de "d'installation"
Messages postés
14
Date d'inscription
mercredi 18 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016

Merci,

J'ai à nouveau un message en appuyant 2 fois de suite sur entrée

http://img15.hostingpics.net/pics/764881Sanstitre.png
Messages postés
14
Date d'inscription
mercredi 18 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016

C'est de ma faute : il n'y a pas de .exe dans le répertoire spécifié mais dans plusieurs sous-dossier.

Est-il possible d'améliorer ce code en ajoutant aussi TOUS les sous dossiers ?
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
C'est ce qu'est censé faire le -recurse à la suite de ls.
Est ce que vous pouvez faire
ls *.exe* -recurse
et faire un screen du résultat ?
Messages postés
14
Date d'inscription
mercredi 18 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016

Même message

http://img15.hostingpics.net/pics/750853Sanstitre.png
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
Faites juste
ls *.exe* -recurse
en dehors du bloc.
Je voudrais m'assurer s'il trouve des choses
Messages postés
14
Date d'inscription
mercredi 18 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016

Juste taper
ls *.exe* -recurse


Ça ne fait rien, voila le résultat :

PS C:\Users\User> ls *.exe* -recurse
PS C:\Users\User>
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
Ok ensuite, taper :
cd "C:\Program Files (x86)\Common Files\Gestionnaire d'installation SOLIDWORKS"
ls -recurse


Et vérifier s'il sort des fichiers .exe
Messages postés
14
Date d'inscription
mercredi 18 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016

Il me liste a priori tout les fichiers présent dans C:\Program Files (x86)\Common Files\Gestionnaire d'installation SOLIDWORKS

Les DLL, .exe, .htm, .gif, .... ETC
Messages postés
14
Date d'inscription
mercredi 18 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016

... et tout les fichiers des sous-dossiers
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
Et si à la suite vous faites
ls *.exe -recurse

Il sort des choses ?
Messages postés
14
Date d'inscription
mercredi 18 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016

Aucun listing

PS C:\Users\User> cd "C:\Program Files (x86)\Common Files\Gestionnaire d'installation SOLIDWORKS"
PS C:\Program Files (x86)\Common Files\Gestionnaire d'installation SOLIDWORKS> ls *.exe -recurse
PS C:\Program Files (x86)\Common Files\Gestionnaire d'installation SOLIDWORKS>
Messages postés
14
Date d'inscription
mercredi 18 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016

Avez-vous une piste ?
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
Ben là s'il a rien ressorti la dernière fois c'est qu'il n'y a pas d'exe dans les sous-dossiers.
Vous me confirmez que vous en avez en cherchant directement dans l'explorateur windows ?
Messages postés
14
Date d'inscription
mercredi 18 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016

Oui j'ai bien des .exe dans différents sous-dossiers de C:\Program Files (x86)\Common Files\Gestionnaire d'installation SOLIDWORKS

Je pense que la commande
ls *.exe -recurse
ne marche pas.

Par contre la commande
 cd "C:\Program Files (x86)\Common Files\Gestionnaire d'installation SOLIDWORKS"
ls -recurse
fonctionne bien.

Voici une capture d'une parti du résultat de la commande ci-dessus ou l'on remarque qu'il ressort bien en autre des .exe

http://img15.hostingpics.net/pics/934668Sanstitre.png

Merci !
Messages postés
14
Date d'inscription
mercredi 18 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016

Nous avançons : quand je tape la commande
cd "C:\Program Files (x86)\Common Files\Gestionnaire d'installation SOLIDWORKS\CheckForUpdates"
ls *.exe -recurse
il me trouve bien les .exe de ce dossier, mais seulement ce dossier, il ne va pas plus loin
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
ok, il y a des choses étranges qui se passent :)
On va essayer autre chose.
Dans le dossier solidworks :
ls * -recurse | where {$_.name -like "*.exe"}
Messages postés
14
Date d'inscription
mercredi 18 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016

ok la commande
cd "C:\Program Files (x86)\Common Files\Gestionnaire d'installation SOLIDWORKS"
ls * -recurse | where {$_.name -like "*.exe"}


marche parfaitement, il me trouve tous les .exe de tout les sous-dossiers compris dans C:\Program Files (x86)\Common Files\Gestionnaire d'installation SOLIDWORKS
à savoir 7 .exe
Messages postés
17
Date d'inscription
mardi 17 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
6
C'est déjà une bonne chose.
Le bloc devient donc

cd "C:\Program Files (x86)\Common Files\Gestionnaire d'installation SOLIDWORKS"
$appli = ls * -recurse | where {$_.name -like "*.exe"}
foreach ($app in $appli)
{
$name = $app.name
netsh adv firewall add rule name=$name dir=out action=block program=$app.fullpath
}

Messages postés
14
Date d'inscription
mercredi 18 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016

Ok, il prend bien en compte la commande et bloque bien les 7 .exe ; j'ai 7 fois OK (les règles sont bien ajoutées dans le pare-feu) mais ne marche pas.

En effet les .exe se connectent toujours au net et le chemin me parait erroné. Voir capture :

http://img15.hostingpics.net/pics/874902Sanstitre.png