Windows Server : tracer les requêtes DNS des utilisateurs

Le serveur DNS présent dans Windows Server 2016/2019 permet d’enregistrer toutes les requêtes des utilisateurs. Pour les consigner, allez dans les propriétés du serveur DNS :

Propriétés du serveur DNS de Windows Server 2016/2019

Cliquez sur l’onglet Enregistrement de débogage pour enregistrer les requêtes DNS dans un fichier journal. Fixez la taille maximale du fichier de logs.

Propriétés du serveur DNS de Windows Server 2016/2019 > Enregistrement de débogage

Un script PowerShell pour extraire les noms de domaines consultés

Je vous ai concocté un script PowerShell qui vous permettra de disposer de la liste des domaines consultés par les utilisateurs utilisant le serveur DNS.

$res=@()
$log=Get-content -Path 'd:\dns.log'
ForEach($row in $log)
{
    If( $row -Match '\([0-9]+\)(.+)\([0-9]+\)$')
    {
        $domain=$Matches[1] -replace '\([0-9]+\)', '.'
        $res+=[PSCustomObject]@{dom=$domain}
    }
}
$res|Sort -Unique -Property Dom |Out-GridView -Title 'Domaines'
$res=$null

En voici le résultat !

Domaines extraits du fichier journal

 

Réseau /