GNU/Linux >> Tutoriels Linux >  >> Debian

Comment configurer le serveur Rsyslog sur Debian 11

Rsyslog est un logiciel de journalisation gratuit et open source qui transmet tous les fichiers journaux au serveur de journalisation centralisé via le réseau IP. Il aide les administrateurs système à garder un œil sur tous les serveurs depuis le point central. Rsyslog fonctionne dans un modèle client/serveur, il reçoit les journaux du client distant sur le port 514 via le protocole TCP/UDP.

Dans cet article, nous allons vous montrer comment configurer le serveur Rsyslog sur Debian 11.

Prérequis

  • Deux serveurs exécutant Debian 11.
  • Un mot de passe root est configuré sur le serveur.

Installer Rsyslog

Tout d'abord, vous devrez installer le package serveur Rsyslog sur la machine serveur. Vous pouvez l'installer à l'aide de la commande suivante :

apt-get install rsyslog -y

Après l'installation, vérifiez l'état de Rsyslog à l'aide de la commande suivante :

systemctl status rsyslog

Vous devriez voir le résultat suivant :

? rsyslog.service - System Logging Service
     Loaded: loaded (/lib/systemd/system/rsyslog.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2021-10-03 13:35:32 UTC; 1h 44min ago
TriggeredBy: ? syslog.socket
       Docs: man:rsyslogd(8)
             man:rsyslog.conf(5)
             https://www.rsyslog.com/doc/
   Main PID: 283 (rsyslogd)
      Tasks: 4 (limit: 2341)
     Memory: 5.0M
        CPU: 90ms
     CGroup: /system.slice/rsyslog.service
             ??283 /usr/sbin/rsyslogd -n -iNONE

Oct 03 13:35:32 debian11 systemd[1]: Starting System Logging Service...
Oct 03 13:35:32 debian11 rsyslogd[283]: imuxsock: Acquired UNIX socket '/run/systemd/journal/syslog' (fd 3) from systemd.  [v8.2102.0]
Oct 03 13:35:32 debian11 rsyslogd[283]: [origin software="rsyslogd" swVersion="8.2102.0" x-pid="283" x-info="https://www.rsyslog.com"] start
Oct 03 13:35:32 debian11 systemd[1]: Started System Logging Service.
Oct 03 13:35:34 debian11 systemd[1]: rsyslog.service: Sent signal SIGHUP to main process 283 (rsyslogd) on client request.
Oct 03 13:45:33 debian11 rsyslogd[283]: [origin software="rsyslogd" swVersion="8.2102.0" x-pid="283" x-info="https://www.rsyslog.com"] rsyslog>

Configurer Rsyslog

Ensuite, vous devrez configurer Rsyslog pour qu'il s'exécute en mode serveur. Vous pouvez le faire en éditant le fichier de configuration principal de Rsyslog :

nano /etc/rsyslog.conf

Décommentez les lignes suivantes :

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

# provides TCP syslog reception
module(load="imtcp")
input(type="imtcp" port="514")

Ensuite, ajoutez les lignes suivantes pour définir le modèle pour stocker le journal entrant des systèmes clients :

$template remote-incoming-logs,"/var/log/%HOSTNAME%/%PROGRAMNAME%.log"
*.* ?remote-incoming-logs

Enregistrez et fermez le fichier puis redémarrez le service Rsyslog pour appliquer les modifications :

systemctl restart rsyslog

À ce stade, Rsyslog est démarré et écoute sur le port 514. Vous pouvez le vérifier à l'aide de la commande suivante :

ss -tunlp | grep 514

Vous devriez voir le résultat suivant :

udp   UNCONN 0      0                              0.0.0.0:514       0.0.0.0:*    users:(("rsyslogd",pid=26276,fd=6))                                                                                                                                                                                                                                                                             
udp   UNCONN 0      0                                 [::]:514          [::]:*    users:(("rsyslogd",pid=26276,fd=7))                                                                                                                                                                                                                                                                             
tcp   LISTEN 0      25                             0.0.0.0:514       0.0.0.0:*    users:(("rsyslogd",pid=26276,fd=8))                                                                                                                                                                                                                                                                             
tcp   LISTEN 0      25                                [::]:514          [::]:*    users:(("rsyslogd",pid=26276,fd=9))                                                                                                                                                                                                                                                                             

Configurer le pare-feu pour Rsyslog

Ensuite, vous devrez autoriser le port 514 via le pare-feu UFW. Vous pouvez l'autoriser avec la commande suivante :

ufw allow 514/tcp
ufw allow 514/udp

Ensuite, rechargez le pare-feu pour appliquer les modifications :

ufw reload

Configurer le client Rsyslog

Ensuite, vous devrez configurer le client Rsyslog pour envoyer les fichiers journaux au serveur Rsyslog. Vous pouvez le faire en éditant le fichier de configuration principal de Rsyslog.

nano /etc/rsyslog.conf

Ajoutez les lignes suivantes à la fin du fichier :

#Enable sending system logs over UDP to rsyslog server
*.* @rsyslog-server-ip:514

#Enable sending system logs over TCP to rsyslog server
*.* @@rsyslog-server-ip:514

Ajoutez également les lignes suivantes pour définir la file d'attente du disque lorsque le serveur rsyslog sera en panne :

$ActionQueueFileName queue
$ActionQueueMaxDiskSpace 1g
$ActionQueueSaveOnShutdown on
$ActionQueueType LinkedList
$ActionResumeRetryCount -1

Enregistrez et fermez le fichier puis redémarrez le service Rsyslog pour appliquer les modifications :

systemctl restart rsyslog

Vérifier le fichier journal du client

Tous les fichiers journaux du client sont stockés dans le répertoire /var/log sur la machine serveur.

Vous pouvez le vérifier avec la commande suivante :

ls -l /var/log/

Vous devriez voir le fichier journal du client qui correspond au nom d'hôte du système client :

alternatives.log    auth.log.2.gz  daemon.log	    debian11	dpkg.log    kern.log.1	   messages.1	  private      syslog.3.gz
clientpc            auth.log.3.gz  daemon.log.1     debug	dpkg.log.1  kern.log.2.gz  messages.2.gz  runit        syslog.4.gz
apt		    btmp	   daemon.log.3.gz  debug.2.gz	icinga2     kern.log.4.gz  messages.4.gz  syslog
auth.log.1	    csm.log	   dbconfig-common  debug.4.gz	kern.log    messages	   ntpstats	  syslog.2.gz

Comme vous pouvez le voir, clientpc est le répertoire des journaux du système du client.

Conclusion

Dans le guide ci-dessus, nous avons expliqué comment configurer le serveur et le client Rsyslog sur Debian 11. Vous pouvez désormais surveiller vos clients depuis l'emplacement central. N'hésitez pas à me demander si vous avez des questions.


Debian
  1. Comment configurer le serveur Rsyslog sur Ubuntu 18.04 LTS

  2. Comment installer le serveur Redis sur Debian 11

  3. Comment installer MySQL 8.0 / 5.7 sur Debian 11 / Debian 10

  4. Comment configurer un serveur de journalisation centralisé à l'aide de Rsyslog

  5. Configurer Rsyslog Server sur Ubuntu 20.04 - Comment faire ?

Comment installer MySQL 8 sur Debian 10

Comment configurer le serveur NFS sur Debian 9 / Ubuntu 16.04 / LinuxMint 18

Comment configurer le serveur Rsyslog sur Ubuntu

Comment configurer le serveur Rsyslog Debian 10/11

Comment configurer le serveur OpenLDAP sur Debian 10

Procédure :configuration initiale du serveur Debian 8.2