Journalisation · 7 min read · Sep 13, 2025

Comment configurer la journalisation à distance avec Rsyslog sur Debian 12

Rsyslog est un démon de système de journalisation open-source utilisé pour collecter, filtrer, stocker et transférer des messages de journal des systèmes d’exploitation et des applications. C’est un système de journalisation puissant et flexible qui prend en charge plusieurs protocoles, y compris TCP, UDP et RELP (Reliable Event Logging Protocol). Vous pouvez utiliser Rsyslog pour centraliser les journaux de vos serveurs, applications et bases de données.

Ce guide vous montrera comment installer rsyslog et configurer la journalisation à distance sur le serveur Debian 12. Vous configurerez également un serveur Linux pour envoyer des journaux à distance au serveur Rsyslog.

Prérequis

Pour commencer ce guide, vous avez besoin des éléments suivants :

  • Un serveur Debian 12
  • Un utilisateur non-root avec des privilèges d’administrateur
  • Une machine Linux comme client pour les tests

Installation de Rsyslog

Avant de commencer, vous devez installer Rsyslog sur votre serveur Debian. Dans cette étape, vous installerez Rsyslog via APT, puis démarrerez et activerez le service Rsyslog.

Tout d’abord, exécutez la commande ci-dessous pour mettre à jour l’index des paquets Debian et installer Rsyslog sur votre système. Entrez ‘ Y ‘ pour confirmer l’installation.

sudo apt update  
sudo apt install rsyslog

installer rsyslog

Après l’installation, exécutez la commande ‘ systemctl ‘ ci-dessous pour démarrer et activer le serveur ‘ rsyslog ‘. Ensuite, vérifiez-le pour vous assurer qu’il fonctionne.

sudo systemctl enable --now rsyslog  
sudo systemctl status rsyslog

Dans la sortie suivante, vous pouvez voir que Rsyslog est en cours d’exécution et activé.

vérifier rsyslog

Configuration de UFW (Pare-feu simplifié)

Après l’installation de Rsyslog, vous allez installer et configurer UFW (Uncomplicated Firewall). Vous ouvrirez le port ‘22’ pour le service OpenSSH et le port ‘514’ pour Rsyslog. Ensuite, vous démarrerez et activerez le service UFW.

Pour installer UFW, exécutez la commande ‘ apt ‘ suivante. Saisissez ‘ Y ‘ pour confirmer l’installation.

sudo apt install ufw

installer ufw

Après l’installation, exécutez la commande ‘ufw’ suivante pour activer le profil ‘ OpenSSH ‘ et autoriser l’accès au port ‘514’. Le profil ‘ OpenSSH ‘ permettra l’accès SSH et le port ‘ 514 ‘ est le port syslog.

sudo ufw allow OpenSSH  
sudo ufw allow 514

Maintenant, démarrez et activez UFW avec la commande ci-dessous. Tapez ‘ y ‘ pour confirmer et vous obtiendrez une sortie telle que ‘ Le pare-feu est actif et activé au démarrage du système ‘.

sudo ufw enable

Enfin, vérifiez l’état de UFW avec la commande suivante.

sudo ufw status

Dans la sortie ci-dessous, vous pouvez voir UFW avec le statut actif, le profil OpenSSH et le port ‘ 514 ‘ activé.

configuration ufw

Rsyslog pour recevoir des journaux d’un serveur distant

Maintenant que vous avez installé Rsyslog et configuré UFW, vous êtes prêt à configurer Rsyslog pour recevoir des journaux de serveurs distants. Pour ce faire, vous devez modifier le fichier ‘/etc/rsyslog.conf’ et configurer :

  1. Activer le module ‘ imudp ‘ pour recevoir des journaux de serveurs distants via UDP
  2. Optionnel, activer le ‘ imtcp ‘ pour recevoir des journaux via TCP
  3. Activer l’option ‘ AllowedSender ‘ pour permettre à des sous-réseaux spécifiques d’envoyer des journaux à distance
  4. Ajouter un modèle personnalisé pour Rsyslog
  5. Vérifier la configuration de Rsyslog
  6. Démarrer, activer et vérifier le service Rsyslog

Commençons.

Tout d’abord, éditez le fichier ‘ /etc/rsyslog.conf ‘ en utilisant l’éditeur ‘ nano ‘ suivant.

sudo nano /etc/rsyslog.conf

Décommentez les lignes suivantes pour activer le module ‘ imudp ‘ et permettre au syslog de se connecter au serveur Rsyslog.

# fournit la réception syslog UDP  
module(load="imudp")  
input(type="imudp" port="514")

De plus, si vous avez besoin d’activer le syslog via TCP, activez le module ‘ imtcp ‘ comme suit :

# fournit la réception syslog TCP  
module(load="imtcp")  
input(type="imtcp" port="50514")

Ajoutez maintenant l’option ‘ AllowedSender ‘ et saisissez votre sous-réseau qui est autorisé à envoyer des messages Syslog à votre serveur Rsyslog.

# $AllowedSender - spécifie quels systèmes distants sont autorisés à envoyer des messages syslog à rsyslogd  
$AllowedSender UDP, 192.168.10.0/24, [::1]/128, *.howtoforge.local, db.howtoforge.local

Saisissez la configuration suivante pour configurer un modèle pour les fichiers journaux des serveurs distants. Dans cet exemple, les fichiers journaux des serveurs distants seront stockés dans le répertoire ‘ /var/log/servers/server-ip ‘.

