Nagios邮件报警系统详细配置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nagios邮件报警系统详细配置相关的知识,希望对你有一定的参考价值。
1 首先保证nagios这台服务器能够连通网络。
2 找一台能够上网的主机,登陆邮箱(最好是163网易邮箱)-->设置-->POP3/SMTP/IMAP
-->
选中该页面的所有选项-->帮助-->邮箱帮助-->快速帮助-->邮箱设置-->IMAP/POP3-->
什么是POP3、SMTP和IMAP-->找到邮箱的相关服务信息(服务器名称、服务器地址、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 24x7(7*24小时监控主机上的服务)
service_notification_options w,c,u,r(u:连接不上 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.101的contact_group后的admins改为zctc
保存并退出(:wq)
4.8 重启nagios,命令如下:
service nagios restart
本文出自 “12632953” 博客,请务必保留此出处http://12642953.blog.51cto.com/12632953/1943224
以上是关于Nagios邮件报警系统详细配置的主要内容,如果未能解决你的问题,请参考以下文章