Définition de l'adresse e-mail à partir de laquelle Nagios envoie des e-mails

16

Salut, Nagios envoie actuellement des notifications de [email protected], comment dois-je procéder pour configurer cela? Merci


la source

Réponses:

14

Dans une installation par défaut de Nagios, il est également défini dans les commandes host-notify-by-mailou service-notify-by-mail, que vous trouverez dans commands.cfg. La valeur par défaut serait quelque chose comme:

/bin/echo -e "$NOTIFICATIONTYPE$ - Service notification for $SERVICEDESC$ from host $HOSTNAME$ - $HOSTALIAS$\n$SERVICEDESC$: $SERVICEOUTPUT$\n" | /bin/mail -s '$NOTIFICATIONTYPE$/$SERVICESTATE$ - $HOSTNAME$/$SERVICEDESC$' $CONTACTEMAIL$

Il suffit donc d'ajouter une -r sender@addressoption à la commande mail, et cela devrait fonctionner.

RainyRat
la source
C'est ce que j'ai fait et cela a bien fonctionné. Différentes alertes sont envoyées par différents comptes grâce à notre programme de billetterie automatisé.
Breadly
1
J'ai ajouté cela entre /bin/mailet le-s
jgritty
@RainyRat - avez-vous des chances de modifier votre réponse pour placer le -r comme premier paramètre? - comme d'autres réponses le suggèrent alors heureux de voter pour votre réponse: o)
Dazed
3

Impossible de faire fonctionner la solution "- -r [email protected]". Il s'avère que les options après "-" sont des options pour sendmail. En regardant les options de sendmail, il devrait s'agir de "-fnagios @ domain". REMARQUE PAS D'ESPACE entre -f et [email protected].

Donc, ce qui suit fonctionne maintenant: -

  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$ -- [email protected]
Nagios_Noob
la source
3

Mettez -r nagios @ domain avant $ CONTACTEMAIL $ sur commandes.cfg

astroneo
la source
2

Ce qui a fonctionné pour moi, c'était l'ajout -r $ADMINEMAIL$avant le -s(immédiatement après /bin/mail), et bien sûr, $ADMINEMAIL$il faut le définir en nagios.cfgutilisant le admin_emailparamètre.

Albert Braden
la source
1

J'ai pu le faire en changeant la commande en quelque chose de liek:

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 magie est la partie «- -r».

ADMINEMAIL est défini dans votre nagios.cfg, mais peut être n'importe quelle adresse e-mail pour l'adresse «De».

jizaymes
la source
1

Aucun de ces éléments ne fonctionne avec les versions actuelles de Nagios et / ou Postfix. L'indicateur qui doit être ajouté aux commandes Nagios "host-notify-by-mail" ou "service-notify-by-mail" dans le fichier "command.cfg" se lit comme suit:

-a "From: [email protected]"

Notez que les guillemets sont essentiels!

aag
la source
Cela modifie l'adresse d'expéditeur, mais cela ne modifie pas l'adresse de chemin de retour. Vous voudrez peut-être changer les deux.
Christopher K.
0

Ceci est défini dans etc/nagios3/conf.d/contacts_nagios2.cfg

Vous pouvez définir des utilisateurs avec des e-mails et des groupes. Vous pouvez également configurer différents groupes à des fins différentes - par exemple, web_admin pour les alertes http, admin pour les alertes d'hôte, etc.

HogFather
la source
Dans la configuration des contacts, vous configurez les destinataires des mails envoyés, pas l' adresse de l' expéditeur . Cette question est sur la façon de changer l'adresse de l' expéditeur ( « où il envoie des messages électroniques à partir »).
Christopher K.
0

Pour le lien vers bsd-mailxma /usr/bin/mailcommande, rien ne semblait fonctionner, alors j'ai utilisé /usr/sbin/sendmail(fourni par postfix) comme ceci:

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 "[email protected]" $CONTACTEMAIL$

Pour sendmaildeux choses à considérer:

  • Utilisez -rpour spécifier le chemin de retour (et from-address)
  • Il n'y a pas -sde sujet. Au lieu de cela, ajoutez l'en- Subject:tête du courrier dans le printfsuivi de deux retours à la ligne\n\n
Christopher K.
la source