nagios报警通过飞信

运维 系统运维
Nagios是一个Linux/Unix操作系统下的监视系统,为我们平台的运行和网络驾航的同时,还能通过飞信给我们报警,来看看具体操作!

nagios报警通过飞信的具体操作如下:

 

nagios 

图-nagios

  系统环境:suse 10.1

  nagios:nagios-3.0.6.tar.gz 插件:nagios-plugins-1.4.13.tar.gz

  飞信:fetion_linux_20080402.tar.tar 以及要用到的lib库文件

  以上软件均能从网上下载

  (飞信的软件已经更新,我这里使用的是旧版)

  ==================================================================================

  1.下载软件包

  2.创建用户和对应的文件夹

 

  1.   groupadd nagios  
  2.  
  3.   useradd nagios -g nagios  
  4.  
  5.   cd /usr/local  
  6.  
  7.   mkdir nagios  
  8.  
  9.   chown nagios.nagios nagios  
  10.  

 

  3.解压缩软件并编译

 

  1.   tar -zxvf nagios-3.0.6.tar.gz  
  2.  
  3.   cd nagios-3.0.6  
  4.  
  5.   ./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios  
  6.  
  7.   make all  
  8.  
  9.   make install  
  10.  
  11.   make install-init  
  12.  
  13.   make install-commandmode  
  14.  
  15.   make install-config  
  16.  

 

  4.安装插件

 

  1.   tar -zxvf nagios-plugins-1.4.13.tar.gz  
  2.  
  3.   cd nagios-plugins  
  4.  
  5.   ./configure --prefix=/usr/local/nagios/  
  6.  
  7.   make  
  8.  
  9.   make install  
  10.  

 

#p#

  5.在default-server.conf中的末尾加上(在目录:/etc/apache2/)

 

  1.   ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin  
  2.  
  3.   Options ExecCGI  
  4.  
  5.   AllowOverride None  
  6.  
  7.   Order allow,deny  
  8.  
  9.   Allow from all  
  10.  
  11.   AuthName "Nagios Access" 
  12.  
  13.   AuthType Basic  
  14.  
  15.   AuthUserFile /usr/local/nagios/etc/htpasswd  
  16.  
  17.   Require valid-user  
  18.  

 

  

 

  1.   Alias /nagios /usr/local/nagios/share  
  2.  
  3.   Options None  
  4.  
  5.   AllowOverride None  
  6.  
  7.   Order allow,deny  
  8.  
  9.   Allow from all  
  10.  
  11.   AuthName "Nagios Access" 
  12.  
  13.   AuthType Basic  
  14.  
  15.   AuthUserFile /usr/local/nagios/etc/htpasswd  
  16.  
  17.   Require valid-user  
  18.  

 

  6.设置登陆nagios的用户和密码

 

  1.   cd /  
  2.  
  3.   /usr/sbin/htpasswd2 -c /usr/local/nagios/etc/htpasswd admin //admin是用户名请修改为自己的,之后会要求你输入两次密码  
  4.  
  5.   yourpasswd  
  6.  
  7.   yourpasswd  
  8.  

 

  7.登陆网页管理页面

  启动http服务,启动nagios(如果你已经执行了上面的全部安装步骤可以直接 service nagios start 启动服务)

  http://yoursite/nagios/

  输入你的用户和密码(此时除了系统本身的服务外是没有其他服务被监视的,并且这时会提示你权限不够,请按下面步骤继续修改)

  8.修改/usr/local/nagios/etc/cgi.cfg的用户权限

 

  1.   efault_user_name=admin  
  2.  
  3.   authorized_for_system_information=nagiosadmin,admin  
  4.  
  5.   authorized_for_configuration_information=nagiosadmin,admin  
  6.  
  7.   authorized_for_system_commands=nagiosadmin,admin  
  8.  
  9.   authorized_for_all_services=nagiosadmin,admin  
  10.  
  11.   authorized_for_all_hosts=nagiosadmin,admin  
  12.  
  13.   authorized_for_all_service_commands=nagiosadmin,admin  
  14.  
  15.   authorized_for_all_host_commands=nagiosadmin,admin  
  16.  

 

  9.启动服务

  service nagios start

  /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg //测试配置文件是否正确

  /usr/local/nagios/bin/nagios -d //后台启动服务

#p#

  10.安装飞信机器人

  软件: fetion_linux_20080402.tar.tar

  库文件:library32(libACE.so.5.4.7 libACE_SSL.so.5.4.7 libcrypto.so.0.9.8 libssl.so.0.9.8

  将四个库文件拷贝至/usr/lib 和 /lib下

  1)tar -zxvf fetion_linux_20080402.tar.tar //解出得到一个文件:sms

  2)cp sms /usr/local/nagios/libexec //将sms拷贝到/usr/local/nagios/libexec目录下

  3)拷贝library32下的所有库文件到 /lib 以及/usr/lib

  (注意:假如你是通过ssh登陆后执行这个步骤,拷贝过程中将自动中断ssh连接并且无法重新连接,恭喜你你要去机房重新启动ssh服务了)

  4)测试飞信是否能发信息

  cd /

  /usr/local/nagios/libexec/sms -f 发信息的手机号码 -p 飞信的密码 -t 接受信息的手机号码 -m “信息内容”

  (回车后如果发送成功会有提示显示的,自己不能给自己发信息只能发给好友)

  (可以使用/usr/local/nagios/libexec/sms --help 获得帮助信息)

