Syslog è l'acronimo di System Logging Protocol ed è un protocollo standard utilizzato per inviare messaggi di registro eventi o di sistema a un server specifico, chiamato server syslog. IT viene utilizzato principalmente per raccogliere i logs di vari dispositivi da diverse macchine in una posizione centrale per il monitoraggio e la revisione.
Il protocollo è abilitato sulla maggior parte delle apparecchiature di rete, come router, switch, firewall e persino alcune stampanti e scanner. Inoltre, Syslog è disponibile sui sistemi basati su Unix e Linux e su molti server web, tra cui Apache. Syslog non è installato di default sui sistemi Windows, che utilizzano il proprio registro eventi. Questi eventi possono essere inoltrati tramite utility di terze parti o altre configurazioni che utilizzano il protocollo Syslog.
Syslog è definito nella RFC 5424, The Syslog Protocol, che ha sostituito la precedente RFC 3164.
Su qualsiasi dispositivo vengono generati vari eventi dal sistema in risposta a condizioni mutevoli. Questi eventi vengono in genere registrati localmente, dove possono essere rivisti e analizzati da un amministratore. Tuttavia, il monitoraggio di numerosi log su un numero altrettanto elevato di router, switch e sistemi richiederebbe molto tempo e sarebbe poco pratico. Syslog risolve questo problema inoltrando gli eventi a un server centralizzato.
Tradizionalmente, Syslog utilizza il protocollo UDP sulla porta 514, ma può essere configurato per utilizzare qualsiasi porta. Inoltre, alcuni dispositivi utilizzano il protocollo TCP 1468 per inviare i dati Syslog e ottenere la conferma della consegna del messaggio.
La trasmissione dei pacchetti Syslog è asincrona. Le cause della generazione di un messaggio Syslog sono configurate all'interno del router, dello switch o del server stesso. A differenza di altri protocolli di monitoraggio, come SNMP, non esiste un meccanismo di polling dei dati di syslog. In alcune implementazioni, SNMP può essere utilizzato per impostare o modificare i parametri Syslog in remoto.
Gli avvisi personalizzati e la visualizzazione dei dati consentono di identificare e prevenire rapidamente i problemi di salute e di prestazioni della rete.
Il messaggio Syslog è composto da tre parti: PRI (un valore di priorità calcolato), HEADER (con informazioni di identificazione) e MSG (il messaggio stesso).
I dati PRI inviati tramite il protocollo Syslog derivano da due valori numerici che aiutano a classificare il messaggio. Il primo è il valore Facility. Si tratta di uno dei 15 valori predefiniti o di vari valori definiti localmente nel caso di valori da 16 a 23. Questi valori categorizzano il tipo di messaggio. Questi valori classificano il tipo di messaggio o il sistema che ha generato l'evento.
La seconda etichetta di un messaggio Syslog categorizza l'importanza o la gravità del messaggio in un codice numerico da 0 a 7.
I valori di entrambe le etichette non hanno definizioni precise. Pertanto, spetta al sistema o all'applicazione determinare come registrare un evento (ad esempio, come avviso, notifica o altro) e su quale struttura. All'interno della stessa applicazione o servizio, numeri più bassi dovrebbero corrispondere a problemi più gravi relativi al processo specifico.
I due valori vengono combinati per produrre un Valore di priorità inviato con il messaggio. Il valore di priorità viene calcolato moltiplicando il valore della struttura per otto e aggiungendo al risultato il valore di gravità. Più basso è il PRI, più alta è la priorità.
In questo modo, un messaggio kernel riceve un valore inferiore (priorità più alta) rispetto a un avviso di log, indipendentemente dalla gravità dell'avviso di log. Ulteriori identificatori nel pacchetto includono il nome dell'host, l'indirizzo IPS, l'ID del processo, il nome dell'applicazione e il timestamp del messaggio.
Il contenuto del messaggio Syslog non è definito dal protocollo. Alcuni messaggi sono semplici testi leggibili, altri possono essere leggibili solo dalla macchina.
I messaggi Syslog non sono in genere più lunghi di 1024 byte.
Notifiche in tempo reale significano una risoluzione più rapida dei problemi, in modo da poter intervenire prima che si verifichino problemi più gravi.
Parti del messaggio Syslog:
Il server Syslog è noto anche come collettore o ricevitore Syslog.
I messaggi Syslog vengono inviati dal dispositivo generatore al collettore. L'indirizzo IPS del server Syslog di destinazione deve essere configurato sul dispositivo stesso, tramite la riga di comando o un file conf. Una volta configurato, tutti i dati Syslog saranno inviati a quel server. Il protocollo syslog non prevede alcun meccanismo per la richiesta di dati syslog da parte di un altro server.
Sebbene la maggior parte delle implementazioni Unix e i fornitori di rete, come Cisco, abbiano i propri collettori Syslog, ve ne sono molti altri disponibili.
Il software di monitoraggio PRTG di Paessler offre il sensore integrato Syslog Receiver. Il ricevitore raccoglie tutti i messaggi Syslog consegnati. Per utilizzare la funzione, l'amministratore deve aggiungere il ricevitore Syslog e quindi configurare l'indirizzo IP di tale server come server di destinazione per i dati di monitoraggio Syslog su tutti i dispositivi da monitorare.
Una volta raccolti, il dashboard mostra:
Il protocollo Syslog può generare molti messaggi. Syslog si limita a inoltrare i messaggi con la stessa velocità con cui li genera. Di conseguenza, la capacità più importante di un server syslog è quella di filtrare e reagire correttamente ai dati syslog in arrivo.
Il sensore del ricevitore Syslog di PRTG offre la possibilità di impostare regole di filtraggio. Queste regole consentono di includere o escludere i messaggi Syslog come avvisi o errori, indipendentemente dal modo in cui sono stati originariamente generati sul dispositivo. Questo filtraggio garantisce che gli amministratori ricevano una notifica su tutti gli errori che desiderano conoscere senza essere sommersi da errori meno importanti.
Il protocollo Syslog non offre alcun meccanismo di sicurezza. Non esiste un'autenticazione incorporata per garantire che i messaggi provengano dal dispositivo che dichiara di inviarli. Non c'è crittografia per nascondere le informazioni inviate al server. È particolarmente suscettibile ai cosiddetti "attacchi di riproduzione", in cui un aggressore genera un flusso precedente di Warning per ottenere una risposta.
La maggior parte delle implementazioni di syslog sono configurabili per quanto riguarda le strutture e i numeri di gravità che generano eventi syslog da inoltrare al server syslog. È importante configurare correttamente questo aspetto per evitare di inondare il server (e la rete) di traffico non necessario. Ad esempio, Debug non dovrebbe mai essere impostato per inviare messaggi se non durante i test.
È consigliabile impostare i parametri Syslog in modo che richiedano la struttura e la gravità più alta possibile (con il numero più basso) per ridurre al minimo il traffico. Mentre un errore del router potrebbe indicare che un'interfaccia è fuori uso e quindi deve essere assolutamente segnalato, una stampante di rete meno importante potrebbe essere configurata per generare traffico Syslog solo per eventi critici.
I sistemi Windows non implementano il Syslog all'interno del sistema di registro eventi standard. Gli eventi generati dal sistema di registro di Windows possono essere raccolti e inoltrati a un server syslog utilizzando utility di terze parti. Queste utility monitorano il Registro eventi, utilizzano le informazioni per creare un evento in formato syslog e inoltrano gli eventi utilizzando il protocollo syslog standard.
Una delle principali limitazioni del protocollo Syslog è che il dispositivo da monitorare deve essere funzionante e connesso alla rete per generare e inviare un evento Syslog. Un errore critico dalla struttura del kernel potrebbe non inviare mai un errore perché il sistema va offline. In altre parole, Syslog non è un buon modo per monitorare lo stato attivo e passivo dei dispositivi.
PRTG Network Monitor è un software di monitoraggio di rete completo e tiene traccia dell'intera infrastruttura IT.
Sebbene il Syslog non sia un buon modo per monitorare lo stato dei dispositivi di rete, può essere un buon modo per monitorare la salute generale delle apparecchiature di rete. Sebbene un software di monitoraggio della rete come PRTG offra una suite di utilità per sorvegliare una rete, nulla indica all'amministratore che c'è un problema più velocemente di un registro eventi che si riempie di avvisi. Un monitoraggio Syslog correttamente configurato rileverà l'improvviso aumento del volume e della gravità degli eventi, fornendo un preavviso prima che si verifichi un problema rilevabile dall'utente.
La rete aziendale media contiene numerosi dispositivi a cui nessuno dovrebbe cercare di accedere in un giorno medio. Se uno switch remoto, a cui si accede una sola volta per ciclo di audit, presenta improvvisamente tentativi di accesso quotidiani (con o senza successo), è il caso di controllare. Su questo tipo di dispositivi, è possibile impostare syslog per inoltrare gli eventi di autenticazione a un server syslog, senza dover installare e configurare un agente di monitoraggio completo.
Syslog fornisce anche un modo per garantire che gli eventi critici siano registrati e archiviati fuori dal server originale. Il primo sforzo di un attaccante dopo aver compromesso un sistema è quello di coprire le tracce lasciate nei logs. Gli eventi inoltrati tramite Syslog saranno irraggiungibili.
Esistono molti modi per monitorare l'esecuzione di un'applicazione su un server. Tuttavia, questi monitoraggi possono trascurare l'impatto dell'applicazione sugli altri processi del server. Mentre un elevato utilizzo della CPU o della memoria è abbastanza facile da rilevare con altri monitoraggi, gli eventi registrati possono aiutare a mostrare altri possibili problemi. Un'applicazione cerca continuamente di accedere a un file bloccato? Un tentativo di scrittura sul database genera un errore? Eventi come questi possono passare inosservati se causati da applicazioni che fanno un buon lavoro per aggirare gli errori, ma non dovrebbero essere ignorati. Il Syslog farà in modo che questi eventi registrati ricevano l'attenzione che meritano.
Un monitoraggio completo della rete richiede l'utilizzo di più strumenti. Il Syslog è un pilastro importante nel monitoraggio della rete, perché assicura che gli eventi che si verificano senza un effetto drammatico non passino inosservati. La pratica migliore è utilizzare un software che combini tutti gli strumenti per avere sempre una panoramica di ciò che accade nella rete.
Tabella periodica del monitoraggio della rete: Ottenere l'infografica