22
Jan
2

Inviare Nagios alerts via email con sSMTP

ssmtp1Sapere tempestivamente se un sistema della nostra rete ha un problema è spesso la chiave per ridurre al minimo i disservizi. Non sempre però gli occhi sono puntati sul monitor per controllare che tutto sia up & running, specialmente se la rete è composta da molti dispositivi.

Avere la possibilità di ricevere gli alert via email invece, permette di acquisire l’informazione in tempo reale su diversi dispositivi (pc, blackberry o telefono) senza la necessità di essere fisicamente davanti al monitor di sistema. Questo permette un intervento tempestivo prima di essere sommersi di chiamate da parte degli utenti.

Utilizzando Nagios per monitorare la rete, è utile ricevere le notifiche via email degli alert generati dal sistema al verificarsi di un particolare evento poichè Nagios non ha questa funzione implementata internamente.

Per non complicare troppo il sistema, dotare Nagios del supporto email diventa indolore se ci si affida ad un sistema come ssmtp, un package che permette di inviare in maniera molto semplice le email ad un server SMTP… in pratica effettua il forward delle email generate in automatico ad un indirizzo di posta.

1. INSTALLAZIONE

Da console procediamo in questo modo:

# wget http://download.fedora.redhat.com/pub/epel/5/i386/ssmtp-2.61-11.8.el5.i386.rpm

# rpm –Uvh ssmtp-2.61-11.8.el5.i386.rpm

ssmtp2

In CentOS il file eseguibile viene installato in /usr/sbin/.

Una volta installato il package, bisogna editare il file di configurazione ssmtp.conf per impostare i parametri corretti:

# vi /etc/ssmtp/ssmtp.conf

ssmtp3

2. Testare sSMTP

Per verificare che il tutto funzioni correttamente, inviamo una email di prova nella casella di posta configurata:

# ssmtp mail@gmail.com

  1. Digitiamo un testo, ad esempio “Test invio email con ssmtp…”
  2. Premiamo INVIO
  3. Premiamo CTRL+D

ssmtp4

Se tutto funziona, riceveremo nella casella specificata una email da root con il testo digitato precedentemente.

ssmtp5

3. Configurare Nagios

Una volta verificato che le email di test arrivano, bisogna configurare il file commands.cfg di Nagios per poter utilizzare ssmtp:

# vi /etc/nagios/objects/commands.cfg

Sostituire /bin/mail con il comando /usr/sbin/ssmtp.

define command{
command_name notify-host-by-email
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /bin/mail /usr/sbin/ssmtp -s "** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **" $CONTACTEMAIL$
}

define command{
command_name notify-service-by-email
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$" | /bin/mail /usr/sbin/ssmtp -s "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$
}

Al verificarsi di un alert, Nagios invierà una notifica all’indirizzo email specificato nella configurazione di ssmtp.

ssmtp6

Questo ci permette di essere avvisati immediatamente al verificarsi di un problema e quindi di poter intervenire tempestivamente limitando i disservizi al minimo.

firma

Enjoyed reading this post?
Subscribe to the RSS feed and have all new posts delivered straight to you.
2 Comments:
  1. giorgioNo Gravatar 14 May, 2010

    ciao ho seguito la tua guida da terminale mi fa inviare le email ma da nagios niente non mi funziona

    mi daresti una mano

  2. P@oloNo Gravatar 17 May, 2010

    Nagios è stato correttamente configurato?
    Per ricevere le notifiche via email, devono essere configurati correttamente i parametri in contacts.cfg, contactgroup.cfg.
    Verifica inoltre che siano stati specificati i comandi “notify-host-by-email / notify-service-by-email”.

Post your comment