#Modèle personnalisé pour générer dynamiquement le nom de fichier journal en fonction de l'adresse IP du client.  
$template RemInputLogs, "/var/log/servers/%FROMHOST-IP%/%PROGRAMNAME%.log"  
*.?RemInputLogs

Enregistrez le fichier et quittez l’éditeur lorsque vous avez terminé.

Ensuite, exécutez la commande ‘ rsyslogd ‘ ci-dessous pour vérifier la configuration de Rsyslog et vous assurer que vous avez la bonne configuration.

rsyslogd -f /etc/rsyslog.conf -N1

Lorsque aucune erreur ne se produit, exécutez la commande ‘ systemctl ‘ ci-dessous pour redémarrer le service ‘ rsyslog ‘ et appliquer vos modifications.

sudo systemctl restart rsyslog

Enfin, vérifiez l’état du service ‘ rsyslog ‘ pour vous assurer qu’il fonctionne.

sudo systemctl status rsyslog

Dans la sortie ci-dessous, vous pouvez voir que le ‘ rsyslog ‘ fonctionne.

vérifier le service rsyslog

De plus, vérifiez le port ‘ 514 ‘ sur votre serveur pour vous assurer que Rsyslog fonctionne.

ss -tulpn | grep 514

Vous pouvez voir ci-dessous que le port UDP ‘ 514 ‘ est utilisé par le Rsyslog.

Envoi de journaux au serveur Rsyslog

Maintenant que vous avez configuré la journalisation à distance avec Rsyslog sur votre serveur Debian, essayons d’envoyer des journaux de ‘ 192.168.10.41 ‘ au serveur ‘ 192.168.10.10 ‘. Pour cela, vous avez besoin des éléments suivants :

  • Installer le paquet Rsyslog sur votre machine
  • Éditer la configuration de Rsyslog et définir quels journaux seront envoyés au serveur Rsyslog distant
  • Optionnel, configurer le tampon de file d’attente sur disque pour Rsyslog

Installez le paquet ‘rsyslog’ avec la commande ‘ apt ‘ ci-dessous. Entrez ‘ Y ‘ pour confirmer l’installation.

sudo apt install rsyslog

installer rsyslog client

Maintenant, ouvrez le fichier de configuration par défaut ‘ /etc/rsyslog.conf ‘ avec l’éditeur ‘ nano ‘.

sudo nano /etc/rsyslog.conf

Ajoutez la configuration suivante pour envoyer des journaux au serveur Rsyslog ‘ 192.168.10.10 ‘. Dans ce cas, nous enverrons les journaux kernel, cron et authentication au serveur Rsyslog.

# Envoyer des journaux à un serveur syslog distant via UDP  
auth,[email protected]:514  
[email protected]:514  
[email protected]:514

Ajoutez maintenant ce qui suit pour configurer un tampon de file d’attente pour Rsyslog.

# Définir le tampon de file d'attente sur disque au cas où le serveur tomberait en panne  
$ActionQueueFileName queue # définir un nom de fichier pour l'assistance disque.  
$ActionQueueMaxDiskSpace 1g # La taille maximale que tous les fichiers de la file d'attente utiliseront ensemble sur le disque.  
$ActionQueueSaveOnShutdown on # spécifie que les données doivent être enregistrées à l'arrêt  
$ActionQueueType LinkedList # maintient les messages en file d'attente en mémoire, ce qui rend le processus très rapide.  
$ActionResumeRetryCount -1 # empêche rsyslog de supprimer des messages lors de la tentative de connexion si le serveur ne répond pas,

Enregistrez le fichier et quittez l’éditeur.

Ensuite, exécutez la commande ‘ rsyslogd ‘ ci-dessous pour vérifier et valider votre configuration Rsyslog.

rsyslogd -f /etc/rsyslog.conf -N1

Lorsque aucune erreur ne se produit, exécutez la commande ‘ systemctl ‘ ci-dessous pour redémarrer Rsyslog et le vérifier pour vous assurer qu’il fonctionne.

sudo systemctl restart rsyslogd  
sudo systemctl status rsyslogd

Vous pouvez voir ci-dessous que le service Rsyslog fonctionne et que vos journaux seront envoyés au serveur Rsyslog sur ‘ 192.168.10.10 ‘.

vérifier le service rsyslog

Vérification des fichiers journaux sur le serveur Rsyslog

Pour vous assurer que votre Rsyslog fonctionne, vous devez vérifier le répertoire des journaux que vous avez configuré dans le modèle. Dans cet exemple, les fichiers journaux des serveurs distants seront stockés dans le répertoire ‘ /var/log/servers ‘.

Vérifiez le répertoire des journaux ‘ /var/log/servers ‘ avec la commande ci-dessous. Cela vous montrera le répertoire de chaque serveur.

ls /var/log/servers

Maintenant, vérifiez le répertoire des journaux de votre serveur, qui est stocké dans le répertoire ‘ /var/log/servers/server-ip ‘. Vous verrez plusieurs fichiers journaux disponibles sur le serveur Rsyslog.

Vous pouvez maintenant vérifier les fichiers journaux avec la commande ‘ cat ‘ ou ‘ tail ‘ pour voir les détails des journaux.

cat /var/log/servers/logfile.log  
tail -f /var/log/servers/logfile.log

vérifier le journal

Conclusion

Félicitations ! Vous avez terminé l’installation de Rsyslog sur le serveur Debian 12. Vous avez également configuré la journalisation à distance via Rsyslog et envoyé le journal au serveur via syslog UDP. Pour l’étape suivante, vous pouvez également configurer les modules d’entrée TCP et UDP et les intégrer avec des systèmes de journalisation tels que Rsyslog ou Logstash.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.