Linux下Nagios安裝配置攻略

一、安裝nagios
#useradd -s /bin/false nagios
#tar zxvf nagios-2.9.tar.gz
#cd nagios-2.9
#./configure –prefix=/usr/local/nagios –with-gd-lib=/usr/local/lib –with-gd-inc=/usr/local/include
#make all                     //編譯nagios
#make install                 //安裝主要的程序,CGI及HTML文件
#make install-init            //在/etc/rc.d/init.d安裝啓動腳本
#make install-commandmode     //給外部命令訪問nagios配置文件的權限
#make install-config          //將配置文件的例子複製到nagios的安裝目錄
#cd /usr/local
#chown -R nagios
二、安裝nagios-plugins
#tar zxvf nagios-plugins-1.4.9.tar.gz
#cd nagios-plugins-1.4.9
#./configure –prefix=/usr/local/nagios/
#make
#make install
#ls /usr/local/nagios/libexec/ //顯示安裝的插件文件
三、安裝p_w_picpathpak-base
#tar -xvzf p_w_picpathpak-base.tar.gz //解壓之後是base目錄
#cp -R base /usr/local/nagios/share/p_w_picpaths/logos
四、安裝apache
還需安裝一下軟件,安裝過程略。
gd  //http://www.boutell.com/gd/http/gd-2.0.11.tar.gz
zlib  //http://www.gzip.org/zlib/zlib-1.1.4.tar.gz
pnglib  //http://download.sourceforge.net/libpng/libpng-1.2.5.tar.gz
jpeglib  //http://www.ijg.org/files/jpegsrc.v6b.tar.gz
五、修改apache配置
Apache 的目的是能夠在WEB上更加人性化的查看監控結果,其餘的WEB服務器也能夠。
grep ^User /usr/local/apache2/conf/httpd.conf
User daemon
usermod -G nagios daemon
此處替換成本身的。好比個人機器上是apache
usermod -G nagios apache 把apache和nagios 都放到nagios 組中。
vi /usr/local/apache2/conf/httpd.conf   //在下面加入以下內容
#Setting for nagios
ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin
<Directory 「/usr/local/nagios/sbin」>
    Options ExecCGI
    AllowOverride None
    Order allow,deny
    Allow from all
    AuthName 「Nagios Access」
    AuthType Basic
    AuthUserFile /usr/local/nagios/etc/htpasswd
    Require valid-user
</Directory>
Alias /nagios /usr/local/nagios/share
<Directory 「/usr/local/nagios/share」>
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
    AuthName 「Nagios Access」
    AuthType Basic
    AuthUserFile /usr/local/nagios/etc/htpasswd
    Require valid-user
</Directory>
/usr/local/apache2/bin/apachectl -t      //檢查配置文件是否正確
httpd -t
/usr/local/apache2/bin/htpasswd -c /usr/local/nagios/etc/htpasswd ritto
cat /usr/local/nagios/etc/htpasswd       //查看認證文件內容
/usr/local/apache2/bin/apachectl start   //啓動apache
service httpd restart
六、配置nagios
nagios自定義了一套規則用於配置文件,在nagios裏面定義了一些基本對象,如:
聯繫人       contact         出了問題像誰報告?通常固然是系統管理員了
監控時間段   timeperiod      7X24小時不間斷仍是週一至週五,或是自定義的其餘時間段
被監控主機   host            所須要監控的服務器,固然能夠是監控機本身
監控命令     command nagios  發出的哪一個指令來執行某個監控,這也是本身定義的
被監控的服務 service         例如主機是否存活,80是否開,磁盤使用狀況或自定義的服務等
多個被監控主機能夠定義爲一個主機組
多個聯繫人能夠被定義爲一個聯繫人組
多個服務也能夠被定義爲一個服務組
將配置文件更名:
cd /usr/local/nagios/etc/
tar zcvf bak.tar.gz *
mv cgi.cfg-sample cgi.cfg
mv commands.cfg-sample commands.cfg
mv localhost.cfg-sample localhost.cfg
mv nagios.cfg-sample nagios.cfg
mv resource.cfg-sample resource.cfg
修改nagios的配置文件
vi nagios.cfg                                     //修改nagios的主配置文件
#cfg_file=/usr/local/nagios//etc/localhost.cfg    //註釋此行
//將下面幾行的註釋去掉
cfg_file=/usr/local/nagios/etc/contactgroups.cfg  //聯繫組配置文件路徑
cfg_file=/usr/local/nagios/etc/contacts.cfg       //聯繫人配置文件路徑
cfg_file=/usr/local/nagios/etc/hostgroups.cfg     //主機組配置文件路徑
cfg_file=/usr/local/nagios/etc/hosts.cfg          //主機配置文件路徑
cfg_file=/usr/local/nagios/etc/services.cfg       //服務配置文件路徑
cfg_file=/usr/local/nagios/etc/timeperiods.cfg    //監視時段配置文件路徑
check_external_commands=0     //將 0 改爲 1,容許在web界面下執行重啓nagios
command_check_interval=15s    //改爲 10s,命令檢查時間間隔
配置相關CGI腳本
vi cgi.cfg                         //修改cgi腳本控制文件
use_authentication=1               //確保值爲 1
default_user_name=ritto            //修改成認證用戶
//後面修改內容以下:
authorized_for_system_information=nagiosadmin,test
authorized_for_configuration_information=nagiosadmin,test
authorized_for_system_commands=test
authorized_for_all_services=nagiosadmin,test
authorized_for_all_hosts=nagiosadmin,test
authorized_for_all_service_commands=nagiosadmin,test
authorized_for_all_host_commands=nagiosadmin,test
關於全部命令的配置都在commands.cfg裏面
vi misccommands.cfg         //主要功能是用於發送報警短信和報警郵件
#host-notify-by-sms         //發送短信報警
define command {
       command_name      host-notify-by-sms
       command_line      /usr/local/bin/sms_send 「Host $HOSTSTATE$ alert for $HOSTNAME$! on ‘$DATETIME$’ 」 $CONTACTPAGER$
       }
