Logwatch risolve un compito che altrimenti resta irrisolto: legge per lei tutti i registri del server e invia una sintesi della giornata trascorsa. Nessuno esamina ogni giorno auth.log e i registri del server web, mentre leggere un messaggio la mattina è fattibile.
Il problema è noto: il primo messaggio arriva con diverse centinaia di righe, il secondo lo si scorre, una settimana dopo una regola della posta li sposta in una cartella a parte, e lì finisce la sorveglianza. La causa sta quasi sempre nelle impostazioni predefinite, e si corregge in dieci minuti.
Installazione e dove cambiare le impostazioni
sudo apt install logwatch
Conta dove scrive i suoi valori. Il file /usr/share/logwatch/default.conf/logwatch.conf non va toccato: viene sovrascritto all’aggiornamento del pacchetto. Il suo file è /etc/logwatch/conf/logwatch.conf. Può essere vuoto; basta aggiungervi solo ciò che cambia.
Output = mail
Format = html
MailTo = admin@example.com
Detail = Low
Range = yesterday
Il livello di dettaglio decide tutto
Detail accetta valori da 0 a 10 oppure le parole Low, Med, High. La differenza è enorme: con High il rapporto contiene ogni connessione e ogni richiesta; con Low, solo totali e anomalie.
La pratica è questa: Low in generale, e il dettaglio alzato in modo mirato per i servizi che le interessano davvero. Le impostazioni per servizio vanno in /etc/logwatch/conf/services/: per esempio un file sshd.conf con la riga Detail = High.
Un riferimento per la verifica: il rapporto deve stare in una schermata o poco più. Tutto ciò che è più lungo smetterà di essere letto, non per pigrizia ma perché fra trecento righe di routine uno scostamento è invisibile.
Per vedere il risultato senza aspettare il mattino:
sudo logwatch --detail Low --range today --output stdout
Sezione SSH vuota su Debian 12
Un tranello proprio dei sistemi recenti. Logwatch legge file di testo in /var/log, e Debian 12 e Ubuntu 24.04 non installano più rsyslog di default: il file /var/log/auth.log semplicemente non esiste, tutto va nel journal di systemd. Il rapporto arriva comunque puntuale, ma la sezione più importante — gli accessi SSH — risulta vuota o assente.
La verifica dura un secondo:
ls -l /var/log/auth.log
Se il file manca, o si installa rsyslog, o si accetta che Logwatch su questa macchina mostri un quadro incompleto. Una sezione vuota si legge facilmente come «non è successo nulla», ed è la conseguenza più pericolosa.
Dove va il messaggio
La seconda causa frequente del «i rapporti non arrivano»: sul server non è configurato l’invio della posta. Logwatch consegna il messaggio all’agente di sistema, che non lo invia da nessuna parte, e finisce nella casella locale di root, dove nessuno guarda mai:
sudo cat /var/mail/root | tail -50
Le opzioni sono due. O configurare l’invio tramite un relè SMTP esterno, o rinunciare alla posta e scrivere il rapporto in un file:
Output = file
Filename = /var/log/logwatch/report.txt
La seconda è più onesta: un messaggio che nessuno può recapitare crea l’illusione della sorveglianza, mentre un file sul disco lo si può almeno aprire.
Che cosa leggere nel rapporto
In ordine di utilità decrescente:
- sshd. Gli accessi riusciti: chi e da dove. Proprio quelli riusciti, non le migliaia di fallimenti: i fallimenti sono rumore di fondo, mentre un accesso da un indirizzo sconosciuto richiede una spiegazione;
- sudo e pam_unix. Chi ha elevato i privilegi e chi ha creato utenti;
- Disk Space. Una riga che avverte in anticipo di un disco che si riempie;
- cron. Le attività comparse e quelle fallite;
- http. Un picco di risposte 404 di solito significa scansione di percorsi; un picco di 500, che qualcosa di suo si è rotto;
- postfix, se il server invia posta: una coda in uscita che cresce è il segno tipico che il server viene usato come relè di spam.
I limiti
Logwatch è una sintesi della giornata trascorsa, non un allarme. Non la sveglierà di notte ed è in ritardo per natura: parte all’alba da un lavoro quotidiano e copre il giorno prima. Per «sta succedendo qualcosa adesso» non è adatto né è pensato.
La sua forza sta altrove: le mostra la forma di una giornata ordinaria. Dopo un mese di lettura sa quanti accessi falliti sono normali, quante richieste riceve il sito e quanta posta esce; e quando una di quelle cifre raddoppia, salta agli occhi all’istante, senza soglie né regole. Per questo conviene tenere il rapporto dove attira lo sguardo, e non in una cartella di posta. Come appare su una pagina lo mostra la dimostrazione qui sotto.