#p#

  11.增加nagios飞信报警命令

  1)修改/usr/local/nagios/etc/objects下的 commands.cfg文件

  找到以下内容:

 

  1.   # 'notify-service-by-email' command definition  
  2.  
  3.   define command{  
  4.  
  5.   command_name notify-service-by-email  
  6.  
  7.   command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService:  
  8.  
  9.   $SERVICEDESC$\  
  10.  
  11.   nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional  
  12.  
  13.   Info:\n\n$SERVICEOUTPUT  
  14.  
  15.   $" | /usr/bin/mail -s "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$  
  16.  
  17.   }  
  18.  

 

  在后面增加:

  #notify-host-by-sms

  define command{

  command_name notify-host-by-sms

  command_line /usr/local/nagios/libexec/sms -f 发信息的手机号码 -p 飞信密码 -t $CONTACTPAGER$ -m "$HOSTNAME$

  $SERVICEDESC$ is $SE

  RVICESTATE$ on $TIME$ result is $SERVICEOUTPUT$" $CONTACTPAGER$

  }

  #notify-service-by-sms

  define command{

  command_name notify-service-by-sms

  command_line /usr/local/nagios/libexec/sms -f 发信息的手机号码 -p 飞信密码 -t $CONTACTPAGER$ -m "$HOSTNAME$

  $SERVICEDESC$ is $SE

  RVICESTATE$ on $TIME$ result is $SERVICEOUTPUT$" $CONTACTPAGER$

  }

  保存退出

  2)修改/usr/local/nagios/etc/objects下的 contacts.cfg文件(警报接受人)

  按例子格式添加就可以了(给个示例)

  define contact{

  contact_name abc ; 警报接受人

  use generic-contact ; 模板,如果不是特殊需要请不要修改

  alias System-Admin ; 警报接受人头衔

  email abc@163.com ;邮件地址()

  pager 13800138000 ;警报接受人手机

  }

  然后在组中将他添加为成员

  define contactgroup{

  contactgroup_name admins

  alias Nagios Administrators

  members abc,def ;多个成员用逗号隔开

  }

  保存退出

  3)修改/usr/local/nagios/etc/objects 下的 templates.cfg 报警模板

  define contact{

  name generic-contact ; The name of this contact template

  service_notification_period 24x7 ; service notifications can be sent anytime

  host_notification_period 24x7 ; host notifications can be sent anytime

  service_notification_options w,u,c,r,f,s ; send notifications for all service states, flapping events,

  and sc

  heduled downtime events

  host_notification_options d,u,r,f,s ; send notifications for all host states, flapping events,

  and sched

  uled downtime events

  service_notification_commands notify-service-by-sms ; 服务报警,原来是发送邮件报警的,这里直接改成短信了

  host_notification_commands notify-host-by-sms ; 主机报警,原来是发送邮件报警的,这里直接改成短信了

  register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL CONTACT,

  JUST A TEM

  PLATE!

  }

  (如果要保留邮件报警可以使用逗号隔开写上命令)

  保存退出

  4)增加要监视的主机或服务 修改localhost.cfg (linux主机或服务) switch.cfg(交换机)windows.cfg(widows服务器)

  (这里按例子来增加就可以了)默认的配置文件/usr/local/nagios/etc/nagios.cfg下是没有开switch.cfg和windows.cfg的,如果要用到请将

  前面的#号删除。

  5)将监视的一个服务关闭,在规定的符合动作之后将收到报警信息。

通过文章,我们学会了nagios的又一个技巧:如果nagios报警,可以通过飞信发短信给你的手机,简单方便。希望各位能学会!

【编辑推荐】

  1. nagios客户端程序的安装
  2. Nagios 功能与结构
  3. nagios 在 Debian 的部署结构
  4. 在Linux上运行 Nagios 系统
  5. Nagios功能之监控windows的本地信息
  6. Nagios 配置之验收工作

 

责任编辑:赵鹏 来源: 网络转载
相关推荐

2011-03-23 13:32:14

Nagios飞信

2011-03-23 12:55:51

NagiosMSN飞信

2011-03-23 09:07:49

Nagios飞信

2011-03-24 13:00:31

Nagios飞信

2011-03-24 10:08:42

Nagios飞信Linux

2011-03-24 09:15:54

Nagios飞信

2010-05-31 09:06:12

Nagios飞信

2011-03-23 09:07:50

Nagios短信

2011-03-24 08:56:23

escalationsNagios报警

2011-03-25 14:56:43

Nagiosescalations

2011-03-21 15:44:52

escalationsNagios

2011-03-24 08:56:21

Nagios邮件

2011-03-22 16:31:27

Nagios

2011-04-06 14:24:18

2012-10-27 14:32:22

2011-03-23 12:49:53

NagiosSNMP流量

2018-12-20 11:07:47

飞信微信中国移动

2009-12-23 19:13:40

Fedora Linu

2010-03-10 12:59:08

Linux安装飞信

2011-12-06 09:21:11

中移动飞聊飞信+
点赞
收藏

51CTO技术栈公众号