#service notify by sms      //發送短信報警
define command {
       command_name     service-notify-by-sms
       command_line     /usr/local/bin/sms_send 「‘$HOSTADDRESS$’ $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$」 $CONTACTPAGER$
       }
vi timeperiods.cfg          //定義監控時間段,名稱是24*7,監控時間是全天24小時
define timeperiod{
        timeperiod_name         24×7     //時間段的名稱,這個地方不要有空格
        alias                   24 Hours A Day,7Days A Week
        sunday                  00:00-24:00
        monday                  00:00-24:00
        tuesday                 00:00-24:00
        wednesday               00:00-24:00
        thursday                00:00-24:00
        friday                  00:00-24:00
        saturday                00:00-24:00
        }
vi contacts.cfg     //定義聯繫人
define contact {
        contact_name         sa          //不要有空格
        alias                system administrator
        service_notification_period    24×7
        host_notification_period       24×7
        service_notification_options   w,u,c,r
        host_notification_options       d,u,r
        service_notification_commands  service-notify-by-sms,service-notify-by-email //命令讀配置miscommands.cfg
        host_notification_commands     host-notify-by-email,host-notify-by-sms  //命令讀配置miscommands.cfg
        email                          [email]test@nagios.org[/email]
        pager                          13800138000
        }
 
define contact {
        contact_name         nagios
        alias                system administrator
        service_notification_period    24×7
        host_notification_period       24×7
        service_notification_options   w,u,c,r
        host_notification_options       d,u,r
        service_notification_commands  service-notify-by-sms,service-notify-by-email
        host_notification_commands     host-notify-by-email,host-notify-by-sms
        email                          [email]test@nagios.org[/email]
        pager                          13800138000
        }
//若是不須要手機報警的話,則改爲以下:
service_notification_commands   notify-by-email
host_notification_commands      host-notify-by-email
//上面的文件定義了2個聯繫人,若是有更多聯繫人的話,照這個格式在後面追加便可。
//服務通知選項(service_notification_options)
//與主機通知選項(host_notification_options)的幾個選項在這裏說明一下:
//w-warning 報警,u-unknown 未知,c-critical 嚴重,r-recovery 從異常狀況恢復正常,d-down 關機了,u-unreachable 不可達,注意一下,主機報警和服務報警有些差別。
vi contactgroups.cfg       //將多個聯繫人定義一個聯繫人組
define contactgroup{
        contactgroup_name       sagroup
        alias                   System Administrators
        members                 nagios,sa
        }
