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.
Pourquoi devrions-nous changer le fichier journal sudo par défaut ? Vous pourriez vous demander. Par défaut, tous les incidents sudo seront enregistrés dans /var/log/auth.log fichier 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 /var/log/secure/ dossier. Dans openSUSE, les journaux sudo sont stockés dans /var/log/messages dossier. Cependant, ils ne sont pas dédiés aux journaux sudo. Si vous examinez ces fichiers, vous remarquerez qu'il existe 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 changé via le "/etc/sudoers" dossier. Tout d'abord, nous verrons comment le faire dans les systèmes basés sur Debian.
1. Comment changer le fichier journal Sudo par défaut dans Ubuntu
Dans Ubuntu, les activités sudo sont stockées dans /var/log/auth.log fichier.
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 visudo
Ajoutez la ligne suivante à la fin :
Par défaut syslog=local1

Dé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.conf
Ajoutez 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 où tous les journaux sudo vont être stockés. Enregistrez et fermez le fichier (CTRL+X et Y).
Enfin, redémarrez le service rsyslog pour que les modifications prennent effet :
$ sudo systemctl redémarrer rsyslog
A partir de maintenant, toutes les tentatives sudo seront enregistrées dans /var/log/sudo.log dossier. Par exemple, je vais lancer la commande suivante :
Mise à jour $ sudo apt
Maintenant, laissez-moi vérifier s'il est connecté au fichier /var/log/sudo.log :
$ cat /var/log/sudo.log
Exemple de résultat :
2 mai 12:14:18 ostechnix sudo:sk :TTY=pts/0; PWD=/home/sk; UTILISATEUR=racine; COMMAND=/usr/bin/apt mise à jour
Voir la dernière ligne dans la sortie ci-dessus ? La commande "apt update" est enregistrée dans le fichier /var/log/sudo.log.
2. Comment changer le fichier journal Sudo par défaut dans Debian
Modifiez le fichier "/etc/sudoers" dans Debian à l'aide de la commande :
$ sudo visudo
Ajoutez la ligne suivante à la fin :
Par défaut syslog=local1
Enregistrez 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 redémarrer rsyslog
A partir de maintenant, toutes les tentatives sudo seront enregistrées dans /var/log/sudo.log fichier.
3. Comment changer 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 visudo
Cette commande ouvrira le fichier /etc/sudoers dans l'éditeur Vi. Appuyez sur "i" pour entrer en mode insertion et ajoutez la ligne suivante à la fin :
[...]Par défaut syslog=local1
Appuyez sur ÉCHAP et tapez :wq pour enregistrer et fermer.
Ensuite, éditez le fichier "/etc/rsyslog.conf":
$ sudo nano /etc/rsyslog.conf
Ajouter/modifier les lignes suivantes (numéro de ligne 46 et 47) :
[...]*.info;mail.none;authpriv.none;cron.none;local1.none /var/log/messageslocal1.* /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 redémarrer rsyslogA partir de maintenant, toutes les tentatives sudo seront enregistrées dans /var/log/sudo.log fichier.
$ sudo chat /var/log/sudo.logExemple de résultat :
3 mai 17:13:26 centos8 sudo[20191] :ostechnix :TTY=pts/0 ; PWD=/home/ostechnix ; UTILISATEUR=racine; COMMAND=/bin/systemctl restart rsyslogMay 3 17:13:35 centos8 sudo[20202]:ostechnix :TTY=pts/0; PWD=/home/ostechnix ; UTILISATEUR=racine; COMMAND=/bin/systemctl status rsyslogMay 3 17:13:51 centos8 sudo[20206]:ostechnix :TTY=pts/0; PWD=/home/ostechnix ; UTILISATEUR=racine; COMMAND=/bin/yum mise à jour![]()
Afficher les fichiers journaux sudo dans CentOS
4. Comment changer 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 entrer en mode insertion et ajoutez la ligne suivante à la fin :
[...]Par défaut syslog=local1Appuyez sur ÉCHAP et tapez :wq pour enregistrer et fermer.
Ensuite, éditez le fichier "/etc/rsyslog.conf":
$ sudo nano /etc/rsyslog.confAjouter/modifier les lignes suivantes (numéro de ligne 168, 180) :
# Ajoutez la ligne suivante à la ligne numéro 168 :*.*;mail.none;news.none;local1.none -/var/log/messages# ligne 180 :supprimez [local1]local0.* -/var/ log/localmessages# Ajoutez cette ligne à la fin :local1.* -/var/log/sudo.logEnregistrez et fermez le fichier. Redémarrez rsyslog pour appliquer les modifications :
$ sudo systemctl redémarrer rsyslogSuggestion de lecture :
- 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 à un utilisateur
- Comment trouver tous les utilisateurs de Sudo dans votre système Linux
- Comment exécuter des commandes particulières sans mot de passe Sudo sous Linux
J'espère que cela vous aidera.