Old:Configurare un server Syslog su Debian: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Riga 49: Riga 49:
In questo modo la prossima volta che logrotate verrà eseguito i log diventeranno leggibili di default anche per il nostro webserver.
In questo modo la prossima volta che logrotate verrà eseguito i log diventeranno leggibili di default anche per il nostro webserver.


===Configurazione di logrotate===
===Configurazione dei client della rete===
===Configurazione dei client della rete===

Versione delle 10:09, 14 set 2008

Introduzione

In una serverfarm, ma anche in una piccola rete casalinga, può risultare molto utile riunire i log di tutte le macchine in un unico posto. Si possono in questo modo applicare funzioni di analisi, ricerca e statistica che, in un unico intervento, restituiranno lo stato di tutte le macchine della rete, e sarà inoltre possibile configurare un unico strumento per inviare messaggi di alert quando lo stato di una qualsiasi delle macchine monitorate subisce un'alterazione potenzialmente pericolosa.
Debian, come è lecito aspettarsi, mette a disposizione degli ottimi strumenti per creare un server di log centralizzato.

Installazione di Syslog-ng

Il server syslog che prenderemo in considerazione sarà Syslog-NG. Pur non essendo installato di default su sistemi Debian, dove invece si può trovare syslogd, questo demone presenta diversi vantaggi:

  1. Le connessioni possono essere stabilite via TCP al posto di UDP
  2. I log tra host syslog-ng possono essere inviati crittati
  3. I log possono essere filtrati in base alla criticità del loro contenuto
  4. Il demone stesso è altamente personalizzabile

Procediamo quindi alla sua installazione:

# apt-get install syslog-ng

L'installazione rimuoverà automaticamente il demone syslog instalalto di default.

Configurazione del server Syslog

Il file di configurazione di syslog-ng è /etc/syslog-ng/syslog-ng.conf. Occorre aprirlo con un editor e decommentare la linea:

udp();

in modo da abilitare il demone a ricevere log da client remoti.
In questa configurazione è stata presa in considerazione una semplice gestione dei log (di default salvati in /var/log), senza l'implementazione di un database di archiviazione. Si tenga comunque presente che le possibilità di gestione dei log sono molto più avanzate di quelle mostrate in questa guida.

Installazione di phpLogCon

Per facilitare la lettura e la gestione dei log è uso comune ricorrere a interfacce grafiche. Su server senza l'ambiente grafico X installato potrebbe essere comodo ricorrere a un'interfaccia scritta in PHP. La scelta in questa guida è caduta su phpLogCon (http://www.phplogcon.org/), che a mio avviso rappresenta un ottimo compromesso tra funzionalità e facilità di installazione/gestione. Prima di installare phpLogCon è necessario installare e configurare un ambiente LAMP, seguendo ad esempio le indicazioni riportare in questa guida: LAMP: Linux, Apache, MySQL e PHP.
Una volta terminata la configurazione dell'ambiente LAMP si può procedere all'installazione di phpLogCon. Si scarichi innanzitutto la versione più aggiornata dal sito ufficiale: http://www.phplogcon.org/downloads.
Quindi si scompatti l'archivio appena scaricato e si copi la directory src all'interno del nostro server Apache:

# tar -xzvf phplogcon-2.3.11.tar.gz
# cd phplogcon-2.3.11
# mv src /var/www

Prima di continuare con l'installazione di phpLogCon occorre rendere rendere leggibili a phpLogCon i files di log syslog. Creiamo innanzitutto un nuovo gruppo e aggiungiamo l'utente www-data a questo gruppo:

# groupadd logadmin
# usermod -a -G logadmin www-data

Verifichiamo quindi la buona riuscita dei comandi:

groups www-data

Ora apriamo con un editor il file /etc/logrotate.conf e cerchiamo la voce create, modificandola in:

create 640 root logadmin

In questo modo la prossima volta che logrotate verrà eseguito i log diventeranno leggibili di default anche per il nostro webserver.

Configurazione di logrotate

Configurazione dei client della rete