vi hosts.cfg              //定義被監控主機
define host {
       host_name                  nagios-server
       alias                      nagios server
       address                    192.168.0.1
       contact_groups             sagroup              //多個聯繫組用逗號分隔,數據來源於contactgroups.cfg
       check_command              check-host-alive     //這個命令來自commands.cfg,用來監控主機是否存活
       max_check_attempts         5                    //檢查失敗後重試的次數
       notification_interval      10                   //提醒的時間,每隔10秒提醒一次
       notification_period        24×7                 //提醒的週期,24*7,來自以前timeperiods.cfg中定義的
       notification_options       d,u,r                //指定什麼狀況下提醒,來自contacts.cfg中定義的
       }
define host {
       host_name                  linux-server
       alias                      nagios test client
       address                    192.168.0.2
       contact_groups             sagroup
       check_command              check-host-alive
       max_check_attempts         5
       notification_interval      10
       notification_period        24×7
       notification_options       d,u,r
       }
vi hostgroups.cfg          //將多個主機定義一個主機組
define hostgroup{
        hostgroup_name          sa-servers //主機組名稱
        alias                   sa Servers //別名
        members                 nagios-server,linux-server //組的成員主機,多個主機以逗號相隔,必須是上面hosts.cfg中定義的
        }
vi services.cfg           //定義監控的服務
define service{
        host_name               nagios-server        //要監控的主機,必須是hosts.cfg 中定義的
        service_description     check-host-alive     //定義的是監控這個主機是否是存活
        check_command           check-host-alive     //所用的命令,是commands.cfg中定義的
        check_period            24×7        //監控的時間段,是timeperiods.cfg中定義的
        max_check_attempts      5
        normal_check_interval   3
        retry_check_interval    2
        contact_groups          sagroup     //聯繫人組,contactgroups.cfg中定義的
        notification_interval   10
        notification_period     24×7        //通知的時間段,是timeperiods.cfg中定義的
        notification_options    w,u,c,r     //在監控的結果是wucr時通知聯繫人
        }
define service {
        host_name               linux-server
        service_description     check_tcp 80
        check_period            24×7
        max_check_attempts      4
        normal_check_interval   3
        retry_check_interval    2
        contact_groups          sagroup
        notification_interval   10
        notification_period     24×7
        notification_options    w,u,c,r
        check_command           check_tcp!80      //檢查tcp 80端口服務是否正常
        }
//書寫時要注意的是,check_tcp與要監控的服務端口之間要用」!」作分隔符,若是服務太多,以考慮用腳原本生成。
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg   //檢查全部配置文件的正確性,確保這一部的warning 和 error 爲0
/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg   //做爲守護進程後臺啓動nagios
echo 「/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg」 >> /etc/rc.local    //開機自動運行
使用命令和插件監控更多信息
/usr/local/nagios/libexec        //插件默認的安裝路徑
./check_disk -w 10% -c 5% /      //檢查根分區的使用狀況,若剩餘10%如下,爲警告狀態(warning),若剩餘 5%如下,爲嚴重狀態(critical)
七、使用NRPE監控Linux上的本地信息
對系統爲Linux的主機進行以下監控:CPU負載,磁盤容量,登錄用戶數,總進程數,殭屍進程數,swap分區使用狀況。
#useradd nagios
#passwd nagios
#tar zxvf nagios-plugins-1.4.9.tar.gz
#cd nagios-plugins-1.4.9
#./configure –prefix=/usr/local/nagios
#make
#make install
#chown nagios.nagios /usr/local/nagios
#chown -R nagios.nagios /usr/local/nagios/libexec/
#tar zxvf nrpe-2.8.1.tar.gz
#cd nrpe-2.8.1
#./configure  //NRPE port: 5666
#make all
#make install-plugin //監控機須要安裝check_nrpe這個插件,被監控機並不須要
#make install-daemon              //安裝daemon
#make install-daemon-config       //安裝配置文件
#/usr/local/nagios/bin/nrpe -c -n /etc/nrpe.cfg -d
將NRPE daemon做爲xinetd下的一個服務運行
yum -y install xinetd
service xinetd start
chkconfig –level 3 xinetd on
make install-xinetd          //安裝xinetd腳本
vi /etc/xinetd.d/nrpe
only_from = 127.0.0.1 192.168.4.226   //在後面增長監控主機的地址,以空格間隔
增長nrpe服務
vi /etc/services
nrpe 5666/tcp #nrpe  //增長這一行
重啓xinetd服務
service xinetd restart
netstat -at | grep nrpe     //查看NRPE是否已經啓動
netstat -an | grep 5666     //查看5666端口是否被監聽
vi /etc/sysconfig/iptables //增長一條5666的端口
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 5666 -j ACCEPT
在被監控機器上測試一下NRPE是否正常工做
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 //測試NRPE是否正常工做
NRPE v2.8.1 //正常的結果會顯示當前NRPE的版本號
/usr/local/nagios/libexec/check_nrpe –h //查看這個命令的用法
能夠看到用法是check_nrpe –H 被監控的主機 -c 要執行的監控命令
注意:-c後面接的監控命令必須是nrpe.cfg文件中定義的,也就是NRPE daemon只運行nrpe.cfg中所定義的命令。
查看NRPE的監控命令
cd /usr/local/nagios/etc
vi nrpe.cfg
command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/hda1
command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200
[]中是命令名,也就是check_nrpe的-c參數能夠接的內容,=後面是實際執行的插件程序。
好比,我如今要監控硬盤的狀況,加入如下內容:
command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/sda1
command[check_hda3]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/sda3
因此以上nrpe.cfg配置的命令用法以下:
# check_nrpe -H 127.0.0.1 -c check_hda1
DISK OK - free space: /boot 77 MB (82% inode=99%);| /boot=16MB;78;88;0;98
# check_nrpe -H 127.0.0.1 -c check_hda3
DISK OK - free space: / 134960 MB (97% inode=99%);| /=3322MB;145789;145799;0;145809
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_users        //檢測登錄用戶數
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_load         //CPU負載
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_zombie_procs //殭屍進程
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_total_procs  //總進程數
//check_load -w 15,10,5 -c 30,25,20
//在unix裏面負載的均值一般表示是1分鐘,5分鐘,15分鐘內平均有多少進程處於等待狀態
//當1分鐘多於15個進程等待,5分鐘多於10個,15分鐘多於5個則爲warning狀態
//當1分鐘多於30個進程等待,5分鐘多於25個,15分鐘多於20個則爲critical狀態
在commands.cfg中增長對check_nrpe的定義
vi /usr/local/nagios/etc/commands.cfg
# ‘check_nrpe’ command definition
define command{
        command_name check_nrpe
        command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
        }
//command_name check_nrpe 定義命令名稱爲check_nrpe,在services.cfg中要使用這個名稱
//command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ 定義實際運行的插件程序
接下來能夠在services.cfg中定義對主機CPU負載的監控,注意機器必須是LINUX系統,而且安裝了NRPE。
vi services.cfg
define service {
        host_name               linux-server
        service_description     check-load
        check_period            24×7
        max_check_attempts      4
        normal_check_interval   3
        retry_check_interval    2
        contact_groups          sagroup
        notification_interval   10
        notification_period     24×7
        notification_options    w,u,c,r
        check_command           check_nrpe!check_load
        }
在被監控機上增長check_swap命令的定義
vi /usr/local/nagios/etc/nrpe.cfg
增長下面這一行
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%
//若是在被監控機上是以daemon運行的nrpe,則須要手動重啓
//若是在被監控機上是以xinetd運行的,則不須要
在監控機上增長這個監控項目:
vi /etc/services.cfg
define service {
        host_name               linux-server
        service_description     check-swap
        check_period            24×7
        max_check_attempts      4
        normal_check_interval   3
        retry_check_interval    2
        contact_groups          sagroup
        notification_interval   10
        notification_period     24×7
        notification_options    w,u,c,r
        check_command           check_nrpe!check_swap
        }
重啓nagios服務
killall nagios
/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
八、Windows服務器客戶端安裝步驟
A. 從 [url]http://sourceforge.net/projects/nrpent/[/url]下載nrpe_nt.0.8b-bin-NoSSL.zip,解壓
B. 從 [url]http://www.nagiosexchange.org/cgi-bin/page.cgi?g=Detailed%2F2131.html;d=1[/url]下載nrpe_nt_plugins.zip,並放於C:\nrpe_nt\plugins\目錄
C. 解壓後,,行NRPE_NT.exe -i -n 安裝服務
D. 編輯nrpe.cfg,大概內容以下:
server_port=5666
allowed_hosts=192.168.0.2
dont_blame_nrpe=0
debug=1
command_timeout=30
loglevel=4
use_win_metachars=1
command[check_cmd]=e:\NRPE_NT\test.cmd
command[nt_check_disk_c]=C:\nrpe_nt\plugins\diskspace_nrpe_nt.exe c: 70 90
command[nt_check_disk_d]=C:\nrpe_nt\plugins\diskspace_nrpe_nt.exe d: 70 90
command[nt_check_disk_e]=C:\nrpe_nt\plugins\diskspace_nrpe_nt.exe e: 70 90
command[nt_cpuload]=C:\nrpe_nt\plugins\cpuload_nrpe_nt.exe 50 80
command[nt_memload]=C:\nrpe_nt\plugins\memload_nrpe_nt.exe 70 90
command[nt_service]=C:\nrpe_nt\plugins\service_nrpe_nt.exe 「Event Log,DNS Client」
command[nt_eventlog]=C:\nrpe_nt\plugins\eventlog_nrpe_nt.exe -m 7200 -s 「Service Control Manager」
E. 找相關目錄裏面啓動服務便可,若是有防火牆要開放5666端口
九、nagios裏點3-D Status Map時提示打開statuswrl.cgi的解決辦法
根據nagios的官方網站的faq裏的說法,若是要看3-D statusmap CGI (statuswrl.cgi)的輸出的話,得爲你的web瀏覽器安裝vrml的client(客戶端)或plugin(插件)。
nagios官方推薦插件:
Cortona (Parallel Graphics)
Cosmo Player (Computer Associates and NIST)
FreeWRL和OpenVRML
十、參考學習地址
[url]http://sery.blog.51cto.com/10037/20520[/url]
[url]http://yahoon.blog.51cto.com/13184/41778[/url]
附:nagios經過飛信短信報警配置
前言:
一、nagios是一個很是好的系統監控工具,如今個人nagios系統已經正常運行,使用短信貓和郵件能夠報警,使用飛信能夠節約咱們的短信貓和短信費用。
二、飛信首先手機要開通中國移動的飛信業務,目前使用飛信發送短信是免費的,須要把接受短信的手機和飛信發送手機加爲好友。
三、下載飛信的Linux客戶端程序,解開包後只有一個文件sms。不錯,這個就是飛信發送短信的程序。如今的飛信仍是不能用的,由於它須要libace的glibc庫的支持。
飛信Linux程序下載:
一、飛信官方網站: [url]http://www.it-adv.net/[/url]
二、飛信官方命令下載: [url]http://www.it-adv.net/fetion/fetion_linux_20080402.tar.gz[/url]
三、飛信官方lib庫下載:
32位官方lib庫: [url]http://www.it-adv.net/fetion/library32.rar[/url]
64位官方lib庫: [url]http://www.it-adv.net/fetion/library64_linux.tar.gz[/url]
飛信程序測試:
一、飛信命令測試:
# wget [url]http://www.it-adv.net/fetion/fetion_linux_20080402.tar.gz[/url]
# 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的下載版本:
一、先檢查一下缺乏的lib文件
[root@nagios libexec]# ldd sms
        linux-gate.so.1 =>  (0×00b00000)
        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 (0×02a05000)
        libm.so.6 => /lib/libm.so.6 (0×00cd4000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0×029f7000)
        libc.so.6 => /lib/libc.so.6 (0×00b92000)
        /lib/ld-linux.so.2 (0×001c3000)
二、下載lib庫
32位官方lib庫: [url]http://www.it-adv.net/fetion/library32.rar[/url]
64位官方lib庫: [url]http://www.it-adv.net/fetion/library64_linux.tar.gz[/url]
三、安裝lib庫
# ls
libACE.so.5.4.7  libACE_SSL.so.5.4.7  libcrypto.so.0.9.8  libssl.so.0.9.8
# cp *.* /lib/
# cp *.* /usr/lib/
四、測試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/[/url]
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飛信測試
一、須要註冊一個可使用飛信的手機號碼,測試期間能夠本身發送給本身作測試。
二、給別的手機發飛信,須要給把手機綁定爲好友。
三、飛信環境解決了,發短信測試一下(136933XXXXX爲發飛信的註冊手機號碼,136833XXXXX、36733XXXXX爲接收飛信短信的手機號碼)。
# ./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的配置
一、nagios命令配置commands.cfg:
# vi /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$
}
二、nagios聯繫人配置contacts.cfg:
# vi /usr/local/nagios/etc/contacts.cfg
define contact{
        contact_name                    sa
        alias                           system admin
        host_notification_period        24×7
        service_notification_period     24×7
        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]test@nagios.org[/email]         pager                           13800138000         }
相關文章
相關標籤/搜索