Configurar o log do Firewall do Windows

Para configurar o Firewall do Windows para registrar pacotes descartados ou conexões bem-sucedidas, você pode usar:

  • CSP (Provedor de Serviços de Configuração), usando uma solução MDM como Microsoft Intune
  • Política de grupo (GPO)

As instruções a seguir fornecem detalhes de como configurar seus dispositivos. Selecione a opção que melhor atende às suas necessidades.

  1. Entrar no centro de administração do Microsoft Intune
  2. Acesse Firewall de segurança>> de ponto de extremidadeCriar política>Windows 10, Windows 11 e Criarfirewall>do Windows Server >
  3. Insira um nome e, opcionalmente, uma descrição >Avançar
  4. Em Configuração de configuração, para cada tipo de local de rede (Domínio, Privado, Público), configure:
    • Caminho do arquivo de log
    • Habilitar pacotes descartados de log
    • Habilitar conexões de sucesso de log
    • Tamanho máximo do arquivo de log
  5. Selecione Avançar>
  6. Atribuir a política a um grupo que contém como membros os dispositivos ou usuários que você deseja configurar >o Next>Create

Dica

Se preferir, você também pode usar uma política de catálogo configurações para configurar o log do Firewall do Windows.

Como alternativa, você pode configurar dispositivos usando uma política personalizada com o CSP do Firewall.

Perfil de rede Configuração
Domínio Nome da configuração: EnableLogDroppedPackets
OMA-URI: ./Vendor/MSFT/Firewall/MdmStore/DomainProfile/EnableLogDroppedPackets
Domínio Nome da configuração: LogFilePath
OMA-URI: ./Vendor/MSFT/Firewall/MdmStore/DomainProfile/LogFilePath
Domínio Nome da configuração: EnableLogSuccessConnections
OMA-URI: ./Vendor/MSFT/Firewall/MdmStore/DomainProfile/EnableLogSuccessConnections
Domínio Nome da configuração: LogMaxFileSize
OMA-URI: ./Vendor/MSFT/Firewall/MdmStore/DomainProfile/LogMaxFileSize
Private Nome da configuração: EnableLogDroppedPackets
OMA-URI: ./Vendor/MSFT/Firewall/MdmStore/PrivateProfile/EnableLogDroppedPackets
Private Nome da configuração: LogFilePath
OMA-URI: ./Vendor/MSFT/Firewall/MdmStore/PrivateProfile/LogFilePath
Private Nome da configuração: EnableLogSuccessConnections
OMA-URI: ./Vendor/MSFT/Firewall/MdmStore/PrivateProfile/EnableLogSuccessConnections
Private Nome da configuração: LogMaxFileSize
OMA-URI: ./Vendor/MSFT/Firewall/MdmStore/PrivateProfile/LogMaxFileSize
Public Nome da configuração: EnableLogDroppedPackets
OMA-URI: ./Vendor/MSFT/Firewall/MdmStore/PublicProfile/EnableLogDroppedPackets
Public Nome da configuração: LogFilePath
OMA-URI: ./Vendor/MSFT/Firewall/MdmStore/PublicProfile/LogFilePath
Public Nome da configuração: EnableLogSuccessConnections
OMA-URI: ./Vendor/MSFT/Firewall/MdmStore/PublicProfile/EnableLogSuccessConnections
Public Nome da configuração: LogMaxFileSize
OMA-URI: ./Vendor/MSFT/Firewall/MdmStore/PublicProfile/LogMaxFileSize

Importante

O local especificado deve ter permissões atribuídas que permitem que o serviço firewall do Windows escreva no arquivo de log.

Recomendações

Aqui estão algumas recomendações para configurar o log do Firewall do Windows:

  • Altere o tamanho do log para pelo menos 20.480 KB (20 MB) para garantir que o arquivo de log não seja preenchido muito rapidamente. O tamanho máximo do log é de 32.767 KB (32 MB)
  • Para cada perfil (Domínio, Privado e Público) altere o nome do arquivo de log padrão de %windir%\system32\logfiles\firewall\pfirewall.log para:
    • %windir%\system32\logfiles\firewall\pfirewall_Domain.log
    • %windir%\system32\logfiles\firewall\pfirewall_Private.log
    • %windir%\system32\logfiles\firewall\pfirewall_Public.log
  • Log derrubou pacotes para Sim
  • Registrar conexões bem-sucedidas com o Sim

Em um único sistema, você pode usar os seguintes comandos para configurar o log:

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

Métodos de análise

Há vários métodos para analisar os arquivos de log do Firewall do Windows. Por exemplo:

Dica

Se os logs forem lentos para aparecer em sua solução SIEM, você poderá diminuir o tamanho do arquivo de log. Basta ter cuidado para que o downsizing resulte em mais uso de recursos devido ao aumento da rotação de log.

Solucionar problemas se o arquivo de log não for criado ou modificado

Às vezes, os arquivos de log do Firewall do Windows não são criados ou os eventos não são gravados nos arquivos de log. Alguns exemplos em que essa condição pode ocorrer incluem:

  • Permissões ausentes para o Serviço de Firewall Windows Defender (mpssvc) na pasta ou nos arquivos de log
  • Você deseja armazenar os arquivos de log em uma pasta diferente e as permissões estão ausentes ou não são definidas automaticamente
  • se o log de firewall estiver configurado por meio de configurações de política, isso poderá acontecer
    • a pasta de log no local %windir%\System32\LogFiles\firewall padrão não existe
    • a pasta de log em um caminho personalizado não existe

Em ambos os casos, você deve criar a pasta manualmente ou por meio de script e adicionar as permissões para mpssvc.

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

Verifique se mpssvc tem FullControl na pasta e nos arquivos. Em uma sessão do PowerShell elevada, use os seguintes comandos, garantindo o uso do caminho correto:

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

A saída deve mostrar NT SERVICE\mpssvc ter FullControl:

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

Caso contrário, adicione permissões FullControl para mpssvc a pasta, subpastas e arquivos. Use o caminho correto.

$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

Reinicie o dispositivo para reiniciar o serviço de firewall Windows Defender.