Utiliser un Raspberry Pi comme serveur Syslog

5
(2)

Présentation du service Rsyslog

Syslog est un protocole définissant un service de journaux d’événements d’un système informatique. Syslog est basé sur le mode client-serveur. Le client émet les informations sur le réseau via le port UDP 514. Le serveur se charge de récupérer ces informations et de créer les journaux.

Rsyslog est une implémentation sous licence libre (GNU GPL v3) du protocole Syslog. Ce logiciel est reconnu pour ses performances élevées et ses nombreuses fonctionnalités.

Installation du service rsyslog

Le service rsyslog est installé par défaut sur Raspberry Pi OS, même dans sa version Lite. Cependant si vous devez l’installer, tapez les commandes suivantes :

sudo apt update
sudo apt upgrade
sudo apt install rsyslog

Configuration du service rsyslog

Il faut tout d’abord configurer le service rsyslog. Editez le fichier “/etc/rsyslog.conf” :

sudo vi /etc/rsyslog.conf

Il faut dé-commenter les lignes correspondant au protocole UDP en supprimant le “#” en début des lignes correspondant à la réception Syslog via UDP :

# provides UDP syslog reception
#module(load="imudp")
#input(type="imudp" port="514")

Ces lignes deviennent donc simplement :

# provides UDP syslog reception
module(load="imudp")
input(type="imudp" port="514")
Contenu du fichier “/etc/rsyslog.conf”

Afin d’utiliser notre nouveau serveur rsyslog, nous devons configurer un modèle. Le modèle indique à rsyslog dans quel fichier placer les données de journalisation qu’il reçoit et dans quel format elles seront.

sudo vi /etc/rsyslog.d/MyRsyslog.conf

Il faut entrer la configuration suivante dans ce fichier (en remplaçant l’adresse IP 192.168.1.200 par celle de l’équipement qui vous transmet les logs) :

$template MyRsyslog, "/var/log/MyRsyslog.log"
if $fromhost-ip startswith "192.168.1.200" then -?MyRsyslog
& stop

Il suffit ensuite de redémarrer le service rsyslog en tapant la commande suivante :

sudo systemctl restart rsyslog

Exemple de configuration du client syslog dans un Edge Router X

Il suffit d’indiquer l’adresse IP du serveur syslog (celle du Raspberry Pi) dans le menu “System” du routeur et d’indiquer le niveau de logs que l’on désire.

Vous récupérez ensuite dans le serveur syslog (le Raspberry Pi) les logs envoyés par le Edge Router X directement dans le fichier /var/log/MyRsyslog.log

Les logs envoyés par le Edge Router X sont stockés dans le fichier “MyRsyslog.log”

Configurez plusieurs sources syslog

Vous pouvez récupérer les informations de plusieurs clients et les journaliser dans des fichiers distincts.

En appliquant la configuration ci-dessous dans le fichier /etc/rsyslog.d/MyRsyslog.conf, les logs seront stockés dans des fichiers MyRsyslog.log situés dans des répertoires distincts pour chaque client.

$template MyRsyslog, "/var/log/clients/%fromhost%/MyRsyslog.log"
*.* ?MyRsyslog
Les logs sont stockés dans un répertoire dédié à chaque client

En appliquant la configuration ci-dessous dans le fichier /etc/rsyslog.d/MyRsyslog.conf, les logs seront stockés dans des fichiers dans le même répertoire mais ayant un nom distincts pour chaque client.

$template MyRsyslog, "/var/log/clients/%fromhost%.log"
*.* ?MyRsyslog
Les logs sont stockés dans un fichier dédié à chaque client

Voilà, le serveur rsyslog est opérationnel dans votre Raspberry Pi !

Votre avis compte !

Note moyenne : 5 / 5. Nombre de votes : 2

Pas encore de vote pour ce tutoriel

Désolé si cet article ne vous a pas intéressé

Merci de commenter afin que je puisse l’améliorer.

Dites-moi comment améliorer cette page.