ChinaUnix首页 > 精华文章 > 门户网站运维 > 正文

[精华] Nagios飞信linux系统免费短信报警配置


http://www.chinaunix.net 作者:solaris小兵  发表于:2009-05-26 16:27:58
发表评论】 【查看原文】 【门户网站运维讨论区】【关闭

Nagios飞信linux系统免费短信报警配置

本人声明如需转载请保留如下信息: 
作者:SOLARIS小兵
MAIL:[email]solarisxb@hotmail.com[/email]
BLOG:http://solarisxb.cublog.cn/

一、 前言:
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 ~]#

七、 备注:

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

[ 本帖最后由 solaris小兵 于 2008-12-24 14:26 编辑 ]

fetion_linux_20080402.tar.gz

library32.rar

library64_linux.tar.gz



 kouxiaoming 回复于:2008-12-04 19:09:29

沙发!!!哈哈!顶顶顶!!!!


 kns1024wh 回复于:2008-12-04 21:20:34

你的系统如果是使用的32位,那是可以的,64位上存在一个gcc版本的问题,不过在64为上是可以使用32位的
还有你这里将飞信改名sms了 呵呵,不要误导呀。
有时间交流下


 老男孩不老 回复于:2008-12-04 23:20:37

佩服一楼的,不过感觉有点麻烦啊,效果如何呢?
139.com的信箱就蛮好的。不限制短信数。
现在也有免费的手机邮箱


 zhj198769 回复于:2008-12-05 11:22:53

值得试一下啊。。。。。。


 yingqiba 回复于:2008-12-05 21:43:37

淘宝店应该怎样进行运行和维护呢?


 jiang2798 回复于:2008-12-06 18:30:49

不错的东西


 mageguoshi 回复于:2008-12-08 11:56:03

灰常好啊。顶一个咯!


 pei5 回复于:2008-12-11 15:50:31

思想挺好,可惜就是大集群化的服务器监控,这样部署太繁琐了吧,反应也慢咯


 evil_knight 回复于:2008-12-16 23:12:54

我用的139信箱,呵呵!不知道有啥限制没,也是免费的!


 vienna2018 回复于:2008-12-18 09:13:18

监控好东东!


 ruochen 回复于:2008-12-25 08:15:30

非常不错


 stionmel 回复于:2009-01-03 19:35:43

楼主,如果你的出口都断掉了你有怎么办呢???:em03: :em03: :em03: :em03:


 shulei521 回复于:2009-01-09 15:57:27

找个时间玩玩!


 ldw21cn 回复于:2009-01-13 13:49:25

好贴,支持你!
一直用的邮箱的短信提醒来接收报警信息~


 huifeideluotuo 回复于:2009-01-15 09:43:35

用139的邮箱挺好的,如果要加冗余的话,再用飞信


 ruochen 回复于:2009-01-15 11:57:54

这个好

省很多银子


 dashan79 回复于:2009-02-25 12:26:25

好,有空一定要做个测试,对维护来讲很有用!


 dashan79 回复于:2009-02-25 12:33:07

思想挺好,可惜就是大集群化的服务器监控,这样部署太繁琐了吧,反应也慢咯

不会繁琐,如果改造一下,我想你可以专门放在一台机器上,开个接口,然后其他的机器出先问题,直接把日志信息发到这个机器上,通过这个机器转发出来。这样也集中好管理。

但是前提,你这个机器必须没问题。


 dashan79 回复于:2009-04-17 11:10:54

佩服一楼


 xyn8012 回复于:2009-05-26 16:27:58

大侠们救命啊!
我下载了fetion_linux_20080402.tar.gz,解压缩后生成一个的文件,sms -h检测后提示“sms: error while loading shared libraries: libACE.so.5.4.7: wrong ELF class: ELFCLASS64”,我没去理会,继续解压library64_linux.tar.gz,生成4个文件“libACE.so.5.4.7  libACE_SSL.so.5.4.7  libcrypto.so.0.9.8  libssl.so.0.9.8”,把这个4个文件复制到cp *.* /lib/和cp *.* /usr/lib/(我用的是64位的系统,同事也把这些文件拷到了/lib64和/usr/lib64/下)然后ldd sms。任然提示没有找到。请给位帮忙。
     linux-gate.so.1 =>  (0xffffe000)
        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 (0x00c60000)
        libm.so.6 => /lib/libm.so.6 (0x00a2b000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00aff000)
        libc.so.6 => /lib/libc.so.6 (0x008c6000)
        /lib/ld-linux.so.2 (0x008a8000)




原文链接:http://bbs.chinaunix.net/viewthread.php?tid=1326927
转载请注明作者名及原文出处