Centraliser les journaux Windows vers un serveur RSYSLOG Debian avec NxLog

Introduction

Centraliser les logs des systèmes Windows vers un serveur RSYSLOG sous Debian permet de faciliter la surveillance, le diagnostic et la gestion centralisée des événements de sécurité et système.
Voici comment procéder simplement avec NxLog Community Edition.


Étape 1 : Téléchargement de NxLog

Téléchargez la version Community Edition de NxLog pour Windows depuis le lien suivant

https://nxlog.co/downloads/nxlog-ce#nxlog-community-edition

Sélectionnez la version .msi correspondante.


Étape 2 : Transfert du fichier d'installation

Transférez le fichier .msi vers votre machine Windows. Si vous utilisez Hyper-V, vous pouvez simplement faire un copier/coller depuis Notepad vers votre environnement virtuel.


Étape 3 : Installation silencieuse de NxLog

Depuis une invite de commande en mode administrateur, installez NxLog en exécutant la commande suivante :
(nous avons placé nxlog-ce dans un dossier TEMP pour l'occasion)

msiexec.exe /i "C:\TEMP\nxlog-ce-3.2.2329.msi" /quiet /qn /norestart

Étape 4 : Vérification de l'installation

Après l'installation, un dossier nommé nxlog apparaît automatiquement.

gci "C:\Program Files\"

Étape 5 : Configuration de NxLog

Créez un fichier de configuration précis dans le dossier conf de NxLog.
Attention à modifier uniquement l'adresse IP du serveur RSYSLOG Debian (IP-SERVEUR-RSYSLOG dans l'exemple ci-dessous), puis copiez/collez le bloc ENTIER.
Pour faire, copiez/collez d'abord le bloc entier dans Notepad, modifiez l'IP puis sélectionnez tous et copier/collez dans votre VM/terminal.

$ConfigContent = @'
define ROOT C:\Program Files\nxlog
Moduledir %ROOT%\modules
CacheDir %ROOT%\data
Pidfile %ROOT%\data\nxlog.pid
SpoolDir %ROOT%\data
LogFile %ROOT%\data\nxlog.log

<Extension syslog>
Module xm_syslog
</Extension>

<Input eventlog>
Module im_msvistalog
Query <QueryList>\
<Query Id="0">\
<Select Path="Application">*</Select>\
<Select Path="System">*</Select>\
<Select Path="Security">*</Select>\
</Query>\
</QueryList>
</Input>

<Output out>
Module om_udp
Host IP-SERVEUR-RSYSLOG
Port 514
Exec to_syslog_ietf();
</Output>

<Route 1>
Path eventlog => out
</Route>
'@

[System.IO.File]::WriteAllText("C:\Program Files\nxlog\conf\nxlog.conf", $ConfigContent, [System.Text.UTF8Encoding]::new($false))

La précision de la syntaxe est très importante, veillez à ne pas modifier autre chose que l'IP sans comprendre le paramétrage au préalable !


Étape 6 : Démarrage du service NxLog

Enfin, activez le service NxLog pour démarrer automatiquement avec Windows et lancez-le immédiatement :

Set-Service nxlog -StartupType Automatic
Start-Service nxlog

Étape 7 : Vérification de la centralisation des logs

Votre machine Windows envoie désormais instantanément ses journaux vers votre serveur RSYSLOG sous Debian.
Vous pouvez vérifier la réception des journaux côté Debian en suivant les indications du tuto RSYSLOG dédié sur le blog.


⬆️ Retour en haut de la page