Articles sur : Serveur Linux

Analyser les logs d'un serveur

Cet article a été rédigé et testé sous un serveur installé sous Debian 9 & Ubuntu 18.04. Ce contenu devrait sans problème pouvoir s'appliquer à d'autres OS sur la base Linux, mais certains paramètres peuvent être amenés à changer.

Tout au long de son fonctionnement, un serveur sous Linux enregistre un très grand nombre de paramètres, d'informations, et d'évènements, qui sont retranscrits dans des fichiers : Ce sont les logs de votre serveur.

Sous la vaste majorité des OS Linux, ces fichiers de logs sont stockés dans le dossier /var/log

root@HelpDesk:/var/log# ls -l
total 2564
-rw-r--r-- 1 root root   15071 Aug  8 17:24 alternatives.log
drwxr-xr-x 2 root root    4096 Aug  9 08:55 apt
-rw-r----- 1 root adm   876834 Aug  9 09:54 auth.log
-rw------- 1 root utmp 1175040 Aug  9 09:54 btmp
-rw-r----- 1 root adm    68367 Aug  9 09:13 daemon.log
-rw-r--r-- 1 root root  320780 Aug  9 08:55 dpkg.log
-rw-r----- 1 root adm    19690 Aug  9 09:54 fail2ban.log
-rw-r--r-- 1 root root    3456 Dec 12  2017 faillog
-rw-r----- 1 root adm     2907 Jan 24  2018 kern.log
-rw-r--r-- 1 root root     292 Aug  9 08:48 lastlog
-rw-r----- 1 root adm     1100 Aug  8 17:23 mail.info
-rw-r----- 1 root adm     1100 Aug  8 17:23 mail.log
-rw-r----- 1 root adm     3334 May 26 15:58 messages
-rw-r--r-- 1 root root   75153 Aug  9 09:39 syslog
-rw-rw-r-- 1 root utmp   14976 Aug  9 08:48 wtmp


Chaque fichier correspond à un type de service différent. Certains sont très explicites (mail.log correspond aux logs des mails gérés par votre serveur), et d'autres le sont un peu moins. Voici donc une liste des quelques fichiers logs que vous pouvez trouver sur un serveur Linux : 

auth.log : Correspond aux logs d'authentification sur votre serveur (le plus souvent SSh). Vous y trouverez des informations sur les tentatives de connexions à votre VPS, les raisons de leur refus, et l'historique des connexions effectuées.

kern.log : Corresponds aux logs de votre kernel. Il contient les derniers évènements que le noyau à enregistrer. Il peut s'agir d'informations diverses sur son fonctionnement habituel (démarrage des cartes réseaux, boot du système), ainsi que que les erreurs rencontrées. 

mail.log : Comme son nom l'indique, il correspond aux logs de mails traités par votre VPS. Il est très utile de le vérifier, notamment si le support vous signale un problème de spam d'email. 

apt/history.log : Contient l'historique des modifications via APT (installation/désinstallation de logiciel par exemple)

fail2ban.log : Si vous avez installé et configuré Fail2ban (par ici), il contient l'historique des détections et bannissements d'IP sur votre VPS. 

syslog : Il s'agit d'un fichier un peu "fourre-tout". Vous allez y trouver les logs généraux de votre système. Il contient beaucoup d'informations essentielles, comme les opérations réalisées sur les différents services, les erreurs d'exécution rencontrées, les défauts constatés par le système, etc.

Chaque fichier de log est différent, et il n'existe donc pas de méthodologie universelle pour les traiter. Cependant, plusieurs éléments sont bon à savoir : 

Les logs les plus récents sont toujours ajoutés à la fin du fichier. Les plus anciens sont donc en haut du fichier
Le système de journalisation passe régulièrement faire du "ménage" dans les logs : Il crée des nouveaux fichiers vides, et sauvegarde les anciens, au format compressé (.gz) pour consommer moins d'espace disque. Ces derniers sont conservés pendant plusieurs jours
Les fichiers .logs ne sont pas indispensables à votre système (il sait fonctionner sans). Si vous venez à manquer d'espace disque sur votre serveur, un petit nettoyage dans les logs peut vous aider à retrouver de la place.

Voici également quelques commandes qui peuvent vous être utiles pour surveiller vos fichiers de logs : 

Voir en direct le contenu d'un fichier de logs (temps réel)


root@HelpDesk:/var/log# tail -f monfichier.log


Faire une recherche dans un fichier de logs


root@HelpDesk:/var/log# grep "mot-clef" monfichier.log


Lister les dernières connexions SSH

root@HelpDesk:/var/log# grep "Accepted" auth.log

Mis à jour le : 05/04/2023

Cet article a-t-il répondu à vos questions ?

Partagez vos commentaires

Annuler

Merci !