web-dev-qa-db-fra.com

Comment savoir quelle règle de pare-feu Windows bloque le trafic

J'essaie de configurer un ordinateur pour accepter tout le trafic entrant mais n'autorise que le trafic sortant vers une adresse IP spécifique. J'ai défini une règle Tout autoriser pour Entrant et une règle Autoriser qui spécifie une adresse IP comme seule adresse sortante acceptable. J'ai également mis en place une règle de refus de toutes les sorties, en supposant que l'autre règle aura la priorité.

Le problème que je rencontre est que tout le trafic est bloqué, même le trafic allant à l'IP que j'ai spécifié autorisé.

Je cherche un moyen de suivre le trafic à travers le pare-feu et de voir exactement quelle règle bloque le trafic. Le journal généré par la surveillance du pare-feu m'indique que le trafic a été supprimé, mais pas la règle qui l'a bloqué.

11
Josh

(Remarque: cela s'applique à Windows 7 et peut ne pas fonctionner avec les versions les plus récentes.)

Les étapes suivantes vous mèneront à la règle bloquant votre connexion:

  • Ouvrez une console Windows (avec les droits d'administration) pour entrer des commandes.
  • Activer l'audit pour la plateforme de filtrage Windows (WFP):
    • commande d'exécution:
      auditpol /set /subcategory:"Filtering Platform Packet Drop" /success:enable /failure:enable
    • commande d'exécution:
      auditpol /set /subcategory:"Filtering Platform Connection" /success:enable /failure:enable
  • (Cela peut vous noyer dans les données du journal des événements. Activer uniquement les audits d'échec et éventuellement les échecs de connexion réduira le nombre d'entrées de journal. Soyez sélectif quant à ce dont vous avez réellement besoin.)
  • Reproduire le problème
  • Exécutez la commande: netsh wfp show state (cela crée un fichier XML dans le dossier actuel)
  • Ouvrez l'observateur d'événements: Exécuter (Windows+R)> eventvwr.msc
    • allez dans "Journaux Windows"> "Sécurité"
    • dans la liste, identifiez le journal des paquets perdus (astuce: utilisez la fonction de recherche du menu de droite pour rechercher des éléments (adresse IP source, port de destination, etc.) spécifiques à votre problème).
    • dans les détails du journal, faites défiler et notez l'ID de filtre utilisé pour bloquer le paquet
  • Ouvrez le fichier XML généré:
    • recherche l'identifiant de filtre noté et extrait le nom de la règle (élément "displayData> nom" sur le noeud XML correspondant)

Cela vous donnera un bon départ pour trouver la règle de blocage.

Lorsque vous avez terminé, n'oubliez pas de désactiver l'audit:

  • commande d'exécution:
    auditpol /set /subcategory:"Filtering Platform Packet Drop" /success:disable /failure:disable
  • commande d'exécution:
    auditpol /set /subcategory:"Filtering Platform Connection" /success:disable /failure:disable

Remarque: En fonction de votre paramètre de langue Windows, le service d'audit peut utiliser différents noms non anglais. Pour rechercher les noms de sous-catégories, exécutez la commande: auditpol /get /category:* et recherchez les sous-catégories correspondant à "Filtrage des paquets de la plate-forme" et "Filtrage de la connexion à la plate-forme" dans la langue du système.

17
Bob