您好目前Nagios发送来自[email protected]的通知,我如何去configuration这个? 谢谢
在默认的Nagios安装中,它也在host-notify-by-mail或service-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的!