定义Nagios发送电子邮件的电子邮件地址

您好目前Nagios发送来自[email protected]的通知,我如何去configuration这个? 谢谢

在默认的Nagios安装中,它也在host-notify-by-mailservice-notify-by-mail命令中定义,您可以在commands.cfgfind这些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选项即可。

无法获得“ – -r [email protected]”解决scheme的工作。 原来“ – ”后的选项是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] 

在command.cfg上的$ CONTACTEMAIL $前面加上-r nagios @域

我的工作是添加-r $ADMINEMAIL$-s之前(紧接在/bin/mail ),当然$ADMINEMAIL$必须使用admin_email设置在admin_email设置。

我可以通过改变命令来做到这一点:

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中,但可以是“发件人”地址的任何电子邮件地址。

以上都不适用于当前版本的Nagios和/或Postfix。 需要添加到文件“commands.cfg”中的Nagios“host-notify-by-mail”或“service-notify-by-mail”命令的标志如下所示:

 -a "From: [email protected]" 

请注意,引号是必不可less的!