Comprendere i File di Log: Tipi, Gestione e Centralizzazione con Syslog

Classificato in Informatica

Scritto il in italiano con una dimensione di 3,9 KB

Tipologie e Gestione dei File di Log di Sistema

I file di log sono registrazioni cronologiche degli eventi che si verificano all'interno di un sistema. Esistono diverse tipologie di log, ognuna con uno scopo specifico.

Tipi di Log

  • Log di registrazione, riconoscimento e accesso (login/logon): Registrano tutti i tentativi di accesso a un sistema, sia quelli riusciti che quelli falliti.
  • Log di sistema: Relativi al sistema operativo, registrano gli eventi significativi che intercorrono tra il sistema, come fornitore di servizi, e le applicazioni, come clienti dei servizi stessi.
  • Log di base dati (database): Generati da un sistema di gestione di basi di dati (DBMS), registrano tutte le query o le modifiche apportate al database.
  • Log di sicurezza: Memorizzano tutte le operazioni considerate critiche per l'integrità dei dati e del sistema, nonché il controllo dei tentativi di accesso (autorizzati e non).
  • Log di applicazione: Registrano eventi caratteristici dell'applicazione, evidenziando, ad esempio, errori di programmazione.

Il Syslog: Registrazione degli Eventi di Sistema

Il log di sistema, o syslog, è la procedura di registrazione degli eventi importanti all'interno di un cosiddetto file di log. La consultazione di questi file può essere di grande aiuto, specialmente per un principiante che si trova in difficoltà e non conosce la causa di un malfunzionamento.

Il demone syslogd

Questo processo è gestito principalmente dal demone syslogd, che di norma viene avviato durante la fase di inizializzazione del sistema (init). La sua configurazione avviene tramite il file /etc/syslog.conf. Per fare in modo che il file di configurazione venga riletto, è necessario riavviare il demone.

Configurazione: /etc/syslog.conf

All'interno del file di configurazione, è possibile definire le priorità degli eventi da registrare. Le parole chiave, elencate in ordine di importanza crescente, sono:

  • debug
  • info
  • notice
  • warning
  • err
  • crit
  • alert
  • emerg (rappresenta l'evento più critico)

Gestione e Rotazione dei Log con logrotate

Nelle macchine ad alto traffico, sotto attacco DoS o con particolari problemi ricorrenti, le dimensioni dei file di log possono crescere a dismisura in pochissimo tempo, fino a saturare il file system. Per questo motivo, è sempre consigliabile montare la directory /var, dove generalmente risiedono i log, in una partizione indipendente, in modo che un suo eventuale riempimento non blocchi il funzionamento del sistema.

È inoltre fondamentale poterli gestire, ruotandoli a intervalli fissi e compattando i log vecchi per prepararli all'archiviazione. Lo strumento logrotate permette di automatizzare queste operazioni, consentendo di comprimere, rimuovere e inviare i log via mail.

Centralizzazione dei Log con Syslog Server (rsyslog)

Il server syslog che permette di gestire i log in maniera centralizzata è rsyslog. È il demone syslog di default su sistemi Debian a partire dalla versione "Lenny" e presenta diversi vantaggi rispetto al tradizionale syslogd:

  • Le connessioni possono essere stabilite via TCP anziché UDP, garantendo una maggiore affidabilità nella consegna dei messaggi.
  • I log scambiati tra host che utilizzano rsyslog possono essere inviati in forma crittografata.
  • I log possono essere filtrati in base alla criticità del loro contenuto.
  • Il demone stesso è altamente personalizzabile.

Voci correlate: