Nagios飛信配置
nagios組合飛信
1、軟件環(huán)境(centos 5為例)
官網(wǎng)地址:[url]http://www.it-adv.net/[/url]
支持庫安裝:需要Glibc2.4以上的版本
2、安裝過程
支持庫和安裝包內(nèi)容如下:
- # tar zxvf libraryrh4×32.tar.gz
- libACE-5.6.5.so
- libACE_SSL-5.6.5.so
- libcrypto.so.0.9.7a
- libssl.so.0.9.7a
- # tar zxvf fetion20080522004-linrh4.tar.gz
我將fetion放在/../nagios/libexec/sms
把支持庫復制到/usr/lib/目錄下,并作軟鏈接如下:
- cp lib*so* /usr/lib/
- ln -s /usr/lib/libcrypto.so.0.9.7a /usr/lib/libcrypto.so.4
- ln -s /usr/lib/libssl.so.0.9.7a /usr/lib/libssl.so.4
設定lib庫配置文件
- #vi /etc/ld.so.conf
- #增加一條
- /usr/lib/
- #保存退出后,執(zhí)行
- #ldconfig
- fetion的目錄結構:
- .\Readme.txt: 本說明文件
- .\fetion:主程序
- .\sound\*.wav:各種音效文件,您可以用自己喜歡的文件替換
- .\plugins\plugin_*: 插件程序,您可以修改插件以達到自己的各性化需求
完成之后測試,安裝是否成功;執(zhí)行
- #cd install
- # ./fetion -h
- Usage:
- fetion -h
- -h: help
- fetion -u mobile -p pwd [-b batchfile] [-EN] [-d]
- fetion -u mobile -p pwd [-b batchfile] [-EN] [-d]
- -u: Fetion user account(only supports mobile phone No.)
- -p: Account password
- -b: Batch file name
- -d: Debug and write logs to [mobile]-debug.log
- -EN: English
3、實際測試
測試帳號:13888888888
密碼:123456 (如果密碼中含有特殊字符,請使用單引號)
如果發(fā)送成功。那么飛信安裝過程就OK了
4、飛信組合nagios
Fetion以后臺方式啟動:nohup /usr/local/nagios/libexec/sms/fetion -u 13888888888 -p 123456 >/dev/null 2>1 &
寫一個perl腳本(本腳本由gzmaster小弟提供)
- Sms.pl (/../nagios/libexec/sms/sms.pl)
- #!/usr/bin/perl -w
- use strict;
- use Data::Dumper;
- use LWP::UserAgent;
- my $mesg = shift;
- $mesg =~ s/\//|/g;
- my @number = (接收手機號,接收手機號);
- foreach my $number ( @number ) {
- #print “send sms to $number \n”;
- my $send_sms_url = “http://localhost:40000/API/buddy/sms/” . $number . “/” . $mesg . ‘?rand=0.7394060082921254′;
- my $request = HTTP::Request->new(GET => $send_sms_url);
- my $ua = LWP::UserAgent->new;
- $ua->timeout( 5 );
- $ua->agent(“Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR 1.1.4322; Maxthon 2.0)”);
- my $response = $ua->request($request);
- my $content = $response->content();
- }
修改相應的配置文件
修改用戶及組:contacts.cfg
添加:
- define contact{
- contact_name sms-members
- use sms-mail-contact
- alias Nagios Admin SMS
- pager 138888888888
- }
- define contactgroup{
- contactgroup_name admins-and-lijs
- alias Nagios Administrators
- members sms-members
- }
修改報警選項:templates.cfg
- define contact{
- name generic-contact
- service_notification_period 24×7
- host_notification_period 24×7
- service_notification_options w,u,c,r,f,s
- host_notification_options d,u,r,f,s
- service_notification_commands notify-service-by-email; service-notify-by-sms
- host_notification_commands notify-host-by-email
- register 0
- }
- define contact{
- name sms-mail-contact
- service_notification_period 24×7
- host_notification_period 24×7
- service_notification_options w,u,c,r,f,s
- host_notification_options d,u,r,f,s
- service_notification_commands service-notify-by-sms
- host_notification_commands notify-host-by-email
- register 0
- }
修改調(diào)用腳本:commands.cfg
- #host-notify-by-sms
- define command {
- command_name host-notify-by-sms
- command_line /usr/bin/printf “%b” “***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nHost: $HOSTNAME$\nState:
- $HOSTSTATE$\nWAN_IP: $HOSTALIAS$\nLAN_IP: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n” | /usr/local/nagios/lib
- exec/sms.pl 710880931 “** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **” $CONTACTEMAIL$
- }
- #service notify by sms
- define command {
- command_name service-notify-by-sms
- command_line /usr/local/nagios/libexec/sms/sms.pl ‘** $NOTIFICATIONTYPE$ alert – $HOSTNAME$ $SERVICEDESC$ is $SERVICESTA
- TE$ info: $SERVICEOUTPUT$’
- }
測試下nagios情況。然后再測試報警。Nagios飛信配置就OK了。
【編輯推薦】