Aller au contenu

Serveur SYSLOG Linux

La mise en place d’un serveur Syslog peut être vitale pour la sécurité de votre entreprise ou encore pour diagnostiquer d’éventuels problèmes techniques. Avoir un serveur Syslog permet d’avoir tout les logs de ses machines au même endroit, ce qui fait gagner énormément de temps puisqu »il n’est plus nécéssaire de se connecter à chaque machines individuellement.

I. Configuration du serveur SYSLOG Linux

1. Installation du service
apt install rsyslog 
2. Vérifier son statut
systemctl status rsyslog
3. Editer le fichier de configuration
nano /etc/rsyslog.conf
4. Décommenter les lignes qui autorisent l’UDP et le TCP
# provides UDP syslog reception
module(load="imudp")
input(type="imudp" port="514")

# provides TCP syslog reception
module(load="imtcp")
input(type="imtcp" port="514")
5. Définir l’emplacement des logs en ajoutant ces lignes au fichier de configuration
$template remote-incoming-logs,"/home/debian/Logs/%HOSTNAME%/%PROGRAMNAME%.log"
*.* ?remote-incoming-logs
6. Pour appliquer les modifications, il faut relancer le service avec la commande suivante
systemctl restart rsyslog 
ls

CRON.log  rsyslogd.log  systemd.log
cat rsyslogd.log

2024-02-01T15:03:14.012078+01:00 debian rsyslogd: [origin software="rsyslogd" swVersion="8.2302.0" x-pid="893" x-info="https://www.rsyslog.com"] exiting on signal 15.
2024-02-01T15:03:14.032765+01:00 debian rsyslogd: imuxsock: Acquired UNIX socket '/run/systemd/journal/syslog' (fd 3) from systemd.  [v8.2302.0]
2024-02-01T15:03:14.032822+01:00 debian rsyslogd: [origin software="rsyslogd" swVersion="8.2302.0" x-pid="922" x-info="https://www.rsyslog.com"] start
sudo ss -tunlp | grep 514

I.I Configuration du pare-feu

Il peut être nécessaire de configurer le pare-feu de la machine si les ports sont fermés, ou qu’on les à modifié dans le fichier de configuration.
Pour ouvrir les ports concernés il faut utiliser la commande ufw
ufw allow 514/tcp
ufw allow 514/udp
ufw reload

II. Configuration des clients du serveur

1. Se connecter à une machine client
2. Editer le fichier de configuration rsyslog
nano /etc/rsyslog.conf
3. Aller tout en bas du fichier et ajouter les lignes suivantes :
#Enable sending system logs over UDP to rsyslog server
*.* @rsyslog-ip-address:514

#Enable sending system logs over TCP to rsyslog server
*.* @@rsyslog-ip-address:514
Ce qui donne par exemple :
#Enable sending system logs over UDP to rsyslog server
*.* @192.2.32.101:514

#Enable sending system logs over TCP to rsyslog server
*.* @@192.2.32.101:514
4. Relancer le service sur le client avec la commande suivante :
systemctl restart rsyslog

III. Consulter les logs du client sur le serveur

On peut maintenant aller dans le dossier que nous avons configuré sur le serveur et constater qu’un dossier au nom de notre client à été correctement créé, et qu’il contient ses logs système.
On peut donc consulter les logs avec une commande cat , avec less ou bien avec tail -f
cd /home/debian/Logs/debian2
debian1 /home/debian/Logs/debian2  # ls
rsyslogd.log  systemd.log
debian1 /home/debian/Logs/debian2  # cat systemd.log
2024-02-01T17:24:31+01:00 debian2 systemd[1]: Stopping System Logging Service...
2024-02-01T17:24:31+01:00 debian2 systemd[1]: rsyslog.service: Succeeded.
2024-02-01T17:24:31+01:00 debian2 systemd[1]: Stopped System Logging Service.