title: SysLog
text: # SysLog
  
  SYSLOG (System Log) è un protocollo di rete appartenente alla suite di protocolli Internet utilizzato per trasmettere attraverso una rete semplici informazioni di log.
  
  ## Storia
  
  SYSLOG nacque nel 1980 come componente di sendmail, agente di trasferimento per la posta elettronica in ambiente Unix, ma presto la sua semplicità e praticità lo portarono alla ribalta per un impiego generalizzato. Tuttavia questa genesi fece sì che vi fossero varie implementazioni indipendenti, spesso incompatibili tra loro.
  
  Solo dopo l'opera di armonizzazione svolta dell'IETF, nel 2001 la RFC 3164 prese atto dello status quo documentando il protocollo.
  
  Tutt'oggi, nonostante il fallimento della formale specificazione del protocollo inizialmente prevista nel 2005, vi è un buon interesse attorno a tale standard, anche per il diffondersi di apparati connessi a reti sempre più “intelligenti” e quindi necessitanti di controllo.
  
  Questi apparati spesso sono in grado di generare un log della propria attività ma non hanno memorie di massa su cui conservarli, quindi in caso di incidenti (il famoso “spegni e riaccendi”) si perdono le informazioni che potrebbero aiutare a determinare le origini del problema. Da qui la necessità, oltre alla convenienza, di avere tali logs raccolti in un unico archivio sicuro.
  
  ## Funzionamento
  
  Il protocollo SYSLOG a differenza di altri protocolli non rappresenta uno standard rigidamente definito, e solo in tempi recenti è stato standardizzato dall'IETF.
  
  Generalmente viene utilizzato via UDP attraverso la porta 514; in particolari applicazioni dove il monitoraggio è fondamentale oppure certi eventi possono innescare azioni da parte del server SYSLOG, si ricorre ad implementazioni TCP e/o a crittografia.
  
  Generalmente il client invia un certo messaggio di testo, al massimo 1024 caratteri, al server, comunemente definito come "syslogd", "syslog daemon" o "syslog server". La semplicità del protocollo fa sì che il server possa gestire messaggi provenienti da una variegata tipologia di macchine, da computer, stampanti, dispositivi di rete, macchinari, ecc. Il server può limitarsi a registrare l'evento, per avere un archivio centrale degli avvenimenti, oppure reagire a particolari livelli di severità chiamando programmi, inviando e-mail, ecc. ecc.
  
  SYSLOG è particolarmente diffuso in Unix e conseguentemente sotto Linux, mentre non è molto diffuso in ambiente Windows, tanto che non è un componente standard di tali server.
  
  