Comment modifier le fichier journal Sudo par défaut sous Linux
Modifier les emplacements des fichiers journaux Sudo sous Linux : un guide pour Debian, Ubuntu, CentOS, Fedora et openSUSE
Ce bref guide explique comment modifier le fichier journal sudo par défaut dans les distributions Linux telles que Debian, Ubuntu, CentOS, Fedora et openSUSE.
Introduction
Pourquoi devrions-nous modifier le fichier journal sudo par défaut ? Vous pourriez vous demander. Par défaut, tous les incidents sudo seront enregistrés dans le fichier /var/log/auth.log dans les systèmes basés sur Debian comme Ubuntu. Dans les systèmes basés sur RPM comme CentOS et Fedora, les activités sudo sont stockées dans le fichier /var/log/secure/. Dans openSUSE, les journaux sudo sont stockés dans le fichier /var/log/messages.
Cependant, ils ne sont pas dédiés aux logs sudo. Si vous examinez ces fichiers, vous remarquerez qu'il existe également d'autres types de journaux, tels que cron, ssh, systemd, etc., qui y sont également stockés. Donc, si vous souhaitez configurer un fichier dédié pour enregistrer les tentatives sudo réussies et infructueuses (ainsi que les erreurs), suivez les étapes ci-dessous.
Modifier le fichier journal Sudo par défaut sous Linux
Par défaut, sudo se connectera via syslog, mais cela peut être modifié via le fichier "/etc/sudoers". Tout d’abord, nous verrons comment procéder dans les systèmes basés sur Debian.
1. Comment modifier le fichier journal Sudo par défaut dans Ubuntu
Dans Ubuntu, les activités sudo sont stockées dans le fichier /var/log/auth.log.
Pour modifier ou définir un fichier journal dédié pour sudo dans Ubuntu 20.04, modifiez le fichier « /etc/sudoers » à l'aide de la commande :
sudo visudoAjoutez la ligne suivante à la fin :
Defaults syslog=local1Définir l'emplacement du fichier journal Sudo dans Debian, Ubuntu
Appuyez sur CTRL+X suivi de Y pour enregistrer et quitter le fichier.
Ensuite, éditez le fichier « /etc/rsyslog.d/50-default.conf » :
sudo nano /etc/rsyslog.d/50-default.confAjoutez la ligne suivante (ligne numéro 8) marquée en rouge avant la ligne "auth,authpriv.*".
[...]
local1.* /var/log/sudo.log
auth,authpriv.* /var/log/auth.log
[...]Modifier l'emplacement du fichier journal Sudo dans Debian, Ubuntu
Ici, /var/log/sudo.log est le fichier dans lequel tous les journaux sudo vont être stockés. Enregistrez et fermez le fichier (CTRL+X et Y).
Enfin, redémarrez le service rsyslog pour appliquer les modifications :
sudo systemctl restart rsyslogDésormais, toutes les tentatives sudo seront enregistrées dans le fichier /var/log/sudo.log. Par exemple, je vais exécuter la commande suivante :
sudo apt updateMaintenant, laissez-moi vérifier s'il est connecté au fichier /var/log/sudo.log :
cat /var/log/sudo.logExemple de résultat :
May 2 12:14:18 ostechnix sudo: sk : TTY=pts/0 ; PWD=/home/sk ; USER=root ; COMMAND=/usr/bin/apt updateVous voyez la dernière ligne de la sortie ci-dessus ? La commande "apt update" est enregistrée dans le fichier /var/log/sudo.log.
2. Comment modifier le fichier journal Sudo par défaut dans Debian
Modifiez le fichier « /etc/sudoers » dans Debian à l'aide de la commande :
sudo visudoAjoutez la ligne suivante à la fin :
Defaults syslog=local1Enregistrez et fermez le fichier.
Ensuite, éditez le fichier « /etc/rsyslog.conf » :
sudo nano /etc/rsyslog.conf
Ajoutez la ligne suivante (ligne numéro 61) marquée en rouge avant la ligne "auth,authpriv.*;local1.none".
[...]
local1.* /var/log/sudo.log
auth,authpriv.*;local1.none /var/log/auth.log
[...]Enregistrez et fermez le fichier en appuyant sur CTRL+X suivi de Y.
Redémarrez le service rsyslog pour appliquer les modifications :
sudo systemctl restart rsyslogDésormais, toutes les tentatives sudo seront enregistrées dans le fichier /var/log/sudo.log.
3. Comment modifier le fichier journal Sudo par défaut dans CentOS, Fedora
Les journaux sudo sont conservés dans le fichier "/var/log/secure" dans les systèmes basés sur RPM tels que CentOS et Fedora.
Pour définir un fichier journal Sudo dédié dans CentOS 8, modifiez le fichier "/etc/sudoers" à l'aide de la commande :
sudo visudoCette commande ouvrira le fichier /etc/sudoers dans l'éditeur Vi. Appuyez sur "i" pour passer en mode insertion et ajoutez la ligne suivante à la fin :
[...]
Defaults syslog=local1Appuyez sur ESC et tapez :wq pour enregistrer et fermer.
Ensuite, éditez le fichier « /etc/rsyslog.conf » :
sudo nano /etc/rsyslog.confAjoutez/modifiez les lignes suivantes (numéros de ligne 46 et 47) :
[...]
*.info;mail.none;authpriv.none;cron.none;local1.none /var/log/messages
local1.* /var/log/sudo.log
[...]Modifier l'emplacement du fichier journal Sudo dans CentOS
Appuyez sur CTRL+X suivi de Y pour enregistrer et fermer le fichier.
Redémarrez rsyslog pour appliquer les modifications.
sudo systemctl restart rsyslogDésormais, toutes les tentatives sudo seront enregistrées dans le fichier /var/log/sudo.log.
sudo cat /var/log/sudo.logExemple de résultat :
May 3 17:13:26 centos8 sudo[20191]: ostechnix : TTY=pts/0 ; PWD=/home/ostechnix ; USER=root ; COMMAND=/bin/systemctl restart rsyslog
May 3 17:13:35 centos8 sudo[20202]: ostechnix : TTY=pts/0 ; PWD=/home/ostechnix ; USER=root ; COMMAND=/bin/systemctl status rsyslog
May 3 17:13:51 centos8 sudo[20206]: ostechnix : TTY=pts/0 ; PWD=/home/ostechnix ; USER=root ; COMMAND=/bin/yum updateAfficher les fichiers journaux sudo dans CentOS
4. Comment modifier le fichier journal Sudo par défaut dans openSUSE
Les journaux sudo sont conservés dans le fichier "/var/log/messages" dans SUSE et openSUSE.
Pour définir un fichier journal Sudo dédié dans openSUSE, modifiez le fichier "/etc/sudoers" à l'aide de la commande :
sudo visudoCette commande ouvrira le fichier /etc/sudoers dans l'éditeur Vi. Appuyez sur "i" pour passer en mode insertion et ajoutez la ligne suivante à la fin :
[...]
Defaults syslog=local1Appuyez sur ESC et tapez :wq pour enregistrer et fermer.
Ensuite, éditez le fichier « /etc/rsyslog.conf » :
sudo nano /etc/rsyslog.confAjoutez/modifiez les lignes suivantes (numéro de ligne 168, 180) :
Add the following line at line number 168:
*.*;mail.none;news.none;local1.none -/var/log/messages
line 180: remove [local1]
local0.* -/var/log/localmessages
Add this line at the end:
local1.* -/var/log/sudo.log
Enregistrez et fermez le fichier. Redémarrez rsyslog pour appliquer les modifications :
sudo systemctl restart rsyslogJ'espère que cela t'aides.
Lecture suggérée :
- Comment modifier le délai d'expiration du mot de passe Sudo sous Linux
- Comment ajouter, supprimer et accorder des privilèges Sudo aux utilisateurs sous Linux
- Comment restaurer les privilèges Sudo d'un utilisateur
- Comment trouver tous les utilisateurs Sudo sur votre système Linux
- Comment exécuter des commandes particulières sans mot de passe Sudo sous Linux



