Salve, attualmente Nagios invia notifiche da nagios@server.domain.com, come posso fare per configurarlo? Grazie
Salve, attualmente Nagios invia notifiche da nagios@server.domain.com, come posso fare per configurarlo? Grazie
Risposte:
In un'installazione Nagios predefinita, è anche definito nei comandi host-notify-by-mail
o service-notify-by-mail
, che troverai commands.cfg
. L'impostazione predefinita sarebbe qualcosa del tipo:
/bin/echo -e "$NOTIFICATIONTYPE$ - Service notification for $SERVICEDESC$ from host $HOSTNAME$ - $HOSTALIAS$\n$SERVICEDESC$: $SERVICEOUTPUT$\n" | /bin/mail -s '$NOTIFICATIONTYPE$/$SERVICESTATE$ - $HOSTNAME$/$SERVICEDESC$' $CONTACTEMAIL$
Quindi aggiungi -r sender@address
un'opzione al comando mail e dovrebbe funzionare.
/bin/mail
il-s
Impossibile far funzionare la soluzione "- -r nagios@domain.com". Le opzioni dopo "-" sono opzioni per sendmail. Guardando le opzioni di sendmail, dovrebbe essere "-fnagios @ domain" NOTA NESSUNO SPAZIO tra -f e nagios@domain.com.
Quindi ora funziona come segue: -
command_line /usr/bin/printf "%b" "Notification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTNAME$\Address: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$LONGSERVICEOUTPUT$" | /bin/mail -s "$SERVICESTATE$ - Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$ -- -fnagios@domain.com
Quello che ha funzionato per me è stato aggiungere -r $ADMINEMAIL$
prima di -s
(immediatamente dopo /bin/mail
), e ovviamente $ADMINEMAIL$
deve essere impostato nagios.cfg
usando l' admin_email
impostazione.
Sono stato in grado di farlo modificando il comando in qualcosa di debole:
command_line /usr/bin/printf "%b" "Notification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTNAME$\Address: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$LONGSERVICEOUTPUT$" | /bin/mail -s "$SERVICESTATE$ - Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$ -- -r $ADMINEMAIL$
La magia è la parte '- -r'.
ADMINEMAIL è impostato in nagios.cfg, ma potrebbe essere qualsiasi indirizzo e-mail per l'indirizzo "Da".
Nessuna delle opzioni precedenti funziona con le versioni correnti di Nagios e / o Postfix. Il flag che deve essere aggiunto ai comandi Nagios "host-notification-by-mail" o "service-notification-by-mail" nel file "comandi.cfg" recita come segue:
-a "From: john.doe@uzh.ch"
Si noti che le virgolette sono essenziali!
Questo è definito in etc/nagios3/conf.d/contacts_nagios2.cfg
È possibile definire gli utenti con e-mail e gruppi. Inoltre è possibile configurare gruppi diversi per scopi diversi, ad esempio web_admin per avvisi http, admin per avvisi host, ecc.
Per cui il bsd-mailx
mio /usr/bin/mail
comando si collega a, nulla sembrava funzionare, quindi ho usato /usr/sbin/sendmail
(fornito da postfix) in questo modo:
command_line /usr/bin/printf "%b" "Subject:** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **\n\n**** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /usr/sbin/sendmail -r "nagios@example.com" $CONTACTEMAIL$
Per sendmail
due cose da considerare:
-r
per specificare il percorso di ritorno (e l'indirizzo di provenienza)-s
per l'argomento. Invece, aggiungi l' Subject:
intestazione di posta nel printf
seguito da due nuove righe\n\n