Nagios飞信免费短信报警配置

发布时间:2020-03-22编辑:脚本学堂
Nagios飞信免费短信报警配置

一、fetion20091117
wget http://www.it-adv.net/fetion/downng/library_linux.tar.gz
wget http://www.it-adv.net/fetion/downng/fetion20090406003-linux.tar.gz
wget http://www.it-adv.net/fetion/downng/fetion20091117-linux.tar.gz
 
#在安装飞信之前需要在/usr/lib目录下加上libACE库文件,以便使飞信能够正常使用
 

复制代码 代码如下:
[root@localhost src]# tar zxvf library_linux.tar.gz   
[root@localhost src]# mv libACE* libcrypto.so.0.9.8 libssl.so.0.9.8  /usr/lib

#正式安装飞信
 

复制代码 代码如下:
[root@localhost src]# tar zxvf fetion20090406003-linux.tar.gz
[root@localhost src]# mv install /usr/local/fetion
[root@localhost src]# chmod -R 755 /usr/local/fetion
[root@localhost src]# chown -R nagios:nagios /usr/local/fetion
 

#移动服务器更新,需要更新软件

复制代码 代码如下:
[root@localhost src]# tar zxvf fetion20091117-linux.tar.gz
[root@localhost src]# cp fx/* /usr/local/fetion
[root@localhost src]# vi /etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/local/fetion      #增加目录
[root@localhost src]# ldconfig
[root@localhost src]#/usr/local/fetion/fetion --mobile=151***** --pwd=*** --to=151***** --msg-utf8="test" --debug
[root@localhost src]#/usr/local/fetion/fetion   ##帮助
[root@localhost src]#cp /usr/local/fetion/fetion /usr/bin/
 

配置contacts.cfg
 

复制代码 代码如下:
define contact {
       contact_name                    admin
       alias                           system admin
       host_notification_period        24x7
       service_notification_period     24x7
       host_notification_options       d,r
       service_notification_options    c,w,r
       service_notification_commands   notify-service-by-fetion
#      service_notification_commands   notify-service-by-email
       host_notification_commands      notify-host-by-fetion
#      email                           1234@sina.com
       pager                           1312323232323 #手机号
  }
 

配置miscommands.cfg文件
 

复制代码 代码如下:

define command {
         command_name       notify-host-by-fetion
         command_line       /usr/bin/fetion --mobile=13422222222 --pwd=xxxxxxxx --to=$CONTACTPAGER$ --msg-utf8="Host $HOSTSTATE$

alert for $hostname$! on '$LONGDATETIME$'" $CONTACTPAGER$
                }
 define command {
         command_name    notify-service-by-fetion
 command_line    /usr/bin/fetion --mobile=134663xxxx --pwd=xxxxxxxx --to=$CONTACTPAGER$ --msg-utf8="$HOSTADDRESS$ $HOSTALIAS$/

$SERVICEDESC$ is $SERVICESTATE$ on $LONGDATETIME$" $CONTACTPAGER$
        }
 

二、fetion20080402

一、 前言:
1、 nagios是一个非常好的系统监控工具,现在我的nagios系统已经正常运行,使用短信猫和邮件可以报警。使用飞信可以节约我们的短信猫和短信费用。
2、 飞信首先手机要开通中国移动的飞信业务。目前使用飞信发送短信是免费的。需要把接受短信的手机和飞信发送手机加为好友。
3、 下载飞信的linux客户端程序.解开包后只有一个文件sms。不错。这个就是飞信发送短信的程序啦。现在的飞信还是不能用的。因为它需要libace的glibc库的支持。
二、 飞信linux程序下载:
1、 飞信官方网站:http://www.it-adv.net/
2、 飞信官方命令下载:sms
http://www.it-adv.net/fetion/fetion_linux_20080402.tar.gz
3、 飞信官方lib库下载:
32位官方lib库:http://www.it-adv.net/fetion/library32.rar
64位官方lib库:http://www.it-adv.net/fetion/library64_linux.tar.gz

三、 飞信程序测试:
1、 飞信命令测试:
# wget http://www.it-adv.net/fetion/fetion_linux_20080402.tar.gz
# tar xvfz fetion_linux_20080402.tar.gz
# cp sms /usr/bin
# sms -h
sms -f mobile -p pwd -t mobile1,.. -m message -a message -d
sms -f mobile -p pwd -t mobile1,.. -i file_name[utf8] -a invite_message -d 1
-f:Fetion mobile account(only supports mobile phone No.)
-p:Account password
-t:Destination mobile list
-m:Message
-i:File name(only supports utf8)
-a:Auto send invite using invite_message.
-d:Debug on.
如果没有安装lib库,将会提示 缺少libACE.so.5.4.7包
四、 解决缺少lib库的方法:
说明: 在centos5下装提示需要libACE.so.5.4.7这个库,千万不要自己去安装ACE包,很麻烦,官方已经给了liunx的下载版本:
1.先检查一下缺少的lib文件
 

