Questa breve guida spiega come modificare il file di registro sudo predefinito nelle distribuzioni Linux come Debian, Ubuntu, CentOS, Fedora e openSUSE.
Perché dovremmo cambiare il file di registro sudo predefinito? Potresti chiederti. Per impostazione predefinita, tutti gli incidenti sudo verranno registrati in /var/log/auth.log file in sistemi basati su Debian come Ubuntu. Nei sistemi basati su RPM come CentOS e Fedora, le attività sudo sono archiviate in /var/log/secure/ file. In openSUSE, i registri sudo sono archiviati in /var/log/messages file. Tuttavia, non sono dedicati ai registri sudo. Se guardi in quei file, noterai che ci sono anche altri tipi di log, come cron, ssh, systemd ecc., Sono memorizzati anche in essi. Quindi, se vuoi configurare un file dedicato per la registrazione di tentativi di sudo riusciti e non riusciti (oltre agli errori), segui i passaggi indicati di seguito.
Modifica il file di registro sudo predefinito in Linux
Per impostazione predefinita, sudo si registrerà tramite syslog , ma può essere modificato tramite "/etc/sudoers" file. Per prima cosa, vedremo come farlo nei sistemi basati su Debian.
1. Come modificare il file di registro di Sudo predefinito in Ubuntu
In Ubuntu, le attività sudo sono archiviate in /var/log/auth.log file.
Per modificare o impostare un file di registro dedicato per sudo in Ubuntu 20.04, modifica il file "/etc/sudoers" usando il comando:
$ sudo visudo
Aggiungi la seguente riga alla fine:
Defaults syslog=local1
Imposta la posizione del file di registro di Sudo in Debian, Ubuntu
Premi CTRL+X seguito da Y per salvare ed uscire dal file.
Quindi, modifica il file "/etc/rsyslog.d/50-default.conf":
$ sudo nano /etc/rsyslog.d/50-default.conf
Aggiungi la riga seguente (linea numero 8) contrassegnata in rosso prima della riga "auth,authpriv.*".
[...] local1.* /var/log/sudo.log auth,authpriv.* /var/log/auth.log [...]
Modifica la posizione del file di registro di Sudo in Debian, Ubuntu
Qui, /var/log/sudo.log è il file in cui verranno archiviati tutti i registri di sudo. Salva e chiudi il file (CTRL+X e Y).
Infine, riavvia il servizio rsyslog per rendere effettive le modifiche:
$ sudo systemctl restart rsyslog
D'ora in poi, tutti i tentativi di sudo verranno registrati in /var/log/sudo.log file. Ad esempio, eseguirò il seguente comando:
$ sudo apt update
Ora fammi verificare se viene registrato nel file /var/log/sudo.log:
$ cat /var/log/sudo.log
Risultato di esempio:
May 2 12:14:18 ostechnix sudo: sk : TTY=pts/0 ; PWD=/home/sk ; USER=root ; COMMAND=/usr/bin/apt update
Vedi l'ultima riga nell'output sopra? Il comando "apt update" è registrato nel file /var/log/sudo.log.
2. Come modificare il file di registro di Sudo predefinito in Debian
Modifica il file "/etc/sudoers" in Debian usando il comando:
$ sudo visudo
Aggiungi la seguente riga alla fine:
Defaults syslog=local1
Salva e chiudi il file.
Quindi, modifica il file "/etc/rsyslog.conf":
$ sudo nano /etc/rsyslog.conf
Aggiungi la riga seguente (numero di riga 61) contrassegnata in rosso prima della riga "auth,authpriv.*;local1.none".
[...] local1.* /var/log/sudo.log auth,authpriv.*;local1.none /var/log/auth.log [...]
Salva e chiudi il file premendo CTRL+X seguito da Y.
Riavvia il servizio rsyslog per rendere effettive le modifiche:
$ sudo systemctl restart rsyslog
D'ora in poi, tutti i tentativi di sudo verranno registrati in /var/log/sudo.log file.
3. Come modificare il file di registro di Sudo predefinito in CentOS, Fedora
I registri sudo sono conservati nel file "/var/log/secure" nei sistemi basati su RPM come CentOS e Fedora.
Per impostare un file di registro sudo dedicato in CentOS 8, modifica il file "/etc/sudoers" utilizzando il comando:
$ sudo visudo
Questo comando aprirà il file /etc/sudoers nell'editor Vi. Premi "i" per accedere alla modalità di inserimento e aggiungi la seguente riga alla fine:
[...] Defaults syslog=local1
Premi ESC e digita :wq per salvare e chiudere.
Quindi, modifica il file "/etc/rsyslog.conf":
$ sudo nano /etc/rsyslog.conf
Aggiungi/modifica le seguenti righe (riga numero 46 e 47):
[...] *.info;mail.none;authpriv.none;cron.none;local1.none /var/log/messages local1.* /var/log/sudo.log [...]
Modifica la posizione del file di registro di Sudo in CentOS
Premi CTRL+X seguito da Y per salvare e chiudere il file.
Riavvia rsyslog per rendere effettive le modifiche.
$ sudo systemctl restart rsyslog
D'ora in poi, tutti i tentativi di sudo verranno registrati in /var/log/sudo.log file.
$ sudo cat /var/log/sudo.log
Risultato di esempio:
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 update
Visualizza i file di registro sudo in CentOS
4. Come modificare il file di registro di Sudo predefinito in openSUSE
I registri sudo sono conservati nel file "/var/log/messages" in SUSE e openSUSE.
Per impostare un file di registro sudo dedicato in openSUSE, modifica il file "/etc/sudoers" utilizzando il comando:
$ sudo visudo
Questo comando aprirà il file /etc/sudoers nell'editor Vi. Premi "i" per accedere alla modalità di inserimento e aggiungi la seguente riga alla fine:
[...] Defaults syslog=local1
Premi ESC e digita :wq per salvare e chiudere.
Quindi, modifica il file "/etc/rsyslog.conf":
$ sudo nano /etc/rsyslog.conf
Aggiungi/modifica le seguenti righe (riga numero 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
Salva e chiudi il file. Riavvia rsyslog per rendere effettive le modifiche:
$ sudo systemctl restart rsyslog
Lettura consigliata:
- Come modificare il timeout della password di Sudo in Linux
- Come aggiungere, eliminare e concedere privilegi Sudo agli utenti in Linux
- Come ripristinare i privilegi di Sudo a un utente
- Come trovare tutti gli utenti Sudo nel tuo sistema Linux
- Come eseguire comandi particolari senza password Sudo in Linux
Spero che questo aiuti.