Nagios - NagWin - 使用 Gmail 发送通知

Nagios - NagWin - 使用 Gmail 发送通知

我想使用我的 Gmail 帐户发送 Nagios 通知。

我已经设置了我想要监控的主机和服务。

在 Windows Server 2012 安装上使用 NagWin 实现此目的的最简单方法是什么?

据我所知,我必须更改其中一些配置设置:

# 'notify-host-by-email' command definition
define command{
    command_name    notify-host-by-email
    command_line    /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /bin/blat - -to $CONTACTEMAIL$ -f nagios@localhost -subject "** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **" -server ???
    }

# 'notify-service-by-email' command definition
define command{
    command_name    notify-service-by-email
    command_line    /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$\n" | /bin/blat - -to $CONTACTEMAIL$ -f nagios@localhost -subject "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" -server ???
    }

我应该使用什么 smtp 服务器?我可以将通知直接发送到 Gmail 服务器吗?

答案1

您的 Windows 机器上是否/usr/bin/printf存在并且是否带有 SMTP 服务器参数?/bin/blatblat

如果没有,您将需要一组替代命令 - 甚至可能是您自己的自定义脚本 - 来生成文本输出并将其发送到 SMTP 服务器。

无论如何,我可能会将其指向安装在同一 Windows 机器上的基于 IIS 的虚拟邮件服务器,然后配置 IIS vSMTP 以通过智能主机功能将所有邮件发送到 Gmail。如果网络中断导致您失去与 Gmail 服务器的连接,这将允许您在本地排队邮件。您还可以使用第三方服务器,例如邮件服务器

这篇亚马逊博客文章给出了如何设置 IIS 的一个很好的例子(在适当的情况下用 Amazon 代替 Google)...

相关内容