复制代码 代码如下:
[root@nagios libexec]# ldd sms
        linux-gate.so.1 =>  (0x00b00000)
        libACE.so.5.4.7 => not found
        libACE_SSL.so.5.4.7 => not found
        libssl.so.0.9.8 => not found
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x02a05000)
        libm.so.6 => /lib/libm.so.6 (0x00cd4000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x029f7000)
        libc.so.6 => /lib/libc.so.6 (0x00b92000)
        /lib/ld-linux.so.2 (0x001c3000)

2.下载lib库: 
32位官方lib库:http://www.it-adv.net/fetion/library32.rar
64位官方lib库:http://www.it-adv.net/fetion/library64_linux.tar.gz 
3、安装lib库
[root@nagios library32]# ls
libACE.so.5.4.7  libACE_SSL.so.5.4.7  libcrypto.so.0.9.8  libssl.so.0.9.8
[root@nagios library32]# cp *.* /lib/
[root@nagios library32]# cp *.* /usr/lib/
4、测试sms:
[root@nagios libexec]# ./sms
************************ IMPORTANT STATEMENT ************************
**                                                                 **
**   PLEASE DON'T USE THIS SOFTWARE TO SEND JUNK SHORT MESSAGES.   **
**   OTHERWISE PLEASE BEAR YOUR OWN CONSEQUENCES.                  **
**                                                                 **
**                                       [version:2008-4-2]        **
*********************************************************************
This program is for sending short messages via CMCC Fetion!
[url=http://www.fetion.com.cn/]http://www.fetion.com.cn/
AUTHOR:KelvinHan MSN/EMAIL:shichangguo@msn.com 2008/3/8
Usage:
    sms -f mobile -p pwd -t mobile1,.. -m message -a message -d
    sms -f mobile -p pwd -t mobile1,.. -i file_name[utf8] -a invite_message -d 1
        -f:Fetion mobile account(only supports mobile phone No.)
        -p:Account password
        -t:Destination mobile list
        -m:Message
        -i:File name(only supports utf8)
        -a:Auto send invite using invite_message.
        -d:Debug on.

五、 Nagios飞信测试:
1、 需要注册一个可以使用飞信的手机号码,测试期间可以自己发送给自己做测试。
2、 给别的手机发飞信,需要给把手机绑定为好友。
3、 飞信环境解决了,发短信测试一下
136933XXXXX为发飞信的注册手机号码
136833XXXXX、36733XXXXX 为接收飞信短信的手机号码

[root@nagios libexec]# ./sms -f 136933XXXXX -p password -t 136833XXXXX -m hello,this is test
也可以要发的消息在一个文本文件里,如 message.txt
./sms -f 136933XXXXX -p password -t 136833XXXXX,136733XXXXX -i message.txt
如果接收短信的手机号码在你的好友列表里,就会发送成功。
如果不在好友列表里,发送是不成功的。如果你想让程序邀请他们加入,那么就用 -a 参数
sms -f 136933XXXXX -p password -t 136833XXXXX,136733XXXXX -m 你好,飞信 -a UBUNTU这样,对方就会收到移动发的确认短信。
六、 Nagios配置:
1、 nagios命令配置commands.cfg:
 

复制代码 代码如下:
more /usr/local/nagios/etc/commands.cfg
define command{
        command_name notify-service-by-sms
        command_line /usr/bin/sms -f 13901111111 -p 562128  -t $CONTACTPAGER$ -m "$HOSTNAME$ $SERVICEDESC$ is $SERVICESTATE$ 
on $TIME$ result is $SERVICEOUTPUT$" $CONTACTPAGER$
}

2、 nagios发送配置contacts.cfg:
 

复制代码 代码如下:
[root@nagios ~]# more /usr/local/nagios/etc/contacts.cfg 
define contact{
        contact_name                    sa
        alias                           system admin
        host_notification_period        24x7
        service_notification_period     24x7
        host_notification_options       d,r,
        service_notification_options    c,w,r
       service_notification_commands   notify-service-by-email,notify-service-by-sms
#       service_notification_commands   notify-service-by-email
        host_notification_commands      notify-host-by-email
#        email                          [email]1234@sina.com[/email]
       pager                           158010775111
        }
[root@nagios ~]#

七、 备注
添加内容:现在新的lib库,测试以后在32位和64位操作系统都可以使用!!
测试系统:centos 5.2
wget http://www.it-adv.net/fetion/lib_lin_32.tar.gz