Monitorare rsyslogd mediante nagios

Creato il 21 marzo 2011 da Nightfly

Ho già trattato diversi argomenti in cui veniva discussa la corretta configurazione di un logserver basato su sitemi *nix. Ora vedremo come monitorare mediante nagios3 il demone che si occupa della raccolta dei log.

Nella fattispecie, il demone in questione è rsyslogd, evoluzione del più datato syslogd. Esso consente di salvare le informazioni inviate dai vari dispositivi di rete su di un apposito file creato all'occorrenza, in modo da tenere traccia degli eventi più rilevanti.

Ora, tale demone (per default) rimane in ascolto sulla porta 514 ed utilizza per il protocollo UDP per il trasporto. Ciò significa che non è previsto alcun meccanismo di SYN SYN/ACK ACK come invece avviene per il protocollo TCP (molto più affidabile ma allo stesso tempo molto più oneroso in termini di banda).

Detto ciò, vediamo come monitorare lo stato di tale servizio sfruttando nagios3. Per prima cosa scarichiamo questo PERL script.

Successivamente salviamo il file appena scaricato nella directory /usr/lib/nagios/plugins e rinominiamolo in check_syslog:

nightfly@nightbox:/usr/lib/nagios/plugins$ sudo mv check_syslog_02.pl check_syslog

A questo punto rendiamo lo script eseguibile digitando:

nightfly@nightbox:/usr/lib/nagios/plugins$ chmod +x check_syslog

Definiamo il comando attraverso il quale verificheremo il corretto funzionamento di rsyslogd. Per fare ciò occorre creare il file syslogd.cfg il cui contenuto dovrà essere:

# 'check_syslogd' command definition
define command{
   command_name   check_syslog
   command_line   /usr/lib/nagios/plugins/check_syslog -l '$HOSTADDRESS$' -f '$ARG1$'
   }

Posizioniamoci ora nella directory /etc/nagios3/conf.d ed editiamo il file di configurazione relativo al logserver aggiungendo il seguente servizio:

define service{
   use   generic-service   ; Name of service template to use
   host_name   localhost
   service_description   Rsyslog
   check_command   check_syslog!/var/log/syslog
   }

A questo punto occorre operare sui permessi di lettura/scrittura associati al file syslog. Per prima cosa posizioniamoci nella directory /var/log e lanciamo un ls -ila | grep syslog:

2097425 -rw-r-----  1 syslog   adm   171910 2011-03-21 11:54 syslog

Come possiamo notare il gruppo che ha la possibilita di accedere al file in lettura è adm. Aggiungiamo l'utente nagios al gruppo adm editando il file group presente nella dir /etc:

adm:x:4:nagios

Riavviamo nagios3:

nightfly@nightbox:/etc$ sudo service nagios3 restart

ed abbiamo finito.

A presto. 


Potrebbero interessarti anche :

Possono interessarti anche questi articoli :