Nagios邮件报警系统详细配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nagios邮件报警系统详细配置相关的知识,希望对你有一定的参考价值。

1 首先保证nagios这台服务器能够连通网络。

 

2 找一台能够上网的主机,登陆邮箱(最好是163网易邮箱)-->设置-->POP3/SMTP/IMAP

  -->

技术分享选中该页面的所有选项-->帮助-->邮箱帮助-->快速帮助-->邮箱设置-->IMAP/POP3-->

  什么是POP3SMTPIMAP-->找到邮箱的相关服务信息(服务器名称、服务器地址、SSL

  协议端口号、非SSL协议端口号)的一个表。(用163邮箱的原因是端口是比较稳定的,别的邮箱端口容易发生改变)

 

3 设置中选中所有选项并记住帮助中的端口号后将网页关闭即可。

 

技术分享 

4 S:配置监控服务器(192.168.19.100)(服务端机器)

   4.1 安装mutt,功能是由于写信,命令如下:

       yum -y install mutt

如图即为成功

技术分享 

 

   4.2 解压邮件插件包,命令如下:

       cd -->ls -->cd nagios -->ls

       tar fx msmtp-1.4.30.tar.bz2 -->ls

       cd msmtp-1.4.30 -->ls

 

   4.3 编译安装,命令如下:

       ./configure

技术分享 

       make && make install

技术分享 

如图表示执行成功

 

   4.4 修改其相关文件,步骤如下:

       vim /etc/Muttrc

       ①搜索set sendmail /set sendmail

         将原文件中的 # set sendmail="/usr/sbin/sendmail -oem -oi"去掉注释并改为:

                      set sendmail="/usr/local/bin/msmtp"

       ②搜索 set from /set from

         将原文中的 # set from=""去掉注释并补充完整,如下:

                    set from="邮箱地址"

       ③搜索 set realname /set realname

         将原文中的 # set realname=""去掉注释并补充完整,如下:

                    set realname="发件人名称"

       保存并退出(:wq

 

4.5 手写其配置文件(因为不自带配置文件,必须手动书写),如下:

    cd /usr/local/etc -->ls 显示为空,没有任何东西。在此路径下写配置文件,如下:

    vi msmtprc

    account         default

    host            smtp.163.com

    port            25

    tls              off

    from            [email protected](你的邮箱账号)

    auth            login

    user            [email protected](你的邮箱账号)

    password        *********(邮箱的授权码)

    logfile           /tmp/msmtp.log

    保存并退出(:wq

 

4.6 定义发件命令,步骤如下:

    vim /usr/local/nagios/etc/objects/commands.cfg

    找到 # ‘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/mail -s "** $NOTIFICATIONTYPE$ Host Alert:

        $HOSTNAME$ is $HOSTSTATE$ **" $CONTACTEMAIL$

          }

 

         # ‘notify-service-by-email‘ command definition

         define command{

         command_name    notify-service-by-email        

                command_line      /usr/bin/printf"%b""*****Nagios

                *****\n\nNotificationType:$NOTIFICATIONTYPE$\n\nService:   

                $SERVICEDESC$\nHost:$HOSTALIAS$\nAddress:   

                $HOSTADDRESS$\nState:

                $SERVICESTATE$\n\nDate/Time:$LONGDATETIME$\n\nAdditional

                Info:\n\n$SERVICEOUTPUT$\n"| /bin/mail -s"**

                $NOTIFICATIONTYPE$ServiceAlert:$HOSTALIAS$/$SERVICEDESC$is

                $SERVICESTATE$ **" $CONTACTEMAIL$

                          }

 

 添加如下内容:

  # ‘notify-host-by-sms‘ command definition

    define command{

        command_name    notify-host-by-sms

        command_line    /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /usr/bin/mutt -s "** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **" $CONTACTEMAIL$

        }

 

# ‘notify-service-by-sms‘ command definition

define command{

        command_name    notify-service-by-sms

        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" | /usr/bin/mutt -s "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$

        }

        保存并退出(:wq

 

4.7 定义联系人,在文件的最下方新增步骤如下:

    vim /usr/local/nagios/etc/objects/contacts.cfg

define contact{

        contact_name                    johy(定义联系人的名字)

        host_notification_period        24x7    (7*24小时监控主机)

        host_notification_options       d,u,r(d:宕机 u:连接不上 r:恢复)

        host_notification_commands       notify-host-by-sms

        service_notification_period     24x77*24小时监控主机上的服务)

        service_notification_options    w,c,u,ru:连接不上 r:恢复 w:警告 c:严重警告)

        service_notification_commands    notify-service-by-sms(调用的命令所实现的功能(针对服务))

        email                           y***********@163.com

        }

 

define contactgroup{

        contactgroup_name       zctc(定义联系人组)

        members                 johy(定义联系人的名字)

        }

保存并退出(:wq

 

vim /usr/local/nagios/etc/objects/localhost.cfg

host 192.168.19.101contact_group后的admins改为zctc

保存并退出(:wq

4.8 重启nagios,命令如下:

    service nagios restart


本文出自 “12632953” 博客,请务必保留此出处http://12642953.blog.51cto.com/12632953/1943224

以上是关于Nagios邮件报警系统详细配置的主要内容,如果未能解决你的问题,请参考以下文章

nagios配置邮件报警

nagios钉钉报警与邮件报警

nagios通过邮件发送报警

nagios使用sendEmail邮件报警

nagios 监控

如何在zabbix中限制报警邮件的次数