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.