
Check-up completo del computer
Pensi di essere vittima di un attacco informatico? Una periferica non funziona come dovrebbe? Cerca la soluzione nei file di log!
(pagina 1 di 4)
I log rappresentano una sorta di “diario
di bordo”nel quale il sistema annota
tutto quello che accade al suo
interno. Materialmente (se di materia
si può parlare), si tratta di semplici file
di testo il cui contenuto arriva, perlopiù,
da due fonti principali: il kernel Linux
e i servizi di sistema. Per fare qualche
esempio, con i log è possibile reperire
dati di accesso alla macchina,
scoprire tentativi di intrusione, richieste
di particolari servizi, riconoscimento di
periferiche e molto altro. È chiaro, quindi,
che i log offrono la possibilità di monitorare
ogni singolo aspetto del sistema
e, di conseguenza, rappresentano lo
strumento migliore per scoprire le cause
di eventuali malfunzionamenti e verificare
il livello di sicurezza della macchina
(monitoraggio e auditing). In pratica,
tutte le informazioni generate dal kernel
e dai servizi (spesso anche normali
applicazioni), una volta inviate, vengono
prese in consegna dal sistema syslog
che si occupa di smistarle in differenti file,
a seconda della loro provenienza,
pronti per essere analizzati.
 |
• Il file /etc/syslog.conf |
 |
L'elenco dei tentativi di accesso falliti |
Sistemi di gestione
Nelle distribuzioni GNU/Linux che utilizzano
il sistema standard di logging,
sono sempre presenti due differenti demoni:
Syslogd e Klogd. Il primo è “System
logger daemon”, il logger di sistema,
e il secondo il “Kernel logger
daemon”. La funzione finale di entrambi
è sempre la stessa: scrivere i log su disco
in alcuni file specifici. Ma, mentre
Syslogd è dedicato alla gestione dei
messaggi provenienti dai servizi di sistema,
Klogd si occupa esclusivamente
della raccolta di quelli provenienti
dal kernel. Detto questo, scopriamo dove
sono posizionati tutti questi file e impariamo
a interpretarne il contenuto.
Per prima cosa, apriamo il file
/etc/syslog.conf e identifichiamo il path
dove vengono salvati i log. La directory
che ci interessa è /var/log. Al suo interno
sono presenti decine di file, alcuni
comuni a tutti i sistemi GNU/Linux,
altri specifici di particolari servizi, i più
importanti sono:
- btmp - contiene il log dei tentativi di
accesso falliti;
- cron - contiene i log delle attività del
demone crond;
- dmesg - contiene le informazioni
prodotte dal kernel in fase di boot;
- syslog - contiene i log di sistema
provenienti dai vari demoni;
- wtmp - contiene i log con i dati relativi
agli ultimi accessi.
Questo elenco mostra i file di log che
sicuramente è possibile trovare su ogni
distribuzione. In verità, ce ne sono molti
altri, poiché ogni demone o servizio
crea il proprio file di log. A questo punto,
sappiamo dove vengono conservati
i log, non ci resta che scoprire quali sono
e come bisogna usare i programmi
che consentono di leggerne il contenuto
per poterli analizzare.
Il sistema SYSLOG
Da Sendmail a strumento di logging predefinito
Syslog è stato sviluppato negli anni '80 da
Eric Allman per il progetto Sendmail. Il
nuovo sistema piacque così tanto agli sviluppatori
che presto iniziarono ad utilizzarlo
in tutti programmi, e di lì a poco Syslog
divenne lo standard di fatto per il logging
su Unix. Soltanto nel 2001 la IETF
produsse un RFC per standardizzare a
tutti gli effetti il meccanismo di logging.
Da quel momento in poi sono state molte
le aziende che hanno cercato di rivendicare
diritti su Syslog, ma nonostante questo
il sistema è rimasto sostanzialmente immutato
per quasi