Configurer la journalisation du Pare-feu Windows

Pour configurer le Pare-feu Windows de façon à journaliser les paquets supprimés ou les connexions réussies, vous pouvez utiliser :

  • Fournisseur de services de configuration (CSP), à l’aide d’une solution GPM comme Microsoft Intune
  • Stratégie de groupe (GPO)

Les instructions suivantes fournissent des détails sur la configuration de vos appareils. Sélectionnez l’option qui convient le mieux à vos besoins.

  1. Connectez-vous au Centre d’administration Microsoft Intune
  2. Accédez àPare-feu>de sécurité> du point de terminaisonCréer une stratégie>Windows 10, Windows 11 etCréer unpare-feu> Windows Server >
  3. Entrez un nom et, éventuellement, une description >Suivant
  4. Sous Paramètres de configuration, pour chaque type d’emplacement réseau (Domaine, Privé, Public), configurez :
    • Chemin d’accès au fichier journal
    • Activer les paquets supprimés dans le journal
    • Activer les connexions de réussite des journaux
    • Taille maximale du fichier journal
  5. Sélectionnez Suivant>Suivant
  6. Affecter la stratégie à un groupe qui contient en tant que membres les appareils ou les utilisateurs que vous souhaitez configurer >La prochaine>création

Astuce

Si vous préférez, vous pouvez également utiliser une stratégie de catalogue paramètres pour configurer la journalisation du Pare-feu Windows.

Vous pouvez également configurer des appareils à l’aide d’une stratégie personnalisée avec le fournisseur de services de configuration de pare-feu.

Profil réseau Paramètre
Domaine Nom du paramètre : EnableLogDroppedPackets
OMA-URI : ./Vendor/MSFT/Firewall/MdmStore/DomainProfile/EnableLogDroppedPackets
Domaine Nom du paramètre : LogFilePath
OMA-URI : ./Vendor/MSFT/Firewall/MdmStore/DomainProfile/LogFilePath
Domaine Nom du paramètre : EnableLogSuccessConnections
OMA-URI : ./Vendor/MSFT/Firewall/MdmStore/DomainProfile/EnableLogSuccessConnections
Domaine Nom du paramètre : LogMaxFileSize
OMA-URI : ./Vendor/MSFT/Firewall/MdmStore/DomainProfile/LogMaxFileSize
Private Nom du paramètre : EnableLogDroppedPackets
OMA-URI : ./Vendor/MSFT/Firewall/MdmStore/PrivateProfile/EnableLogDroppedPackets
Private Nom du paramètre : LogFilePath
OMA-URI : ./Vendor/MSFT/Firewall/MdmStore/PrivateProfile/LogFilePath
Private Nom du paramètre : EnableLogSuccessConnections
OMA-URI : ./Vendor/MSFT/Firewall/MdmStore/PrivateProfile/EnableLogSuccessConnections
Private Nom du paramètre : LogMaxFileSize
OMA-URI : ./Vendor/MSFT/Firewall/MdmStore/PrivateProfile/LogMaxFileSize
Public Nom du paramètre : EnableLogDroppedPackets
OMA-URI : ./Vendor/MSFT/Firewall/MdmStore/PublicProfile/EnableLogDroppedPackets
Public Nom du paramètre : LogFilePath
OMA-URI : ./Vendor/MSFT/Firewall/MdmStore/PublicProfile/LogFilePath
Public Nom du paramètre : EnableLogSuccessConnections
OMA-URI : ./Vendor/MSFT/Firewall/MdmStore/PublicProfile/EnableLogSuccessConnections
Public Nom du paramètre : LogMaxFileSize
OMA-URI : ./Vendor/MSFT/Firewall/MdmStore/PublicProfile/LogMaxFileSize

Important

L’emplacement que vous spécifiez doit disposer d’autorisations qui permettent au service Pare-feu Windows d’écrire dans le fichier journal.

Recommandations

Voici quelques recommandations pour configurer la journalisation du Pare-feu Windows :

  • Modifiez la taille de journalisation sur au moins 20 480 Ko (20 Mo) pour vous assurer que le fichier journal ne se remplit pas trop rapidement. La taille maximale du journal est de 32 767 Ko (32 Mo)
  • Pour chaque profil (domaine, privé et public), remplacez le nom du fichier journal par défaut par %windir%\system32\logfiles\firewall\pfirewall.log :
    • %windir%\system32\logfiles\firewall\pfirewall_Domain.log
    • %windir%\system32\logfiles\firewall\pfirewall_Private.log
    • %windir%\system32\logfiles\firewall\pfirewall_Public.log
  • Journaliser les paquets supprimés sur Oui
  • Enregistrer les connexions réussies dans Oui

Sur un système unique, vous pouvez utiliser les commandes suivantes pour configurer la journalisation :

netsh advfirewall>set allprofiles logging allowedconnections enable
netsh advfirewall>set allprofiles logging droppedconnections enable

Méthodes d’analyse

Il existe plusieurs méthodes pour analyser les fichiers journaux du Pare-feu Windows. Exemple :

Astuce

Si les journaux sont lents à apparaître dans votre solution SIEM, vous pouvez réduire la taille du fichier journal. Veillez simplement à ce que la réduction des effectifs entraîne une plus grande utilisation des ressources en raison de la rotation accrue des journaux.

Résoudre les problèmes si le fichier journal n’est pas créé ou modifié

Parfois, les fichiers journaux du Pare-feu Windows ne sont pas créés ou les événements ne sont pas écrits dans les fichiers journaux. Voici quelques exemples où cette condition peut se produire :

  • Autorisations manquantes pour le service de pare-feu Windows Defender (mpssvc) sur le dossier ou sur les fichiers journaux
  • Vous souhaitez stocker les fichiers journaux dans un autre dossier et les autorisations sont manquantes ou ne sont pas définies automatiquement
  • si la journalisation du pare-feu est configurée via les paramètres de stratégie, il peut arriver que
    • le dossier du journal à l’emplacement %windir%\System32\LogFiles\firewall par défaut n’existe pas
    • le dossier de journal dans un chemin personnalisé n’existe pas

Dans les deux cas, vous devez créer le dossier manuellement ou via un script et ajouter les autorisations pour mpssvc.

New-Item -ItemType Directory -Path $env:windir\System32\LogFiles\Firewall

Vérifiez si mpssvca FullControl sur le dossier et les fichiers. À partir d’une session PowerShell avec élévation de privilèges, utilisez les commandes suivantes, en veillant à utiliser le chemin d’accès correct :

$LogPath = Join-Path -path $env:windir -ChildPath "System32\LogFiles\Firewall"
(Get-ACL -Path $LogPath).Access | Format-Table IdentityReference,FileSystemRights,AccessControlType,IsInherited,InheritanceFlags -AutoSize

La sortie doit indiquer NT SERVICE\mpssvcfullcontrol :

IdentityReference      FileSystemRights AccessControlType IsInherited InheritanceFlags
-----------------      ---------------- ----------------- ----------- ----------------
NT AUTHORITY\SYSTEM         FullControl             Allow       False    ObjectInherit
BUILTIN\Administrators      FullControl             Allow       False    ObjectInherit
NT SERVICE\mpssvc           FullControl             Allow       False    ObjectInherit

Si ce n’est pas le cas, ajoutez les autorisations FullControl pour mpssvc au dossier, aux sous-dossiers et aux fichiers. Veillez à utiliser le chemin d’accès correct.

$LogPath = Join-Path -path $env:windir -ChildPath "System32\LogFiles\Firewall"
$NewAcl = Get-Acl -Path $LogPath 

$identity = "NT SERVICE\mpssvc"
$fileSystemRights = "FullControl"
$inheritanceFlags = "ContainerInherit,ObjectInherit"
$propagationFlags = "None"
$type = "Allow"

$fileSystemAccessRuleArgumentList = $identity, $fileSystemRights, $inheritanceFlags, $propagationFlags, $type
$fileSystemAccessRule = New-Object -TypeName System.Security.AccessControl.FileSystemAccessRule -ArgumentList $fileSystemAccessRuleArgumentList

$NewAcl.SetAccessRule($fileSystemAccessRule)
Set-Acl -Path $LogPath -AclObject $NewAcl

Redémarrez l’appareil pour redémarrer le service de pare-feu Windows Defender.