web-dev-qa-db-ja.com

Nagiosがメールを送信するメールアドレスの定義

こんにちは、現在Nagiosは[email protected]から通知を送信しています。これを構成するにはどうすればよいですか?ありがとう

16
boonana

デフォルトのNagiosインストールでは、Host-notify-by-mailにあるservice-notify-by-mailまたはcommands.cfgコマンドでも定義されます。デフォルトは次のようになります。

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

したがって、-r sender@addressオプションをmailコマンドに追加するだけで動作します。

14
RainyRat

Commands.cfgの$ CONTACTEMAIL $の前に-r nagios @ domainを置きます

3
astroneo

「-r [email protected]」ソリューションを機能させることができませんでした。 「-」の後のオプションは、sendmailのオプションです。 sendmailオプションを見ると、「-fnagios @ domain」であるはずです。-fと[email protected]の間にはスペースを入れないでください。

したがって、以下は現在機能しています:-

  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]
3
Nagios_Noob

私にとってうまくいったのは、_-r $ADMINEMAIL$_の前(_-s_の直後)に_/bin/mail_を追加することでした。もちろん、_$ADMINEMAIL$_を_nagios.cfg_に_admin_email_設定。

2
Albert Braden

上記のいずれも、NagiosやPostfixの現在のバージョンでは機能しません。 「commands.cfg」ファイル内のNagiosの「Host-notify-by-mail」または「service-notify-by-mail」コマンドに追加する必要があるフラグは、次のようになります。

-a "From: [email protected]"

引用符は必須です。

1
aag

これを行うには、コマンドを次のように変更します。

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$

魔法は「--r」の部分です。

ADMINEMAILはnagios.cfgで設定されていますが、「From」アドレスには任意のメールアドレスを使用できます。

1
jizaymes

私のbsd-mailxコマンドがリンクしている/usr/bin/mailについては、何も機能していないようだったので、次のように/usr/sbin/sendmail(postfixで提供)を使用しました。

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$

sendmailについて考慮すべき2つのこと:

  • -rを使用して、戻りパス(および送信元アドレス)を指定します
  • 件名に-sはありません。代わりに、Subject:メールヘッダーをprintfに追加し、その後に2つの改行を追加します\n\n
0
Christopher K.

これはetc/nagios3/conf.d/contacts_nagios2.cfg

電子メールとグループでユーザーを定義できます。また、異なる目的のために異なるグループを構成することもできます。 httpアラートにはweb_admin、Hostアラートにはadminなど。

0
HogFather