UJP - 技術情報1

Life is fun and easy!

不正IP報告数

Okan Sensor
 
メイン
ログイン
ブログ カテゴリ一覧

nagios install on RedHat ES3.0

nagios install on RedHat ES3.0


0.改訂履歴

  • 2005.08.29 新規作成
  • 2005.09.13 webインタフェイス部分の設定追加.
  • 2007.10.11 Pluginについて追記.

1.はじめに

  このドキュメントではサーバシステム監視ツールでnagiosのインストールある手順を説明する.

 nagiosとは,オープンソースのホスト,サービス,ネットワークのモニタリングツールで,商用製品ではhpのOpenView,IBMのTivoli,日立のJP1/cm2等が同様のカテゴリになる.同じオープンソースではOpenNMSというJavaベースのものがある. Nagiosは昔,NetSaintという名称で配布されていたようですが,名前が変更になっているようである.  今回インストールに際してNet::SNMPとそれに伴うDigest::Base,Crypt::DES,Digest::HMAC.Digest::SHA1等のPerl用モジュールの追加と,fpingの導入も行っている.

2.nagiosモジュールを入手してインストールする

  • 下記,公式サイトがある.
  • このサイトか,今回はRedHatのRPM版を利用する.
[shinnai@jupiter nagios]$ wget http://dag.wieers.com/packages/nagios/nagios-1.2-
2.1.el3.rf.i386.rpm
--14:26:55--  http://dag.wieers.com/packages/nagios/nagios-1.2-2.1.el3.rf.i386.rpm
           => `nagios-1.2-2.1.el3.rf.i386.rpm'
Resolving dag.wieers.com... 217.22.63.77
Connecting to dag.wieers.com[217.22.63.77]:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://apt.sw.be/packages/nagios/nagios-1.2-2.1.el3.rf.i386.rpm [following]
--14:26:56--  http://apt.sw.be/packages/nagios/nagios-1.2-2.1.el3.rf.i386.rpm
           => `nagios-1.2-2.1.el3.rf.i386.rpm'
Resolving apt.sw.be... 193.1.193.67
Connecting to apt.sw.be[193.1.193.67]:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2,251,161 [application/x-redhat-package-manager]

100%[============================================================================
==========>] 2,251,161    228.86K/s    ETA 00:00

14:27:07 (211.72 KB/s) - `nagios-1.2-2.1.el3.rf.i386.rpm' saved [2,251,161/2,251,161]

[shinnai@jupiter nagios]$
  • ダウンロードされたファイルを確認する.
[shinnai@jupiter nagios]$ ls -la
total 2212
drwxrwxr-x    2 shinnai  shinnai      4096 Aug 29 14:26 .
drwx------    6 shinnai  shinnai      4096 Aug 29 14:26 ..
-rw-rw-r--    1 shinnai  shinnai   2251161 Apr 11 02:30 nagios-1.2-2.1.el3.rf.i386.rpm
[shinnai@jupiter nagios]$  
  • インストールを行う.
[root@mars nagios]# rpm -ihv nagios-1.2-2.1.el3.rf.i386.rpm 
warning: nagios-1.2-2.1.el3.rf.i386.rpm: V3 DSA signature: NOKEY, key ID 6b8d7
9e6
Preparing...                ########################################### [100%]
   1:nagios                 ########################################### [100%]
[root@mars nagios]# 
  • パッケージの内容を確認する.
[shinnai@jupiter nagios]# rpm -ql nagios-1.2-2.1.el3.rf.i386
/etc/httpd/conf.d/nagios.conf
/etc/nagios
/etc/nagios/cgi.cfg
/etc/nagios/checkcommands.cfg
/etc/nagios/contactgroups.cfg
/etc/nagios/contacts.cfg
/etc/nagios/dependencies.cfg
/etc/nagios/escalations.cfg
/etc/nagios/hostgroups.cfg
/etc/nagios/hosts.cfg
/etc/nagios/minimal.cfg
/etc/nagios/misccommands.cfg
/etc/nagios/nagios.cfg
/etc/nagios/private
/etc/nagios/private/resource.cfg
/etc/nagios/services.cfg
/etc/nagios/timeperiods.cfg
/etc/rc.d/init.d/nagios
/usr/bin/mini_epn
/usr/bin/nagios
/usr/bin/p1.pl
/usr/lib/nagios
/usr/lib/nagios/cgi
/usr/lib/nagios/cgi/avail.cgi
/usr/lib/nagios/cgi/cmd.cgi
/usr/lib/nagios/cgi/config.cgi
/usr/lib/nagios/cgi/daemonchk.cgi
/usr/lib/nagios/cgi/extinfo.cgi
/usr/lib/nagios/cgi/histogram.cgi
/usr/lib/nagios/cgi/history.cgi
/usr/lib/nagios/cgi/notifications.cgi
/usr/lib/nagios/cgi/outages.cgi
/usr/lib/nagios/cgi/showlog.cgi
/usr/lib/nagios/cgi/status.cgi
/usr/lib/nagios/cgi/statusmap.cgi
/usr/lib/nagios/cgi/statuswml.cgi
/usr/lib/nagios/cgi/statuswrl.cgi
/usr/lib/nagios/cgi/summary.cgi
/usr/lib/nagios/cgi/tac.cgi
/usr/lib/nagios/cgi/traceroute.cgi
/usr/lib/nagios/cgi/trends.cgi
/usr/lib/nagios/convertcfg
/usr/lib/nagios/plugins
/usr/lib/nagios/plugins/eventhandlers
/usr/lib/nagios/plugins/eventhandlers/disable_active_service_checks
/usr/lib/nagios/plugins/eventhandlers/disable_notifications
/usr/lib/nagios/plugins/eventhandlers/distributed-monitoring
/usr/lib/nagios/plugins/eventhandlers/distributed-monitoring/obsessive_svc_
handler
/usr/lib/nagios/plugins/eventhandlers/distributed-monitoring/submit_check_res
ult_via_nsca
/usr/lib/nagios/plugins/eventhandlers/enable_active_service_checks
/usr/lib/nagios/plugins/eventhandlers/enable_notifications
/usr/lib/nagios/plugins/eventhandlers/redundancy-scenario1
/usr/lib/nagios/plugins/eventhandlers/redundancy-scenario1/handle-master-host-
event
/usr/lib/nagios/plugins/eventhandlers/redundancy-scenario1/handle-master-proc-
event
/usr/lib/nagios/plugins/eventhandlers/submit_check_result
/usr/share/doc/nagios-1.2
/usr/share/doc/nagios-1.2/Changelog
/usr/share/doc/nagios-1.2/INSTALLING
/usr/share/doc/nagios-1.2/LICENSE
/usr/share/doc/nagios-1.2/README
/usr/share/doc/nagios-1.2/UPGRADING
/usr/share/doc/nagios-1.2/nagios.logrotate
/usr/share/nagios
/usr/share/nagios/contexthelp
/usr/share/nagios/contexthelp/A1.html
/usr/share/nagios/contexthelp/A2.html
/usr/share/nagios/contexthelp/A3.html
/usr/share/nagios/contexthelp/A4.html
/usr/share/nagios/contexthelp/A5.html
/usr/share/nagios/contexthelp/A6.html
/usr/share/nagios/contexthelp/A7.html
/usr/share/nagios/contexthelp/B1.html
/usr/share/nagios/contexthelp/C1.html
/usr/share/nagios/contexthelp/D1.html
/usr/share/nagios/contexthelp/E1.html
/usr/share/nagios/contexthelp/F1.html
/usr/share/nagios/contexthelp/G1.html
/usr/share/nagios/contexthelp/G2.html
/usr/share/nagios/contexthelp/G3.html
/usr/share/nagios/contexthelp/G4.html
/usr/share/nagios/contexthelp/G5.html
/usr/share/nagios/contexthelp/G6.html
/usr/share/nagios/contexthelp/H1.html
/usr/share/nagios/contexthelp/H2.html
/usr/share/nagios/contexthelp/H3.html
/usr/share/nagios/contexthelp/H4.html
/usr/share/nagios/contexthelp/H5.html
/usr/share/nagios/contexthelp/H6.html
/usr/share/nagios/contexthelp/H7.html
/usr/share/nagios/contexthelp/H8.html
/usr/share/nagios/contexthelp/I1.html
/usr/share/nagios/contexthelp/I2.html
/usr/share/nagios/contexthelp/I3.html
/usr/share/nagios/contexthelp/I4.html
/usr/share/nagios/contexthelp/I5.html
/usr/share/nagios/contexthelp/I6.html
/usr/share/nagios/contexthelp/I7.html
/usr/share/nagios/contexthelp/I8.html
/usr/share/nagios/contexthelp/J1.html
/usr/share/nagios/contexthelp/K1.html
/usr/share/nagios/contexthelp/L1.html
/usr/share/nagios/contexthelp/L10.html
/usr/share/nagios/contexthelp/L11.html
/usr/share/nagios/contexthelp/L12.html
/usr/share/nagios/contexthelp/L13.html
/usr/share/nagios/contexthelp/L2.html
/usr/share/nagios/contexthelp/L3.html
/usr/share/nagios/contexthelp/L4.html
/usr/share/nagios/contexthelp/L5.html
/usr/share/nagios/contexthelp/L6.html
/usr/share/nagios/contexthelp/L7.html
/usr/share/nagios/contexthelp/L8.html
/usr/share/nagios/contexthelp/L9.html
/usr/share/nagios/contexthelp/M1.html
/usr/share/nagios/contexthelp/M2.html
/usr/share/nagios/contexthelp/M3.html
/usr/share/nagios/contexthelp/M4.html
/usr/share/nagios/contexthelp/M5.html
/usr/share/nagios/contexthelp/M6.html
/usr/share/nagios/contexthelp/N1.html
/usr/share/nagios/contexthelp/N2.html
/usr/share/nagios/contexthelp/N3.html
/usr/share/nagios/contexthelp/N4.html
/usr/share/nagios/contexthelp/N5.html
/usr/share/nagios/contexthelp/N6.html
/usr/share/nagios/contexthelp/N7.html
/usr/share/nagios/docs
/usr/share/nagios/docs/about.html
/usr/share/nagios/docs/addons.html
/usr/share/nagios/docs/beginners.html
/usr/share/nagios/docs/cgiauth.html
/usr/share/nagios/docs/cgiincludes.html
/usr/share/nagios/docs/cgis.html
/usr/share/nagios/docs/checkscheduling.html
/usr/share/nagios/docs/clusters.html
/usr/share/nagios/docs/commandfile.html
/usr/share/nagios/docs/config.html
/usr/share/nagios/docs/configcgi.html
/usr/share/nagios/docs/configextinfo.html
/usr/share/nagios/docs/configmain.html
/usr/share/nagios/docs/configobject.html
/usr/share/nagios/docs/dependencies.html
/usr/share/nagios/docs/distributed.html
/usr/share/nagios/docs/downtime.html
/usr/share/nagios/docs/embeddedperl.html
/usr/share/nagios/docs/escalations.html
/usr/share/nagios/docs/eventhandlers.html
/usr/share/nagios/docs/extcommands.html
/usr/share/nagios/docs/faqs.html
/usr/share/nagios/docs/flapping.html
/usr/share/nagios/docs/freshness.html
/usr/share/nagios/docs/funstuff.html
/usr/share/nagios/docs/images
/usr/share/nagios/docs/images/activepassive.png
/usr/share/nagios/docs/images/cgi-avail-a.png
/usr/share/nagios/docs/images/cgi-avail-b.png
/usr/share/nagios/docs/images/cgi-cmd.png
/usr/share/nagios/docs/images/cgi-config.png
/usr/share/nagios/docs/images/cgi-extinfo-a.png
/usr/share/nagios/docs/images/cgi-extinfo-b.png
/usr/share/nagios/docs/images/cgi-extinfo-c.png
/usr/share/nagios/docs/images/cgi-extinfo-d.png
/usr/share/nagios/docs/images/cgi-histogram.png
/usr/share/nagios/docs/images/cgi-history.png
/usr/share/nagios/docs/images/cgi-notifications.png
/usr/share/nagios/docs/images/cgi-outages.png
/usr/share/nagios/docs/images/cgi-showlog.png
/usr/share/nagios/docs/images/cgi-status-a.png
/usr/share/nagios/docs/images/cgi-status-b.png
/usr/share/nagios/docs/images/cgi-status-c.png
/usr/share/nagios/docs/images/cgi-status-d.png
/usr/share/nagios/docs/images/cgi-statusmap.png
/usr/share/nagios/docs/images/cgi-statuswml.png
/usr/share/nagios/docs/images/cgi-statuswrl.png
/usr/share/nagios/docs/images/cgi-summary.png
/usr/share/nagios/docs/images/cgi-tac.png
/usr/share/nagios/docs/images/cgi-trends.png
/usr/share/nagios/docs/images/checktiming.png
/usr/share/nagios/docs/images/distributed.png
/usr/share/nagios/docs/images/host-dependencies.png
/usr/share/nagios/docs/images/indirecthostcheck.png
/usr/share/nagios/docs/images/indirectsvccheck.png
/usr/share/nagios/docs/images/indirectsvccheck2.png
/usr/share/nagios/docs/images/interleaved1.png
/usr/share/nagios/docs/images/interleaved2.png
/usr/share/nagios/docs/images/interleaved3.png
/usr/share/nagios/docs/images/logofullsize.png
/usr/share/nagios/docs/images/network-heirarchy.png
/usr/share/nagios/docs/images/network-outage1.png
/usr/share/nagios/docs/images/network-outage2.png
/usr/share/nagios/docs/images/noninterleaved1.png
/usr/share/nagios/docs/images/noninterleaved2.png
/usr/share/nagios/docs/images/physical-network.png
/usr/share/nagios/docs/images/plugintheory.png
/usr/share/nagios/docs/images/redudancy.png
/usr/share/nagios/docs/images/redundancy.png
/usr/share/nagios/docs/images/service-dependencies.png
/usr/share/nagios/docs/images/statetransitions.png
/usr/share/nagios/docs/images/statetransitions2.png
/usr/share/nagios/docs/index.html
/usr/share/nagios/docs/indirectchecks.html
/usr/share/nagios/docs/installing.html
/usr/share/nagios/docs/installweb.html
/usr/share/nagios/docs/int-portsentry.html
/usr/share/nagios/docs/int-snmptrap.html
/usr/share/nagios/docs/int-tcpwrappers.html
/usr/share/nagios/docs/macros.html
/usr/share/nagios/docs/networkoutages.html
/usr/share/nagios/docs/networkreachability.html
/usr/share/nagios/docs/notifications.html
/usr/share/nagios/docs/parallelization.html
/usr/share/nagios/docs/passivechecks.html
/usr/share/nagios/docs/perfdata.html
/usr/share/nagios/docs/plugins.html
/usr/share/nagios/docs/plugintheory.html
/usr/share/nagios/docs/redundancy.html
/usr/share/nagios/docs/robots.txt
/usr/share/nagios/docs/security.html
/usr/share/nagios/docs/stalking.html
/usr/share/nagios/docs/starting.html
/usr/share/nagios/docs/statetypes.html
/usr/share/nagios/docs/stoprestart.html
/usr/share/nagios/docs/templaterecursion.html
/usr/share/nagios/docs/templatetricks.html
/usr/share/nagios/docs/timeperiods.html
/usr/share/nagios/docs/toc.html
/usr/share/nagios/docs/tuning.html
/usr/share/nagios/docs/verifyconfig.html
/usr/share/nagios/docs/volatileservices.html
/usr/share/nagios/docs/whatsnew.html
/usr/share/nagios/docs/xdata-db.html
/usr/share/nagios/docs/xeddefault.html
/usr/share/nagios/docs/xedtemplate.html
/usr/share/nagios/docs/xoddefault.html
/usr/share/nagios/docs/xodtemplate.html
/usr/share/nagios/docs/xpddefault.html
/usr/share/nagios/docs/xpdfile.html
/usr/share/nagios/images
/usr/share/nagios/images/ack.gif
/usr/share/nagios/images/command.png
/usr/share/nagios/images/comment.gif
/usr/share/nagios/images/contexthelp1.gif
/usr/share/nagios/images/contexthelp2.gif
/usr/share/nagios/images/critical.png
/usr/share/nagios/images/delay.gif
/usr/share/nagios/images/delete.gif
/usr/share/nagios/images/disabled.gif
/usr/share/nagios/images/down.gif
/usr/share/nagios/images/downtime.gif
/usr/share/nagios/images/empty.gif
/usr/share/nagios/images/enabled.gif
/usr/share/nagios/images/extinfo.gif
/usr/share/nagios/images/flapping.gif
/usr/share/nagios/images/greendot.gif
/usr/share/nagios/images/histogram.png
/usr/share/nagios/images/history.gif
/usr/share/nagios/images/hostevent.gif
/usr/share/nagios/images/info.png
/usr/share/nagios/images/left.gif
/usr/share/nagios/images/logofullsize.jpg
/usr/share/nagios/images/logos
/usr/share/nagios/images/logos/base
/usr/share/nagios/images/logos/base/aix.gd2
/usr/share/nagios/images/logos/base/aix.gif
/usr/share/nagios/images/logos/base/aix.jpg
/usr/share/nagios/images/logos/base/aix.png
/usr/share/nagios/images/logos/base/amiga.gd2
/usr/share/nagios/images/logos/base/amiga.gif
/usr/share/nagios/images/logos/base/amiga.jpg
/usr/share/nagios/images/logos/base/amiga.png
/usr/share/nagios/images/logos/base/apple.gd2
/usr/share/nagios/images/logos/base/apple.gif
/usr/share/nagios/images/logos/base/apple.jpg
/usr/share/nagios/images/logos/base/apple.png
/usr/share/nagios/images/logos/base/beos.gd2
/usr/share/nagios/images/logos/base/beos.gif
/usr/share/nagios/images/logos/base/beos.jpg
/usr/share/nagios/images/logos/base/beos.png
/usr/share/nagios/images/logos/base/caldera.gd2
/usr/share/nagios/images/logos/base/caldera.gif
/usr/share/nagios/images/logos/base/caldera.jpg
/usr/share/nagios/images/logos/base/caldera.png
/usr/share/nagios/images/logos/base/cat1900.gd2
/usr/share/nagios/images/logos/base/cat2900.gd2
/usr/share/nagios/images/logos/base/cat5000.gd2
/usr/share/nagios/images/logos/base/debian.gd2
/usr/share/nagios/images/logos/base/debian.gif
/usr/share/nagios/images/logos/base/debian.jpg
/usr/share/nagios/images/logos/base/debian.png
/usr/share/nagios/images/logos/base/freebsd40.gd2
/usr/share/nagios/images/logos/base/freebsd40.gif
/usr/share/nagios/images/logos/base/freebsd40.jpg
/usr/share/nagios/images/logos/base/freebsd40.png
/usr/share/nagios/images/logos/base/hp-printer40.gd2
/usr/share/nagios/images/logos/base/hp-printer40.gif
/usr/share/nagios/images/logos/base/hp-printer40.jpg
/usr/share/nagios/images/logos/base/hp-printer40.png
/usr/share/nagios/images/logos/base/hpux.gd2
/usr/share/nagios/images/logos/base/hpux.gif
/usr/share/nagios/images/logos/base/hpux.jpg
/usr/share/nagios/images/logos/base/hpux.png
/usr/share/nagios/images/logos/base/irix.gd2
/usr/share/nagios/images/logos/base/irix.gif
/usr/share/nagios/images/logos/base/irix.jpg
/usr/share/nagios/images/logos/base/irix.png
/usr/share/nagios/images/logos/base/linux40.gd2
/usr/share/nagios/images/logos/base/linux40.gif
/usr/share/nagios/images/logos/base/linux40.jpg
/usr/share/nagios/images/logos/base/linux40.png
/usr/share/nagios/images/logos/base/logo.gd2
/usr/share/nagios/images/logos/base/mac40.gd2
/usr/share/nagios/images/logos/base/mac40.gif
/usr/share/nagios/images/logos/base/mac40.jpg
/usr/share/nagios/images/logos/base/mac40.png
/usr/share/nagios/images/logos/base/mandrake.gd2
/usr/share/nagios/images/logos/base/mandrake.gif
/usr/share/nagios/images/logos/base/mandrake.jpg
/usr/share/nagios/images/logos/base/mandrake.png
/usr/share/nagios/images/logos/base/nagios.gd2
/usr/share/nagios/images/logos/base/next.gd2
/usr/share/nagios/images/logos/base/next.gif
/usr/share/nagios/images/logos/base/next.jpg
/usr/share/nagios/images/logos/base/next.png
/usr/share/nagios/images/logos/base/ng-switch40.gd2
/usr/share/nagios/images/logos/base/ng-switch40.gif
/usr/share/nagios/images/logos/base/ng-switch40.jpg
/usr/share/nagios/images/logos/base/ng-switch40.png
/usr/share/nagios/images/logos/base/novell40.gd2
/usr/share/nagios/images/logos/base/novell40.gif
/usr/share/nagios/images/logos/base/novell40.jpg
/usr/share/nagios/images/logos/base/novell40.png
/usr/share/nagios/images/logos/base/openbsd.gd2
/usr/share/nagios/images/logos/base/openbsd.gif
/usr/share/nagios/images/logos/base/openbsd.jpg
/usr/share/nagios/images/logos/base/openbsd.png
/usr/share/nagios/images/logos/base/redhat.gd2
/usr/share/nagios/images/logos/base/redhat.gif
/usr/share/nagios/images/logos/base/redhat.jpg
/usr/share/nagios/images/logos/base/redhat.png
/usr/share/nagios/images/logos/base/router40.gd2
/usr/share/nagios/images/logos/base/router40.gif
/usr/share/nagios/images/logos/base/router40.jpg
/usr/share/nagios/images/logos/base/router40.png
/usr/share/nagios/images/logos/base/slackware.gd2
/usr/share/nagios/images/logos/base/slackware.gif
/usr/share/nagios/images/logos/base/slackware.jpg
/usr/share/nagios/images/logos/base/slackware.png
/usr/share/nagios/images/logos/base/stampede.gd2
/usr/share/nagios/images/logos/base/stampede.gif
/usr/share/nagios/images/logos/base/stampede.jpg
/usr/share/nagios/images/logos/base/stampede.png
/usr/share/nagios/images/logos/base/station.gd2
/usr/share/nagios/images/logos/base/storm.gd2
/usr/share/nagios/images/logos/base/storm.gif
/usr/share/nagios/images/logos/base/storm.jpg
/usr/share/nagios/images/logos/base/storm.png
/usr/share/nagios/images/logos/base/sun40.gd2
/usr/share/nagios/images/logos/base/sun40.gif
/usr/share/nagios/images/logos/base/sun40.jpg
/usr/share/nagios/images/logos/base/sun40.png
/usr/share/nagios/images/logos/base/sunlogo.gd2
/usr/share/nagios/images/logos/base/sunlogo.gif
/usr/share/nagios/images/logos/base/sunlogo.jpg
/usr/share/nagios/images/logos/base/sunlogo.png
/usr/share/nagios/images/logos/base/switch40.gd2
/usr/share/nagios/images/logos/base/switch40.gif
/usr/share/nagios/images/logos/base/switch40.jpg
/usr/share/nagios/images/logos/base/switch40.png
/usr/share/nagios/images/logos/base/turbolinux.gd2
/usr/share/nagios/images/logos/base/turbolinux.gif
/usr/share/nagios/images/logos/base/turbolinux.jpg
/usr/share/nagios/images/logos/base/turbolinux.png
/usr/share/nagios/images/logos/base/ultrapenguin.gd2
/usr/share/nagios/images/logos/base/ultrapenguin.gif
/usr/share/nagios/images/logos/base/ultrapenguin.jpg
/usr/share/nagios/images/logos/base/ultrapenguin.png
/usr/share/nagios/images/logos/base/unicos.gd2
/usr/share/nagios/images/logos/base/unicos.gif
/usr/share/nagios/images/logos/base/unicos.jpg
/usr/share/nagios/images/logos/base/unicos.png
/usr/share/nagios/images/logos/base/win40.gd2
/usr/share/nagios/images/logos/base/win40.gif
/usr/share/nagios/images/logos/base/win40.jpg
/usr/share/nagios/images/logos/base/win40.png
/usr/share/nagios/images/logos/base/yellowdog.gd2
/usr/share/nagios/images/logos/base/yellowdog.gif
/usr/share/nagios/images/logos/base/yellowdog.jpg
/usr/share/nagios/images/logos/base/yellowdog.png
/usr/share/nagios/images/logos/nagios.gd2
/usr/share/nagios/images/logos/nagios.gif
/usr/share/nagios/images/logos/nagiosvrml.png
/usr/share/nagios/images/logos/unknown.gd2
/usr/share/nagios/images/logos/unknown.gif
/usr/share/nagios/images/logrotate.png
/usr/share/nagios/images/ndisabled.gif
/usr/share/nagios/images/noack.gif
/usr/share/nagios/images/notes.gif
/usr/share/nagios/images/notify.gif
/usr/share/nagios/images/orangedot.gif
/usr/share/nagios/images/passiveonly.gif
/usr/share/nagios/images/recovery.png
/usr/share/nagios/images/redudancy.png
/usr/share/nagios/images/redundancy.png
/usr/share/nagios/images/restart.gif
/usr/share/nagios/images/right.gif
/usr/share/nagios/images/sbconfig.png
/usr/share/nagios/images/sbgeneral.png
/usr/share/nagios/images/sblogo.jpg
/usr/share/nagios/images/sbmonitor.png
/usr/share/nagios/images/sbreport.png
/usr/share/nagios/images/serviceevent.gif
/usr/share/nagios/images/start.gif
/usr/share/nagios/images/status.gif
/usr/share/nagios/images/status2.gif
/usr/share/nagios/images/status3.gif
/usr/share/nagios/images/status4.gif
/usr/share/nagios/images/stop.gif
/usr/share/nagios/images/tacdisabled.jpg
/usr/share/nagios/images/tacdisabled.png
/usr/share/nagios/images/tacenabled.jpg
/usr/share/nagios/images/tacenabled.png
/usr/share/nagios/images/thermcrit.png
/usr/share/nagios/images/thermok.png
/usr/share/nagios/images/thermwarn.png
/usr/share/nagios/images/trends.gif
/usr/share/nagios/images/trendshost.png
/usr/share/nagios/images/trendssvc.png
/usr/share/nagios/images/unknown.png
/usr/share/nagios/images/up.gif
/usr/share/nagios/images/warning.png
/usr/share/nagios/images/weblogo1.png
/usr/share/nagios/images/zoom1.gif
/usr/share/nagios/images/zoom2.gif
/usr/share/nagios/index.html
/usr/share/nagios/main.html
/usr/share/nagios/media
/usr/share/nagios/media/critical.wav
/usr/share/nagios/media/hostdown.wav
/usr/share/nagios/media/warning.wav
/usr/share/nagios/robots.txt
/usr/share/nagios/side.html
/usr/share/nagios/ssi
/usr/share/nagios/stylesheets
/usr/share/nagios/stylesheets/avail.css
/usr/share/nagios/stylesheets/checksanity.css
/usr/share/nagios/stylesheets/cmd.css
/usr/share/nagios/stylesheets/config.css
/usr/share/nagios/stylesheets/extinfo.css
/usr/share/nagios/stylesheets/histogram.css
/usr/share/nagios/stylesheets/history.css
/usr/share/nagios/stylesheets/ministatus.css
/usr/share/nagios/stylesheets/notifications.css
/usr/share/nagios/stylesheets/outages.css
/usr/share/nagios/stylesheets/showlog.css
/usr/share/nagios/stylesheets/status.css
/usr/share/nagios/stylesheets/statusmap.css
/usr/share/nagios/stylesheets/summary.css
/usr/share/nagios/stylesheets/tac.css
/usr/share/nagios/stylesheets/trends.css
/var/log/nagios
/var/log/nagios/archives
/var/log/nagios/rw
[root@jupiter shinnai]#  
  • そのファイル以外に,専用のアカウント&グループが作成された事を確認する.
[root@jupiter nagios]# cat /etc/passwd|grep nagios
nagios:x:100:101:nagios:/var/log/nagios:/bin/sh
[root@jupiter nagios]# cat /etc/group|grep nagios
nagios:x:101:apache
[root@jupiter nagios]#  
  • 分かりやすい名前で?作られているようである.

3.メインファイルの設定する

  • メイン設定ファイルを探す.
[root@jupiter nagios]# rpm -ql nagios-1.2-2.1.el3.rf.i386|grep nagios.cfg
/etc/nagios/nagios.cfg
[root@jupiter nagios]
  • このファイル内で設定する代表的な項目は,次の通り.
設定項目 説明
log_file nagiosのイベントを記録していくファイルを指定する.
cfg_file 監視対象の情報を保管するファイルを指定する.
resource_file プラグインをインストールしているディレクトリを指定する.
status_file すべての監視対象のステータスを記録するファイルを指定. nagiosを起動する都度,このファイルは古いものが消えるて新しいファイルが作成される.
nagios_user nagiosを実行する際のUNIX上のユーザアカウントを指定する.
nagios_group nagiosユーザが所属するUNIX上のグループを指定する.
log_rotation ログのローテーションを指定する.毎時間,毎日,毎週,毎月,なしを設定する事ができる.
log_archive_path ログローテーションしたファイルの保存先を指定する.
service_check_timeout
host_check_timeout
nagiosが実行したコマンドのタイムアウト時間を秒単位で指定する.
interval_length 監視間隔を秒単位で指定する.
downtime_file 監視対象の停止時間を記録するファイル.
date_format 日付フォーマット. iso8601形式にするとYYYY-MM-DD HH:MM:SSとなる.
admin_email nagiosが稼働するサーバの管理者用メールアドレス.
  • 主にファイルの保存先等に関する情報なので,特別に必要がなければ設定するところは無い.
  • 日付と管理者用メアドを設定.

4.監視の設定を行う

  • ここから,実際の監視の設定を行っていく.
  • まずは,監視設定ファイルがどこにあるか確認する.
[root@jupiter nagios]# pwd
/etc/nagios
[root@jupiter nagios]# ls -la
total 140
drwxr-xr-x    3 root     root         4096 Aug 29 16:05 .
drwxr-xr-x   68 root     root         8192 Aug 29 14:32 ..
-rw-rw-r--    1 root     root        17144 Apr 11 02:23 cgi.cfg
-rw-rw-r--    1 root     root         4475 Apr 11 02:23 checkcommands.cfg
-rw-rw-r--    1 root     root         1568 Apr 11 02:23 contactgroups.cfg
-rw-rw-r--    1 root     root         1480 Apr 11 02:23 contacts.cfg
-rw-rw-r--    1 root     root         1646 Apr 11 02:23 dependencies.cfg
-rw-rw-r--    1 root     root         2017 Apr 11 02:23 escalations.cfg
-rw-rw-r--    1 root     root          958 Apr 11 02:23 hostgroups.cfg
-rw-rw-r--    1 root     root         2170 Apr 11 02:23 hosts.cfg
-rw-rw-r--    1 root     root        13583 Apr 11 02:23 minimal.cfg
-rw-rw-r--    1 root     root         4234 Apr 11 02:23 misccommands.cfg
-rw-rw-r--    1 root     root        21201 Apr 11 02:23 nagios.cfg
drwxr-xr-x    2 root     nagios       4096 Apr 29 14:31 private
-rw-rw-r--    1 root     root        18095 Apr 11 02:23 services.cfg
-rw-rw-r--    1 root     root         1589 Apr 11 02:23 timeperiods.cfg
[root@jupiter nagios]#
  • nagiosが障害を検知した時に通知を行う先を設定する.
  • 下記では,自分のPC用のメールアドレスの通知先(shinnai)と,携帯電話のメールアドレスの通知先(shinnai-mobile)の2つを定義した.
contacts.cfg
# shinnai contact definition
define contact{
        contact_name                    ujp_pc
        alias                           PC mail
        service_notification_period     workhours
        host_notification_period        workhours
        service_notification_options    c,r
        host_notification_options       d,r
        service_notification_commands   notify-by-email
        host_notification_commands      host-notify-by-email
        email                           webadmin@whitehouse.com
        }
# shinnai mobile contact definition
define contact{
        contact_name                    ujp_mobile
        alias                           Nobuaki Shinnai mobile
        service_notification_period     workhours
        host_notification_period        workhours
        service_notification_options    c,r
        host_notification_options       d,r
        service_notification_commands   notify-by-email
        host_notification_commands      host-notify-by-email
        email                           mobilemailaddress@ezweb.ne.jp
        }
  • 次に,通知先のグルーピングを行う.
contactgroups.cfg
define contactgroup{
        contactgroup_name       office-admins
        alias                   Tokyo office-admin
        members                 ujp_pc,ujp_mobile
        }
  • office-adminsという通知先グループを作成し,そのメンバーにcontacts.cfgで定義したPC用と携帯電話用の定義名を設定した.
  • 次に,host.cfgファイルにて監視対象となる機器(コンピュータ等)の情報を指定する.
  • 次のように定義してある
host.cfgのサンプル
define host{
        use                     generic-host    ; Name of host template to use

        host_name               novell1
        alias                   Novell Server #1
        address                 192.168.1.2
        check_command           check-host-alive
        max_check_attempts      10
        notification_interval   120
        notification_period     24x7
        notification_options    d,u,r
        }
  • これをもとに設定する.
hosts.cfg
# 'novell1' host definition
define host{
        use                     generic-host
        host_name               mars
        alias                   testsesrver
        address                 210.123.123.128
        check_command           check-host-alive
        max_check_attempts      10
        notification_interval   120
        notification_period     24x7
        notification_options    d,u,r
        }

define host{
        use                     generic-host
        host_name               jupiter
        alias                   nagios server
        address                 210.123.123.127
        check_command           check-host-alive
        max_check_attempts      10
        notification_interval   120
        notification_period     24x7
        notification_options    d,u,r
        }
  • ここでは,ホストの死活監視(check-host-alive)を週7日24時間(24x7)
  • notificatin_interval=120なので,120分経過したら再通知.
  • max_check_attemptsが10なので,10回リトライ.
  • marsとjupiterというコンピュータを登録した.
    notification_optionsの設定項目
    フラグ 意味
    w
    warning
    u
    unreachable
    c
    critical
    r
    recovery
  • 次に,機器のグルーピングを行う為に,hostgroups.cfgを設定する.
hostgroups.cfg
define hostgroup{
        hostgroup_name  office-servers
        alias           Tokyo Office Server
        contact_groups  office-admins
        members         mars,jupiter
        }
  • 先ほど定義したコンピュータmarsとjupiterを,office-serversというグループとした.
  • このサーバグループに障害が発生した場合には,contactgroups.cfgに定義したoffice-adminsグループ,つまり,contacts.cfgに定義したshinnai,shinnai-mobile宛に通知が行く事となる.
escalations.cfg
define serviceescalation{
        host_name                       mars   
        service_description             PING
        first_notification              2
        last_notification               6
        contact_groups                  office-admins
        notification_interval           0
        }

define serviceescalation{
        host_name                       jupiter
        service_description             PING
        first_notification              2
        last_notification               6
        contact_groups                  office-admins
        notification_interval           0
        }
  • 3回失敗したら4回目で障害通知.
  • notification_intervalは5秒間隔で再チェック.これを0に設定すると,一度通知した障害は再送信しない.
  • 次に,監視するサービスの設定を行う.
  • ここでは,一番簡単なサーバの死活監視をPINGで行う設定とする.
services.cfg
define service{
        use                     generic-service
        host_name               mars
        service_description     PING    
        is_volatile             0       
        check_period            24x7    
        max_check_attempts      3       
        normal_check_interval   5       
        retry_check_interval    1       
        contact_groups          office-admins
        notification_interval   120     
        notification_period     24x7    
        notification_options    c,r     
        check_command           check_ping!100.0,20%!500.0,60%
        }

define service{
        use                     generic-service 
        host_name               jupiter
        service_description     PING
        is_volatile             0
        check_period            24x7
        max_check_attempts      3
        normal_check_interval   5
        retry_check_interval    1
        contact_groups          office-admins
        notification_interval   120
        notification_period     24x7
        notification_options    c,r
        check_command           check_ping!100.0,20%!500.0,60%
        }
  • このように2つのサーバを監視対象とし,pingにて監視を行う.
  • ここまで設定できたら,nagiosの設定ファイルを確認してみる.
[root@jupiter nagios]# /usr/bin/nagios -v /etc/nagios/nagios.cfg 

Nagios 1.2
Copyright (c) 1999-2004 Ethan Galstad (nagios@nagios.org)
Last Modified: 02-02-2004
License: GPL

Reading configuration data...

Running pre-flight check on configuration data...

Checking services...
        Checked 2 services.
Checking hosts...
        Checked 2 hosts.
Checking host groups...
        Checked 1 host groups.
Checking contacts...
        Checked 2 contacts.
Checking contact groups...
        Checked 1 contact groups.
Checking service escalations...
        Checked 2 service escalations.
Checking host group escalations...
        Checked 0 host group escalations.
Checking service dependencies...
Error: Dependent service specified in service dependency for service 'Website #2'
 on host 'nt1' is not defined anywhere!
Error: Service specified in service dependency for service 'Website #2' on host
 'nt1' is not defined anywhere!
Error: Service dependency definition for service 'Website #2' on host 'nt1' is
 circular (it depends on itself)!
Error: Dependent service specified in service dependency for service 'Website #2'
 on host 'nt1' is not defined anywhere!
Error: Service specified in service dependency for service 'Website #2' on host
 'nt1' is not defined anywhere!
Error: Service dependency definition for service 'Website #2' on host 'nt1' is
 circular (it depends on itself)!
Error: Dependent service specified in service dependency for service 'Website #1'
 on host 'nt1' is not defined anywhere!
Error: Service specified in service dependency for service 'Website #1' on host
 'nt1' is not defined anywhere!
Error: Service dependency definition for service 'Website #1' on host 'nt1' is
 circular (it depends on itself)!
Error: Dependent service specified in service dependency for service 'Website #1'
 on host 'nt1' is not defined anywhere!
Error: Service specified in service dependency for service 'Website #1' on host
 'nt1' is not defined anywhere!
Error: Service dependency definition for service 'Website #1' on host 'nt1' is
 circular (it depends on itself)!
        Checked 4 service dependencies.
Checking host escalations...
        Checked 0 host escalations.
Checking host dependencies...
        Checked 0 host dependencies.
Checking commands...
        Checked 22 commands.
Checking time periods...
        Checked 4 time periods.
Checking for circular paths between hosts...
Checking for circular service execution dependencies...
Checking global event handlers...
Checking obsessive compulsive service processor command...
Checking misc settings...

Total Warnings: 0
Total Errors:   12

***> One or more problems was encountered while running the pre-flight check...

     Check your configuration file(s) to ensure that they contain valid
     directives and data defintions.  If you are upgrading from a previous
     version of Nagios, you should be aware that some variables/definitions
     may have been removed or modified in this version.  Make sure to read
     the HTML documentation on the main and host config files, as well as the
     'Whats New' section to find out what has changed.

[root@jupiter nagios]#  
  • 12個のエラーがあるので動作できませんとレポートされている.
  • dependencies.cfg の設定がおかしいと言っているのだが,今回はこれは使わないのでこのファイルの中身をさっくり消去する.
  • 再度文法チェックを行う.
[root@jupiter nagios]# /usr/bin/nagios -v /etc/nagios/nagios.cfg 

Nagios 1.2
Copyright (c) 1999-2004 Ethan Galstad (nagios@nagios.org)
Last Modified: 02-02-2004
License: GPL

Reading configuration data...

Running pre-flight check on configuration data...

Checking services...
        Checked 2 services.
Checking hosts...
        Checked 2 hosts.
Checking host groups...
        Checked 1 host groups.
Checking contacts...
        Checked 2 contacts.
Checking contact groups...
        Checked 1 contact groups.
Checking service escalations...
        Checked 2 service escalations.
Checking host group escalations...
        Checked 0 host group escalations.
Checking service dependencies...
        Checked 0 service dependencies.
Checking host escalations...
        Checked 0 host escalations.
Checking host dependencies...
        Checked 0 host dependencies.
Checking commands...
        Checked 22 commands.
Checking time periods...
        Checked 4 time periods.
Checking for circular paths between hosts...
Checking for circular service execution dependencies...
Checking global event handlers...
Checking obsessive compulsive service processor command...
Checking misc settings...

Total Warnings: 0
Total Errors:   0

Things look okay - No serious problems were detected during the pre-
flight check

[root@jupiter nagios]#  
  • 今回はエラーが発生しなかった模様.

5.nagiosを起動・停止・リロードする

  • 設定が完了したら,nagiosを起動してみる.
[root@jupiter nagios]# ps -ef | grep nagios
root     14096 13939  0 17:45 pts/0    00:00:00 grep nagios
[root@jupiter nagios]#
  • nagiosデーモンを起動する.
[root@jupiter nagios]# /etc/rc.d/init.d/nagios start
Starting network monitor: nagios
NAGIOS ok - status written 1 seconds ago
[root@jupiter nagios]# 
  • プロセスを確認する.
[root@jupiter nagios]# ps -ef | grep nagios
nagios   14125     1  0 17:45 ?        00:00:00 /usr/bin/nagios -d /etc/nagios/
nagios.cfg
root     14131 13939  0 17:46 pts/0    00:00:00 grep nagios
[root@jupiter nagios]#
  • 停止してみる.
[root@jupiter nagios]# /etc/rc.d/init.d/nagios stop 
Stopping network monitor: nagios
[root@jupiter nagios]# ps -ef | grep nagios
root     14138 13939  0 17:47 pts/0    00:00:00 grep nagios
[root@jupiter nagios]#
  • 設定ファイルを変更した時は,reloadオプションを実行すれば良い.
[root@jupiter nagios]# /etc/rc.d/init.d/nagios reload
Running configuration check...done
Reloading nagios configuration...done
[root@jupiter nagios]#  

6.監視できているか確認してみる

  • ログを確認する.
[root@jupiter nagios]# tail /var/log/nagios/nagios.log
[1125305644] Warning: Attempting to execute the command "/usr/lib/nagios/plugins/
check_ping -H 210.123.123.128 -w 3000.0,80% -c 5000.0,100% -p 1" resulted in a
 return code of 127.  Make sure the script or binary you are trying to execute
 actually exists...
[1125305644] HOST ALERT: mars;DOWN;SOFT;3;(No output!)
[1125305644] HOST ALERT: mars;DOWN;SOFT;7;(No output!)
[root@jupiter nagios]#  
  • check_pingプラグインで問題があるらしい.確認する.
[root@jupiter nagios]# ls -la /usr/lib/nagios/plugins/
total 12
drwxr-xr-x    3 root     root         4096 Aug 29 18:13 .
drwxr-xr-x    4 root     root         4096 Aug 29 17:03 ..
drwxr-xr-x    4 root     root         4096 Aug 29 17:03 eventhandlers
[root@jupiter nagios]# 
  • プラグインが無い模様

7.nagiosプラグインのインストール

[root@jupiter nagios]# wget http://dag.wieers.com/packages/nagios-plugins/nagios-
plugins-1.4-2.1.el3.rf.i386.rpm
--18:34:54--  http://dag.wieers.com/packages/nagios-plugins/nagios-plugins-1.4-2.
1.el3.rf.i386.rpm
           => `nagios-plugins-1.4-2.1.el3.rf.i386.rpm.1'
Resolving dag.wieers.com... 217.22.63.77
Connecting to dag.wieers.com[217.22.63.77]:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://apt.sw.be/packages/nagios-plugins/nagios-plugins-1.4-2.1.el3.rf.
i386.rpm [following]
--18:34:55--  http://apt.sw.be/packages/nagios-plugins/nagios-plugins-1.4-2.1.el3
.rf.i386.rpm
           => `nagios-plugins-1.4-2.1.el3.rf.i386.rpm.1'
Resolving apt.sw.be... 193.1.193.67
Connecting to apt.sw.be[193.1.193.67]:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 632,094 [application/x-redhat-package-manager]

100%[============================================================================
==================>] 632,094      179.44K/s    ETA 00:00

18:35:00 (179.10 KB/s) - `nagios-plugins-1.4-2.1.el3.rf.i386.rpm.1' saved [632,09
4/632,094]

[root@jupiter nagios]# 
  • インストールする.
[root@jupiter nagios]# rpm -ihv nagios-plugins-1.4-2.1.el3.rf.i386.rpm
warning: nagios-plugins-1.4-2.1.el3.rf.i386.rpm: V3 DSA signature: NOKEY, key ID
 6b8d79e6
error: Failed dependencies:
        perl(Net::SNMP) is needed by nagios-plugins-1.4-2.1.el3.rf
        fping is needed by nagios-plugins-1.4-2.1.el3.rf
[root@jupiter nagios]#  
  • PerlライブラリのNet::SNMPとfpingというのがインストールされている事が前提必要だと言うエラーがでてインストールできない.

8.Net::SNMPモジュールのインストール

  • nagiosプラグインを入れる前提となるソフトをインストールする.
  • Net::SNMPモジュールをCPANから取得する.
[root@jupiter nagios]# wget http://search.cpan.org/CPAN/authors/id/D/DT/DTOWN/Net
-SNMP-5.1.0.tar.gz
--18:41:47--  http://search.cpan.org/CPAN/authors/id/D/DT/DTOWN/Net-SNMP-5.1.0.ta
r.gz
           => `Net-SNMP-5.1.0.tar.gz'
Resolving search.cpan.org... 216.52.237.135, 216.52.237.136
Connecting to search.cpan.org[216.52.237.135]:80... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: http://ftp.kaist.ac.kr/pub/CPAN/authors/id/D/DT/DTOWN/Net-SNMP-5.1.0.ta
r.gz [following]
--18:41:47--  http://ftp.kaist.ac.kr/pub/CPAN/authors/id/D/DT/DTOWN/Net-SNMP-5.1.
0.tar.gz
           => `Net-SNMP-5.1.0.tar.gz'
Resolving ftp.kaist.ac.kr... 143.248.234.110
Connecting to ftp.kaist.ac.kr[143.248.234.110]:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 80,973 [application/x-tar]

100%[============================================================================
==================>] 80,973       130.92K/s             

18:41:49 (130.75 KB/s) - `Net-SNMP-5.1.0.tar.gz' saved [80,973/80,973]

[root@jupiter nagios]# 
  • インストールを行う.
[root@jupiter nagios]# gzip -d Net-SNMP-5.1.0.tar.gz 
[root@jupiter nagios]# tar xf Net-SNMP-5.1.0.tar 
[root@jupiter nagios]# cd Net-SNMP-5.1.0
[root@jupiter Net-SNMP-5.1.0]# ls -la
total 56
drwx------    5 2649     daemon       4096 Jul 20 22:53 .
drwxrwxr-x    3 shinnai  shinnai      4096 Aug 29 18:43 ..
-rw-r--r--    1 2649     daemon      13640 Jul 20 22:53 Changes
-rw-r--r--    1 2649     daemon        656 Apr  8  2004 MANIFEST
-rwxr-xr-x    1 2649     daemon       1498 Jul 20 22:53 Makefile.PL
-rw-r--r--    1 2649     daemon       2381 Jul 20 22:53 README
drwx------    2 2649     daemon       4096 Jul 20 22:53 examples
drwx------    3 2649     daemon       4096 Jul 20 22:53 lib
-rw-r--r--    1 2649     daemon       5541 Jul 20 22:53 snmpkey.PL
drwx------    2 2649     daemon       4096 Jul 20 22:53 t
[root@jupiter Net-SNMP-5.1.0]# perl Makefile.PL 
Checking if your kit is complete...
Looks good
Warning: prerequisite Crypt::DES 2.03 not found.
Warning: prerequisite Digest::HMAC 1.00 not found.
Warning: prerequisite Digest::SHA1 1.02 not found.
Writing Makefile for Net::SNMP
[root@jupiter Net-SNMP-5.1.0]#  
  • Crypt::DES,Digest::HMAC.Digest::SHA1がインストールされていないと警告が出ている.
  • 変なスパイラルに陥ってるみたいな...
  • Crypt::DESをインストールする.
[root@jupiter Net-SNMP-5.1.0]# wget http://search.cpan.org/CPAN/authors/id/D/DP/D
PARIS/Crypt-DES-2.03.tar.gz
--18:48:45--  http://search.cpan.org/CPAN/authors/id/D/DP/DPARIS/Crypt-DES-2.03.t
ar.gz
           => `Crypt-DES-2.03.tar.gz'
Resolving search.cpan.org... 216.52.237.136, 216.52.237.135
Connecting to search.cpan.org[216.52.237.136]:80... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: http://mirror.kr.FreeBSD.org/CPAN/authors/id/D/DP/DPARIS/Crypt-DES-2.03
.tar.gz [following]
--18:48:45--  http://mirror.kr.freebsd.org/CPAN/authors/id/D/DP/DPARIS/Crypt-DES-
2.03.tar.gz
           => `Crypt-DES-2.03.tar.gz'
Resolving mirror.kr.freebsd.org... 210.118.94.73
Connecting to mirror.kr.freebsd.org[210.118.94.73]:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 15,274 [application/x-gzip]

100%[============================================================================
==================>] 15,274        --.--K/s             

18:48:46 (334.88 KB/s) - `Crypt-DES-2.03.tar.gz' saved [15,274/15,274]

[root@jupiter Net-SNMP-5.1.0]# tar xfz Crypt-DES-2.03.tar.gz 
[root@jupiter Net-SNMP-5.1.0]# cd Crypt-DES-2.03
[root@jupiter Crypt-DES-2.03]# perl Makefile.PL 
Checking if your kit is complete...
Looks good
Writing Makefile for Crypt::DES
[root@jupiter Crypt-DES-2.03]# make test
cp DES.pm blib/lib/Crypt/DES.pm
/usr/bin/perl /usr/lib/perl5/5.8.0/ExtUtils/xsubpp  -typemap /usr/lib/perl5/5.8.0
/ExtUtils/typemap -typemap typemap  DES.xs > DES.xsc && mv DES.xsc DES.c
gcc -c   -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-a
liasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/in
clude/gdbm -O2 -g -pipe -march=i386 -mcpu=i686   -DVERSION=\"2.03\" -DXS_VERSION=
\"2.03\" -fPIC "-I/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE"   DES.c
gcc -c   -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-a
liasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/in
clude/gdbm -O2 -g -pipe -march=i386 -mcpu=i686   -DVERSION=\"2.03\" -DXS_VERSION=
\"2.03\" -fPIC "-I/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE"   _des.c
Running Mkbootstrap for Crypt::DES ()
chmod 644 DES.bs
rm -f blib/arch/auto/Crypt/DES/DES.so
LD_RUN_PATH="" gcc  -shared -L/usr/local/lib DES.o _des.o  -o blib/arch/auto/Cryp
t/DES/DES.so     
chmod 755 blib/arch/auto/Crypt/DES/DES.so
cp DES.bs blib/arch/auto/Crypt/DES/DES.bs
chmod 644 blib/arch/auto/Crypt/DES/DES.bs
PERL_DL_NONLAZY=1 /usr/bin/perl "-Iblib/lib" "-Iblib/arch" test.pl
1..342
342 basic tests ran in  0 wallclock secs ( 0.01 usr +  0.00 sys =  0.01 CPU)
342 of 342 tests passed (100.00%)

Running speed tests...

non-cached cipher speed test.  5000 encrypt iterations
 0 wallclock secs ( 0.19 usr +  0.00 sys =  0.19 CPU)
ok 343

non-cached cipher speed test.  5000 decrypt iterations
 1 wallclock secs ( 0.19 usr +  0.00 sys =  0.19 CPU)
ok 344

cached cipher speed test.  10000 encrypt iterations
 0 wallclock secs ( 0.09 usr +  0.00 sys =  0.09 CPU)
ok 345

cached cipher speed test.  10000 decrypt iterations
 0 wallclock secs ( 0.10 usr +  0.00 sys =  0.10 CPU)
ok 346

Testing Cipher Block Chaining..
Error (probably harmless):
Can't locate Crypt/CBC.pm in @INC (@INC contains: blib/lib blib/arch /usr/lib/per
l5/5.8.0/i386-linux-thread-multi /usr/lib/perl5/5.8.0 /usr/lib/perl5/site_perl/5.
8.0/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_pe
rl /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/
vendor_per
l/5.8.0 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.0/i386-linux-thread-multi /
usr/lib/perl5/5.8.0 . . .. ../lib ../../lib ../../../lib) at (eval 2) line 2.
BEGIN failed--compilation aborted at (eval 2) line 2.


Finished with tests

[root@jupiter Crypt-DES-2.03]# make install
Manifying blib/man3/Crypt::DES.3pm
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/Crypt/DES/
DES.so
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/Crypt/DES/
DES.bs
Files found in blib/arch: installing files in blib/lib into architecture dependen
t library tree
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Crypt/DES.pm
Installing /usr/share/man/man3/Crypt::DES.3pm
Writing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/Crypt/DES/.pa
cklist
Appending installation info to /usr/lib/perl5/5.8.0/i386-linux-thread-multi/perll
ocal.pod
[root@jupiter Crypt-DES-2.03]#  
  • Digest-HMACを入手してインストールする.
[root@jupiter Crypt-DES-2.03]# wget http://search.cpan.org/CPAN/authors/id/G/GA/
GAAS/Digest-HMAC-1.01.tar.gz
--18:49:57--  http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/Digest-HMAC-
1.01.tar.gz
           => `Digest-HMAC-1.01.tar.gz'
Resolving search.cpan.org... 216.52.237.136, 216.52.237.135
Connecting to search.cpan.org[216.52.237.136]:80... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: http://ftp.uos.ac.kr/CPAN/authors/id/G/GA/GAAS/Digest-HMAC-1.01.tar.gz 
[following]
--18:49:58--  http://ftp.uos.ac.kr/CPAN/authors/id/G/GA/GAAS/Digest-HMAC-
1.01.tar.gz
           => `Digest-HMAC-1.01.tar.gz'
Resolving ftp.uos.ac.kr... 203.249.96.13
Connecting to ftp.uos.ac.kr[203.249.96.13]:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 13,623 [application/x-gzip]

100%[===========================================================================
===================>] 13,623        --.--K/s             

18:49:58 (92.32 KB/s) - `Digest-HMAC-1.01.tar.gz' saved [13,623/13,623]

[root@jupiter Crypt-DES-2.03]# tar xfz Digest-HMAC-1.01.tar.gz
[root@jupiter Crypt-DES-2.03]# cd Digest-HMAC-1.01
[root@jupiter Digest-HMAC-1.01]# perl Makefile.PL 
Checking if your kit is complete...
Looks good
Warning: prerequisite Digest::SHA1 1 not found.
Writing Makefile for Digest::HMAC
[root@jupiter Digest-HMAC-1.01]# make test
cp lib/Digest/HMAC_MD5.pm blib/lib/Digest/HMAC_MD5.pm
cp lib/Digest/HMAC.pm blib/lib/Digest/HMAC.pm
cp lib/Digest/HMAC_SHA1.pm blib/lib/Digest/HMAC_SHA1.pm
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0,
 'blib/lib', 'blib/arch')" t/*.t
t/rfc2202....ok                                                              
All tests successful.
Files=1, Tests=14,  0 wallclock secs ( 0.07 cusr +  0.00 csys =  0.07 CPU)
[root@jupiter Digest-HMAC-1.01]# make install
Manifying blib/man3/Digest::HMAC_MD5.3pm
Manifying blib/man3/Digest::HMAC.3pm
Manifying blib/man3/Digest::HMAC_SHA1.3pm
Installing /usr/lib/perl5/site_perl/5.8.0/Digest/HMAC_MD5.pm
Installing /usr/lib/perl5/site_perl/5.8.0/Digest/HMAC.pm
Installing /usr/lib/perl5/site_perl/5.8.0/Digest/HMAC_SHA1.pm
Installing /usr/share/man/man3/Digest::HMAC_MD5.3pm
Installing /usr/share/man/man3/Digest::HMAC.3pm
Installing /usr/share/man/man3/Digest::HMAC_SHA1.3pm
Writing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/Digest/HMAC/.
packlist
Appending installation info to /usr/lib/perl5/5.8.0/i386-linux-thread-multi/
perllocal.pod
[root@jupiter Digest-HMAC-1.01]#  
  • 引き続き,Digest-SHA1を入手してインストールする.
[root@jupiter Net-SNMP-5.1.0]# wget http://search.cpan.org/CPAN/authors/id/G/GA/
GAAS/Digest-SHA1-2.10.tar.gz
--18:55:26--  http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/Digest-SHA1-
2.10.tar.gz
           => `Digest-SHA1-2.10.tar.gz'
Resolving search.cpan.org... 216.52.237.135, 216.52.237.136
Connecting to search.cpan.org[216.52.237.135]:80... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: http://mirror.kr.FreeBSD.org/CPAN/authors/id/G/GA/GAAS/Digest-SHA1-
2.10.tar.gz [following]
--18:55:27--  http://mirror.kr.freebsd.org/CPAN/authors/id/G/GA/GAAS/Digest-SHA1-
2.10.tar.gz
           => `Digest-SHA1-2.10.tar.gz'
Resolving mirror.kr.freebsd.org... 210.118.94.73
Connecting to mirror.kr.freebsd.org[210.118.94.73]:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 38,698 [application/x-gzip]

100%[============================================================================
==================>] 38,698        --.--K/s             

18:55:28 (277.70 KB/s) - `Digest-SHA1-2.10.tar.gz' saved [38,698/38,698]

[root@jupiter Net-SNMP-5.1.0]# tar xfz Digest-SHA1-2.10.tar.gz 
[root@jupiter Net-SNMP-5.1.0]# cd Digest-SHA1-2.10
[root@jupiter Digest-SHA1-2.10]# perl Makefile.PL 
Checking if your kit is complete...
Looks good
Warning: prerequisite Digest::base 1.00 not found.
Writing Makefile for Digest::SHA1
[root@jupiter Digest-SHA1-2.10]#  
  • Digest::baseが必要!といわれた...
  • 取ってきてインストールする.
[root@jupiter Digest-SHA1-2.10]# wget http://search.cpan.org/CPAN/authors/id/G/
GA/GAAS/Digest-1.10.tar.gz
--18:56:38--  http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/Digest-1.10.tar.gz
           => `Digest-1.10.tar.gz'
Resolving search.cpan.org... 216.52.237.136, 216.52.237.135
Connecting to search.cpan.org[216.52.237.136]:80... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: http://ftp.uos.ac.kr/CPAN/authors/id/G/GA/GAAS/Digest-1.10.tar.gz 
[following]
--18:56:39--  http://ftp.uos.ac.kr/CPAN/authors/id/G/GA/GAAS/Digest-1.10.tar.gz
           => `Digest-1.10.tar.gz'
Resolving ftp.uos.ac.kr... 203.249.96.13
Connecting to ftp.uos.ac.kr[203.249.96.13]:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 7,122 [application/x-gzip]

100%[============================================================================
==================>] 7,122         --.--K/s             

18:56:43 (148.42 KB/s) - `Digest-1.10.tar.gz' saved [7,122/7,122]

[root@jupiter Digest-SHA1-2.10]# tar xfz Digest-1.10.tar.gz 
[root@jupiter Digest-SHA1-2.10]# cd Digest-1.10
[root@jupiter Digest-1.10]# perl Makefile.PL 
Checking if your kit is complete...
Looks good
Writing Makefile for Digest
[root@jupiter Digest-1.10]# make
cp Digest.pm blib/lib/Digest.pm
cp Digest/file.pm blib/lib/Digest/file.pm
cp Digest/base.pm blib/lib/Digest/base.pm
Manifying blib/man3/Digest.3pm
Manifying blib/man3/Digest::file.3pm
Manifying blib/man3/Digest::base.3pm
[root@jupiter Digest-1.10]# make install
Installing /usr/lib/perl5/5.8.0/Digest.pm
Installing /usr/lib/perl5/5.8.0/Digest/file.pm
Installing /usr/lib/perl5/5.8.0/Digest/base.pm
Installing /usr/share/man/man3/Digest.3pm
Installing /usr/share/man/man3/Digest::file.3pm
Installing /usr/share/man/man3/Digest::base.3pm
Writing /usr/lib/perl5/5.8.0/i386-linux-thread-multi/auto/Digest/.packlist
Appending installation info to /usr/lib/perl5/5.8.0/i386-linux-thread-multi/
perllocal.pod
[root@jupiter Digest-1.10]#  
  • Digest-Baseがインストールできたので,再度Digest-SHA1をインストールする.
[root@jupiter Digest-SHA1-2.10]# perl Makefile.PL 
Writing Makefile for Digest
Writing Makefile for Digest::SHA1
[root@jupiter Digest-SHA1-2.10]# make 
cp SHA1.pm blib/lib/Digest/SHA1.pm
make[1]: Entering directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Digest-SHA1-
2.10/Digest-1.10'
Manifying ../blib/man3/Digest.3pm
Manifying ../blib/man3/Digest::file.3pm
Manifying ../blib/man3/Digest::base.3pm
make[1]: Leaving directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Digest-SHA1-2.10/
Digest-1.10'
/usr/bin/perl /usr/lib/perl5/5.8.0/ExtUtils/xsubpp  -typemap /usr/lib/perl5/
5.8.0/ExtUtils/typemap -typemap typemap  SHA1.xs > SHA1.xsc && mv SHA1.xsc SHA1.c
gcc -c   -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-
aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/
include/gdbm -O2 -g -pipe -march=i386 -mcpu=i686   -DVERSION=\"2.10\" -
DXS_VERSION=\"2.10\" -fPIC "-I/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE"
   SHA1.c
Running Mkbootstrap for Digest::SHA1 ()
chmod 644 SHA1.bs
rm -f blib/arch/auto/Digest/SHA1/SHA1.so
LD_RUN_PATH="" gcc  -shared -L/usr/local/lib SHA1.o  -o blib/arch/auto/Digest/
SHA1/SHA1.so     
chmod 755 blib/arch/auto/Digest/SHA1/SHA1.so
cp SHA1.bs blib/arch/auto/Digest/SHA1/SHA1.bs
chmod 644 blib/arch/auto/Digest/SHA1/SHA1.bs
Manifying blib/man3/Digest::SHA1.3pm
[root@jupiter Digest-SHA1-2.10]# make install
make[1]: Entering directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Digest-SHA1-
2.10/Digest-1.10'
make[1]: Leaving directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Digest-SHA1-2.10/
Digest-1.10'
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/Digest/
SHA1/SHA1.so
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/Digest/
SHA1/SHA1.bs
Files found in blib/arch: installing files in blib/lib into architecture 
dependent library tree
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Digest/SHA1.pm
Installing /usr/share/man/man3/Digest::SHA1.3pm
Writing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/Digest/SHA1/.
packlist
Appending installation info to /usr/lib/perl5/5.8.0/i386-linux-thread-multi/
perllocal.pod
[root@jupiter Digest-SHA1-2.10]#  
  • インストールできた.
  • これでNet::SNMPを導入する為の前提条件が揃った.
  • Net-SNMPのインストールに再チャレンジ.
[root@jupiter Net-SNMP-5.1.0]# perl Makefile.PL 
Writing Makefile for Digest::HMAC
Writing Makefile for Crypt::DES
Writing Makefile for Digest
Writing Makefile for Digest::SHA1
Writing Makefile for Net::SNMP
[root@jupiter Net-SNMP-5.1.0]# make
cp lib/Net/SNMP/Security/USM.pm blib/lib/Net/SNMP/Security/USM.pm
cp lib/Net/SNMP/Dispatcher.pm blib/lib/Net/SNMP/Dispatcher.pm
cp lib/Net/SNMP/Transport/TCP.pm blib/lib/Net/SNMP/Transport/TCP.pm
cp lib/Net/SNMP/Transport/TCP6.pm blib/lib/Net/SNMP/Transport/TCP6.pm
cp lib/Net/SNMP/Transport/UDP.pm blib/lib/Net/SNMP/Transport/UDP.pm
cp lib/Net/SNMP.pm blib/lib/Net/SNMP.pm
cp lib/Net/SNMP/MessageProcessing.pm blib/lib/Net/SNMP/MessageProcessing.pm
cp lib/Net/SNMP/Security/Community.pm blib/lib/Net/SNMP/Security/Community.pm
cp lib/Net/SNMP/Message.pm blib/lib/Net/SNMP/Message.pm
cp lib/Net/SNMP/Transport.pm blib/lib/Net/SNMP/Transport.pm
cp lib/Net/SNMP/PDU.pm blib/lib/Net/SNMP/PDU.pm
cp lib/Net/SNMP/Transport/UDP6.pm blib/lib/Net/SNMP/Transport/UDP6.pm
cp lib/Net/SNMP/Security.pm blib/lib/Net/SNMP/Security.pm
make[1]: Entering directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Crypt-DES-2.03'
make[2]: Entering directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Crypt-DES-2.03/
Digest-HMAC-1.01'
Manifying ../../blib/man3/Digest::HMAC_MD5.3pm
Manifying ../../blib/man3/Digest::HMAC.3pm
Manifying ../../blib/man3/Digest::HMAC_SHA1.3pm
make[2]: Leaving directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Crypt-DES-2.03/
Digest-HMAC-1.01'
gcc -c   -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-
aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/
include/gdbm -O2 -g -pipe -march=i386 -mcpu=i686   -DVERSION=\"2.03\" -
DXS_VERSION=\"2.03\" -fPIC "-I/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE"
   DES.c
gcc -c   -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-
aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/
include/gdbm -O2 -g -pipe -march=i386 -mcpu=i686   -DVERSION=\"2.03\" -
DXS_VERSION=\"2.03\" -fPIC "-I/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE"
   _des.c
Running Mkbootstrap for Crypt::DES ()
chmod 644 DES.bs
rm -f ../blib/arch/auto/Crypt/DES/DES.so
LD_RUN_PATH="" gcc  -shared -L/usr/local/lib DES.o _des.o  -o ../blib/arch/auto/
Crypt/DES/DES.so     
chmod 755 ../blib/arch/auto/Crypt/DES/DES.so
cp DES.bs ../blib/arch/auto/Crypt/DES/DES.bs
chmod 644 ../blib/arch/auto/Crypt/DES/DES.bs
Manifying ../blib/man3/Crypt::DES.3pm
make[1]: Leaving directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Crypt-DES-2.03'
make[1]: Entering directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Digest-SHA1-
2.10'
make[2]: Entering directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Digest-SHA1-
2.10/Digest-1.10'
Manifying ../../blib/man3/Digest.3pm
Manifying ../../blib/man3/Digest::file.3pm
Manifying ../../blib/man3/Digest::base.3pm
make[2]: Leaving directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Digest-SHA1-2.10/
Digest-1.10'
gcc -c   -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-
aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/
include/gdbm -O2 -g -pipe -march=i386 -mcpu=i686   -DVERSION=\"2.10\" -
DXS_VERSION=\"2.10\" -fPIC "-I/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE"
   SHA1.c
Running Mkbootstrap for Digest::SHA1 ()
chmod 644 SHA1.bs
rm -f ../blib/arch/auto/Digest/SHA1/SHA1.so
LD_RUN_PATH="" gcc  -shared -L/usr/local/lib SHA1.o  -o ../blib/arch/auto/Digest/
SHA1/SHA1.so     
chmod 755 ../blib/arch/auto/Digest/SHA1/SHA1.so
cp SHA1.bs ../blib/arch/auto/Digest/SHA1/SHA1.bs
chmod 644 ../blib/arch/auto/Digest/SHA1/SHA1.bs
Manifying ../blib/man3/Digest::SHA1.3pm
make[1]: Leaving directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Digest-SHA1-2.10'
/usr/bin/perl "-Iblib/arch" "-Iblib/lib" snmpkey.PL snmpkey
cp snmpkey blib/script/snmpkey
/usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/snmpkey
Manifying blib/man1/snmpkey.1
Manifying blib/man3/Net::SNMP.3pm
[root@jupiter Net-SNMP-5.1.0]# make install
make[1]: Entering directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Crypt-DES-2.03'
make[2]: Entering directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Crypt-DES-2.03/
Digest-HMAC-1.01'
make[2]: Leaving directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Crypt-DES-2.03/
Digest-HMAC-1.01'
make[1]: Leaving directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Crypt-DES-2.03'
make[1]: Entering directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Digest-SHA1-
2.10'
make[2]: Entering directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Digest-SHA1-
2.10/Digest-1.10'
make[2]: Leaving directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Digest-SHA1-2.10/
Digest-1.10'
make[1]: Leaving directory `/home/shinnai/nagios/Net-SNMP-5.1.0/Digest-SHA1-2.10'
Manifying blib/man1/snmpkey.1
Files found in blib/arch: installing files in blib/lib into architecture
 dependent library tree
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Net/SNMP.pm
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Net/SNMP/
Dispatcher.pm
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Net/SNMP/
MessageProcessing.pm
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Net/SNMP/
Message.pm
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Net/SNMP/
Transport.pm
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Net/SNMP/PDU.pm
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Net/SNMP/
Security.pm
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Net/SNMP/
Transport/TCP.pm
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Net/SNMP/
Transport/TCP6.pm
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Net/SNMP/
Transport/UDP.pm
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Net/SNMP/
Transport/UDP6.pm
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Net/SNMP/
Security/USM.pm
Installing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Net/SNMP/
Security/Community.pm
Installing /usr/share/man/man1/snmpkey.1
Installing /usr/share/man/man3/Net::SNMP.3pm
Installing /usr/bin/snmpkey
Writing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/Net/SNMP/.
packlist
Appending installation info to /usr/lib/perl5/5.8.0/i386-linux-thread-multi/
perllocal.pod
[root@jupiter Net-SNMP-5.1.0]#  
  • インストールできた.

9.fpingのインストール

  • 次に,fpingをインストールする.
  • まずはソースファイルを取得する.
[root@jupiter nagios]# wget http://www.fping.com/download/fping.tar
--19:02:46--  http://www.fping.com/download/fping.tar
           => `fping.tar'
Resolving www.fping.com... 66.18.192.241
Connecting to www.fping.com[66.18.192.241]:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 245,760 [application/x-tar]

100%[============================================================================
==================>] 245,760       43.29K/s    ETA 00:00

19:02:51 (44.25 KB/s) - `fping.tar' saved [245,760/245,760]

[root@jupiter nagios]# tar xf fping.tar 
[root@jupiter nagios]# cd fping-2.4b2_to  
[root@jupiter fping-2.4b2_to]# ls -la
total 280
drwxrwxrwx    2 ohnuma   ftp          4096 Nov  4  2001 .
drwxrwxr-x    4 shinnai  shinnai      4096 Aug 29 19:02 ..
-rw-r--r--    1 ohnuma   ftp           716 Mar 15  2001 COPYING
-rw-r--r--    1 ohnuma   ftp         10816 Mar 15  2001 ChangeLog
-rw-r--r--    1 ohnuma   ftp          7802 Apr 26  2001 INSTALL
-rw-r--r--    1 ohnuma   ftp           133 Nov  4  2001 Makefile.am
-rw-r--r--    1 ohnuma   ftp         11134 Nov  4  2001 Makefile.in
-rw-r--r--    1 ohnuma   ftp          2509 Apr 26  2001 README
-rw-r--r--    1 ohnuma   ftp           250 Nov  4  2001 acconfig.h
-rw-r--r--    1 ohnuma   ftp          4396 Nov  4  2001 aclocal.m4
-rw-r--r--    1 ohnuma   ftp           865 Nov  4  2001 config.h.in
-rwxr-xr-x    1 ohnuma   ftp        101827 Nov  4  2001 configure
-rw-r--r--    1 ohnuma   ftp           669 Nov  4  2001 configure.in
-rw-r--r--    1 ohnuma   ftp          7089 Mar 15  2001 fping.8
-rw-r--r--    1 ohnuma   ftp         58982 Jul 21  2001 fping.c
-rw-r--r--    1 ohnuma   ftp          4773 Mar 15  2001 install-sh
-rw-r--r--    1 ohnuma   ftp          4018 Mar 15  2001 linux.h
-rwxr-xr-x    1 ohnuma   ftp          6283 Nov  4  2001 missing
-rw-r--r--    1 ohnuma   ftp           730 Mar 15  2001 mkinstalldirs
-rw-r--r--    1 ohnuma   ftp          1658 Mar 15  2001 options.h
-rw-r--r--    1 ohnuma   ftp            10 Nov  4  2001 stamp-h.in
[root@jupiter fping-2.4b2_to]#  
  • ソースファイルからインストールする.
[root@jupiter fping-2.4b2_to]# ./configure
checking for a BSD compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking whether make sets ${MAKE}... yes
checking for working aclocal... found
checking for working autoconf... found
checking for working automake... found
checking for working autoheader... found
checking for working makeinfo... found
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for executable suffix... 
checking for object suffix... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking how to run the C preprocessor... gcc -E
checking for a BSD compatible install... /usr/bin/install -c
checking for gethostbyname... yes
checking for connect... yes
checking for unistd.h... yes
checking for sys/file.h... yes
checking for stdlib.h... yes
checking for sys/select.h... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
[root@jupiter fping-2.4b2_to]# make     
gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -c fping.c
gcc  -g -O2  -o fping  fping.o  
[root@jupiter fping-2.4b2_to]# make install
make[1]: Entering directory `/home/shinnai/nagios/fping-2.4b2_to'
/bin/sh ./mkinstalldirs /usr/local/sbin
  /usr/bin/install -c  fping /usr/local/sbin/fping
make  install-man8
make[2]: Entering directory `/home/shinnai/nagios/fping-2.4b2_to'
/bin/sh ./mkinstalldirs /usr/local/man/man8
mkdir /usr/local/man
mkdir /usr/local/man/man8
 /usr/bin/install -c -m 644 ./fping.8 /usr/local/man/man8/fping.8
make[2]: Leaving directory `/home/shinnai/nagios/fping-2.4b2_to'
make[1]: Leaving directory `/home/shinnai/nagios/fping-2.4b2_to'
[root@jupiter fping-2.4b2_to]#  
  • インストールされた模様.
  • 動作するか確認する.
[root@jupiter fping-2.4b2_to]# /usr/local/sbin/fping -h

Usage: /usr/local/sbin/fping [options] [targets...]
   -a         show targets that are alive
   -A         show targets by address
   -b n       amount of ping data to send, in bytes (default 56)
   -B f       set exponential backoff factor to f
   -c n       count of pings to send to each target (default 1)
   -C n       same as -c, report results in verbose format
   -e         show elapsed time on return packets
   -f file    read list of targets from a file ( - means stdin) (only if no -g
 specified)
   -g         generate target list (only if no -f specified)
                (specify the start and end IP in the target list, or supply a IP 
netmask)
                (ex. /usr/local/sbin/fping -g 192.168.1.0 192.168.1.255 or 
/usr/local/sbin/fping -g 192.168.1.0/24)
   -i n       interval between sending ping packets (in millisec) (default 25)
   -l         loop sending pings forever
   -m         ping multiple interfaces on target host
   -n         show targets by name (-d is equivalent)
   -p n       interval between ping packets to one target (in millisec)
                (in looping and counting modes, default 1000)
   -q         quiet (don't show per-target/per-ping results)
   -Q n       same as -q, but show summary every n seconds
   -r n       number of retries (default 3)
   -s         print final stats
   -t n       individual target initial timeout (in millisec) (default 500)
   -u         show targets that are unreachable
   -v         show version
   targets    list of targets to check (if no -f specified)

[root@jupiter fping-2.4b2_to]#  
  • 変なディレクトリにインストールされている気がするが,まぁヘルプが表示されたので動くのでしょう.
  • pingとして使ってみる.
[root@jupiter fping-2.4b2_to]# /usr/local/sbin/fping -A www.yahoo.co.jp
210.81.150.5 is alive
[root@jupiter fping-2.4b2_to]# /usr/local/sbin/fping -a www.yahoo.co.jp
www.yahoo.co.jp
[root@jupiter fping-2.4b2_to]#  
  • 動作している模様. なんとなく昔?のSolarisのpingのよう.

10.nagiosプラグインのインストール(再)

  • Net::SNMPと fpingを導入し,nagios pluginを導入する前提条件が揃ったので,再度インストールする.
[root@jupiter nagios]# rpm -ihv nagios-plugins-1.4-2.1.el3.rf.i386.rpm
warning: nagios-plugins-1.4-2.1.el3.rf.i386.rpm: V3 DSA signature: NOKEY, key ID
 6b8d79e6
error: Failed dependencies:
        perl(Net::SNMP) is needed by nagios-plugins-1.4-2.1.el3.rf
        fping is needed by nagios-plugins-1.4-2.1.el3.rf
[root@jupiter nagios]#
  • まだインストールできない.
  • 条件はそろっている筈なので,強制的にインストールする.
[root@jupiter nagios]# rpm -ihv --nodeps  nagios-plugins-1.4-2.1.el3.rf.i386.rpm
warning: nagios-plugins-1.4-2.1.el3.rf.i386.rpm: V3 DSA signature: NOKEY, key ID
 6b8d79e6
Preparing...                ########################################### [100%]
   1:nagios-plugins         ########################################### [100%]
[root@jupiter nagios]#  
  • インストールされたモジュールを確認する.
[root@jupiter nagios]# rpm -ql nagios-plugins-1.4-2.1.el3.rf
/etc/nagios
/etc/nagios/command-plugins.cfg
/usr/lib/nagios/plugins
/usr/lib/nagios/plugins/check_breeze
/usr/lib/nagios/plugins/check_by_ssh
/usr/lib/nagios/plugins/check_cluster
/usr/lib/nagios/plugins/check_cluster2
/usr/lib/nagios/plugins/check_dhcp
/usr/lib/nagios/plugins/check_dig
/usr/lib/nagios/plugins/check_disk
/usr/lib/nagios/plugins/check_disk_smb
/usr/lib/nagios/plugins/check_dns
/usr/lib/nagios/plugins/check_dummy
/usr/lib/nagios/plugins/check_file_age
/usr/lib/nagios/plugins/check_flexlm
/usr/lib/nagios/plugins/check_ftp
/usr/lib/nagios/plugins/check_game
/usr/lib/nagios/plugins/check_hpjd
/usr/lib/nagios/plugins/check_http
/usr/lib/nagios/plugins/check_icmp
/usr/lib/nagios/plugins/check_ifoperstatus
/usr/lib/nagios/plugins/check_ifstatus
/usr/lib/nagios/plugins/check_imap
/usr/lib/nagios/plugins/check_ircd
/usr/lib/nagios/plugins/check_jabber
/usr/lib/nagios/plugins/check_ldap
/usr/lib/nagios/plugins/check_ldaps
/usr/lib/nagios/plugins/check_load
/usr/lib/nagios/plugins/check_log
/usr/lib/nagios/plugins/check_mailq
/usr/lib/nagios/plugins/check_mrtg
/usr/lib/nagios/plugins/check_mrtgtraf
/usr/lib/nagios/plugins/check_mysql
/usr/lib/nagios/plugins/check_nagios
/usr/lib/nagios/plugins/check_nntp
/usr/lib/nagios/plugins/check_nntps
/usr/lib/nagios/plugins/check_nt
/usr/lib/nagios/plugins/check_ntp
/usr/lib/nagios/plugins/check_nwstat
/usr/lib/nagios/plugins/check_oracle
/usr/lib/nagios/plugins/check_overcr
/usr/lib/nagios/plugins/check_pgsql
/usr/lib/nagios/plugins/check_ping
/usr/lib/nagios/plugins/check_pop
/usr/lib/nagios/plugins/check_procs
/usr/lib/nagios/plugins/check_radius
/usr/lib/nagios/plugins/check_real
/usr/lib/nagios/plugins/check_rpc
/usr/lib/nagios/plugins/check_sensors
/usr/lib/nagios/plugins/check_simap
/usr/lib/nagios/plugins/check_smtp
/usr/lib/nagios/plugins/check_snmp
/usr/lib/nagios/plugins/check_spop
/usr/lib/nagios/plugins/check_ssh
/usr/lib/nagios/plugins/check_swap
/usr/lib/nagios/plugins/check_tcp
/usr/lib/nagios/plugins/check_time
/usr/lib/nagios/plugins/check_timeout
/usr/lib/nagios/plugins/check_udp
/usr/lib/nagios/plugins/check_udp2
/usr/lib/nagios/plugins/check_ups
/usr/lib/nagios/plugins/check_users
/usr/lib/nagios/plugins/check_wave
/usr/lib/nagios/plugins/contrib
/usr/lib/nagios/plugins/contrib/check_adptraid.sh
/usr/lib/nagios/plugins/contrib/check_apache.pl
/usr/lib/nagios/plugins/contrib/check_apc_ups.pl
/usr/lib/nagios/plugins/contrib/check_appletalk.pl
/usr/lib/nagios/plugins/contrib/check_arping.pl
/usr/lib/nagios/plugins/contrib/check_asterisk.pl
/usr/lib/nagios/plugins/contrib/check_axis.sh
/usr/lib/nagios/plugins/contrib/check_backup.pl
/usr/lib/nagios/plugins/contrib/check_bgpstate.pl
/usr/lib/nagios/plugins/contrib/check_breeze.pl
/usr/lib/nagios/plugins/contrib/check_cluster.c
/usr/lib/nagios/plugins/contrib/check_cluster2.c
/usr/lib/nagios/plugins/contrib/check_compaq_insight.pl
/usr/lib/nagios/plugins/contrib/check_cpqarray.c
/usr/lib/nagios/plugins/contrib/check_digitemp.pl
/usr/lib/nagios/plugins/contrib/check_disk_snmp.pl
/usr/lib/nagios/plugins/contrib/check_dl_size.pl
/usr/lib/nagios/plugins/contrib/check_dlswcircuit.pl
/usr/lib/nagios/plugins/contrib/check_dns_random.pl
/usr/lib/nagios/plugins/contrib/check_email_loop.pl
/usr/lib/nagios/plugins/contrib/check_fan_cpq_present
/usr/lib/nagios/plugins/contrib/check_fan_fsc_present
/usr/lib/nagios/plugins/contrib/check_flexlm.pl
/usr/lib/nagios/plugins/contrib/check_frontpage
/usr/lib/nagios/plugins/contrib/check_ftpget.pl
/usr/lib/nagios/plugins/contrib/check_hltherm.c
/usr/lib/nagios/plugins/contrib/check_hprsc.pl
/usr/lib/nagios/plugins/contrib/check_http-with-client-certificate.c
/usr/lib/nagios/plugins/contrib/check_hw.sh
/usr/lib/nagios/plugins/contrib/check_ica_master_browser.pl
/usr/lib/nagios/plugins/contrib/check_ica_metaframe_pub_apps.pl
/usr/lib/nagios/plugins/contrib/check_ica_program_neigbourhood.pl
/usr/lib/nagios/plugins/contrib/check_inodes-freebsd.pl
/usr/lib/nagios/plugins/contrib/check_inodes.pl
/usr/lib/nagios/plugins/contrib/check_ipxping.c
/usr/lib/nagios/plugins/contrib/check_javaproc.pl
/usr/lib/nagios/plugins/contrib/check_joy.sh
/usr/lib/nagios/plugins/contrib/check_linux_raid.pl
/usr/lib/nagios/plugins/contrib/check_lmmon.pl
/usr/lib/nagios/plugins/contrib/check_log2.pl
/usr/lib/nagios/plugins/contrib/check_logins.c
/usr/lib/nagios/plugins/contrib/check_lotus.pl
/usr/lib/nagios/plugins/contrib/check_maxchannels.pl
/usr/lib/nagios/plugins/contrib/check_maxwanstate.pl
/usr/lib/nagios/plugins/contrib/check_mem.pl
/usr/lib/nagios/plugins/contrib/check_ms_spooler.pl
/usr/lib/nagios/plugins/contrib/check_mssql.sh
/usr/lib/nagios/plugins/contrib/check_mysql.c
/usr/lib/nagios/plugins/contrib/check_mysql.pl
/usr/lib/nagios/plugins/contrib/check_mysqlslave.pl
/usr/lib/nagios/plugins/contrib/check_nagios.pl
/usr/lib/nagios/plugins/contrib/check_nagios_db.pl
/usr/lib/nagios/plugins/contrib/check_nagios_db_pg.pl
/usr/lib/nagios/plugins/contrib/check_netapp.pl
/usr/lib/nagios/plugins/contrib/check_nmap.py
/usr/lib/nagios/plugins/contrib/check_nwstat.pl
/usr/lib/nagios/plugins/contrib/check_ora_table_space.pl
/usr/lib/nagios/plugins/contrib/check_oracle_instance.pl
/usr/lib/nagios/plugins/contrib/check_oracle_tbs
/usr/lib/nagios/plugins/contrib/check_pcpmetric.py
/usr/lib/nagios/plugins/contrib/check_pfstate
/usr/lib/nagios/plugins/contrib/check_pop3.pl
/usr/lib/nagios/plugins/contrib/check_procl.sh
/usr/lib/nagios/plugins/contrib/check_procr.sh
/usr/lib/nagios/plugins/contrib/check_qmailq.pl
/usr/lib/nagios/plugins/contrib/check_rbl.c
/usr/lib/nagios/plugins/contrib/check_remote_nagios_status.pl
/usr/lib/nagios/plugins/contrib/check_rrd_data.pl
/usr/lib/nagios/plugins/contrib/check_sap.sh
/usr/lib/nagios/plugins/contrib/check_smart.pl
/usr/lib/nagios/plugins/contrib/check_smb.sh
/usr/lib/nagios/plugins/contrib/check_snmp_disk_monitor.pl
/usr/lib/nagios/plugins/contrib/check_snmp_printer.pl
/usr/lib/nagios/plugins/contrib/check_snmp_process_monitor.pl
/usr/lib/nagios/plugins/contrib/check_snmp_procs.pl
/usr/lib/nagios/plugins/contrib/check_sockets.pl
/usr/lib/nagios/plugins/contrib/check_sybase
/usr/lib/nagios/plugins/contrib/check_temp_cpq
/usr/lib/nagios/plugins/contrib/check_temp_fsc
/usr/lib/nagios/plugins/contrib/check_timeout.c
/usr/lib/nagios/plugins/contrib/check_traceroute-pure_perl.pl
/usr/lib/nagios/plugins/contrib/check_traceroute.pl
/usr/lib/nagios/plugins/contrib/check_uptime.c
/usr/lib/nagios/plugins/contrib/check_vcs.pl
/usr/lib/nagios/plugins/contrib/check_wave.pl
/usr/lib/nagios/plugins/contrib/check_wins.pl
/usr/lib/nagios/plugins/contrib/checkciscotemp.pl
/usr/lib/nagios/plugins/negate
/usr/lib/nagios/plugins/urlize
/usr/lib/nagios/plugins/utils.pm
/usr/lib/nagios/plugins/utils.sh
/usr/lib/perl5/vendor_perl/5.8.0/utils.pm
/usr/share/doc/nagios-plugins-1.4
/usr/share/doc/nagios-plugins-1.4/ACKNOWLEDGEMENTS
/usr/share/doc/nagios-plugins-1.4/AUTHORS
/usr/share/doc/nagios-plugins-1.4/BUGS
/usr/share/doc/nagios-plugins-1.4/CHANGES
/usr/share/doc/nagios-plugins-1.4/COPYING
/usr/share/doc/nagios-plugins-1.4/ChangeLog
/usr/share/doc/nagios-plugins-1.4/FAQ
/usr/share/doc/nagios-plugins-1.4/INSTALL
/usr/share/doc/nagios-plugins-1.4/LEGAL
/usr/share/doc/nagios-plugins-1.4/NEWS
/usr/share/doc/nagios-plugins-1.4/README
/usr/share/doc/nagios-plugins-1.4/REQUIREMENTS
/usr/share/doc/nagios-plugins-1.4/SUPPORT
/usr/share/doc/nagios-plugins-1.4/THANKS
/usr/share/doc/nagios-plugins-1.4/command.cfg
/usr/share/locale/de/LC_MESSAGES/nagios-plugins.mo
/usr/share/locale/fr/LC_MESSAGES/nagios-plugins.mo
[root@jupiter nagios]#  
  • いろいろな管理モジュールがあるようだ.

11.死活監視の確認

  • プラグインが入ったので,リロードしてみる.(根拠なし)
[root@jupiter nagios]# /etc/rc.d/init.d/nagios reload
Running configuration check...done
Reloading nagios configuration...done
[root@jupiter nagios]#
  • ログを確認する.
[root@jupiter nagios]# tail /var/log/nagios/nagios.log
[1125311194] HOST ALERT: jupiter;UP;HARD;1;PING OK - Packet loss = 0%, RTA = 0.09
 ms
[1125311194] SERVICE ALERT: jupiter;PING;OK;HARD;1;PING OK - Packet loss = 0%,
 RTA = 0.08 ms
[1125311205] Caught SIGHUP, restarting...
[1125311205] Nagios 1.2 starting... (PID=14167)

[root@jupiter nagios]#  
  • どうにかPINGプラグインが稼働している模様.
  • 監視対象のmarsサーバをシャットダウン等してみる.
[1125373135] SERVICE ALERT: mars;PING;WARNING;SOFT;1;PING WARNING - DUPLICATES 
FOUND! Packet loss = 1%, RTA = 0.25 ms
[1125373195] SERVICE ALERT: mars;PING;OK;SOFT;2;PING OK - Packet loss = 0%, RTA =
 0.19 ms
[1125373808] HOST ALERT: mars;DOWN;SOFT;1;CRITICAL - Host Unreachable 
(210.123.123.128)
[1125373811] HOST ALERT: mars;DOWN;SOFT;2;CRITICAL - Host Unreachable 
(210.123.123.128)
[1125373814] HOST ALERT: mars;DOWN;SOFT;3;CRITICAL - Host Unreachable 
(210.123.123.128)
[1125373817] HOST ALERT: mars;DOWN;SOFT;4;CRITICAL - Host Unreachable 
(210.123.123.128)
[1125373820] HOST ALERT: mars;DOWN;SOFT;5;CRITICAL - Host Unreachable 
(210.123.123.128)
[1125373823] HOST ALERT: mars;DOWN;SOFT;6;CRITICAL - Host Unreachable 
(210.123.123.128)
[1125373826] HOST ALERT: mars;DOWN;SOFT;7;CRITICAL - Host Unreachable 
(210.123.123.128)
[1125373829] HOST ALERT: mars;DOWN;SOFT;8;CRITICAL - Host Unreachable 
(210.123.123.128)
[1125373832] HOST ALERT: mars;DOWN;SOFT;9;CRITICAL - Host Unreachable 
(210.123.123.128)
[1125373835] HOST ALERT: mars;DOWN;HARD;10;CRITICAL - Host Unreachable 
(210.123.123.128)
[1125373835] HOST NOTIFICATION: ujp_pc;mars;DOWN;host-notify-by-email;CRITICAL -
 Host Unreachable (210.123.123.128)
[1125373835] HOST NOTIFICATION: ujp_mobile;mars;DOWN;host-notify-by-
email;CRITICAL - Host Unreachable (210.123.123.128)
  • 障害を検知したので,emailで通知したとログに出ている.
  • すると,次のようなメールがくればOK.
***** Nagios  *****

Notification Type: PROBLEM
Host: mars
State: DOWN
Address: 210.123.123.128
Info: CRITICAL - Host Unreachable (210.123.123.128)

Date/Time: Tue Aug 30 12:50:35 JST 2005
  • 次にサーバの電源を入れてみる.
[1125373835] SERVICE ALERT: mars;PING;CRITICAL;HARD;1;CRITICAL - Plugin timed out
 after 10 seconds
[1125374395] HOST ALERT: mars;UP;HARD;1;PING OK - Packet loss = 0%, RTA = 0.20 ms
[1125374395] HOST NOTIFICATION: ujp_pc;mars;UP;host-notify-by-email;PING OK - 
Packet loss = 0%, RTA = 0.20 ms
[1125374395] HOST NOTIFICATION: ujp_mobile;mars;UP;host-notify-by-email;PING OK -
 Packet loss = 0%, RTA = 0.20 ms
[1125374395] SERVICE ALERT: mars;PING;OK;HARD;1;PING OK - Packet loss = 0%, RTA
 = 0.24 ms
  • pingが復帰(UP)した事を検知し,emailで通知が送信されている.
  • 次のようなメールが来る.
***** Nagios  *****

Notification Type: RECOVERY
Host: mars
State: UP
Address: 210.123.123.128
Info: PING OK - Packet loss = 0%, RTA = 0.20 ms

Date/Time: Tue Aug 30 12:59:55 JST 2005
  • これで一通りの最低限の動作確認が終了.

11.Webインタフェイスの設定

  • nagiosは標準でWebインタフェイスを持っている.
  • httpd.confに次のような設定を行う.
####for  Nagios
ScriptAlias /nagios/cgi-bin/ /usr/lib/nagios/cgi/
<Directory "/usr/lib/nagios/cgi">
        AllowOverride AuthConfig
        Options ExecCGI
        order allow,deny
        allow from all
</Directory>
Alias /nagios /usr/share/nagios/
<Directory "/usr/share/nagios/">
        Options None
        AllowOverride AuthConfig
        order allow,deny
        allow from all
</Directory>
#AddHandler cgi-script .cgi
  • とりあえずは,認証を使わないので,cgi.cfgの設定を変更する.
# Setting this value to 0 will cause the CGIs to *not* use
# authentication (bad idea), while any other value will make them
# use the authentication functions (the default).

#use_authentication=1
use_authentication=0



# DEFAULT USER
# Setting this variable will define a default user name that can
# access pages without authentication.  This allows people within a
# secure domain (i.e., behind a firewall) to see the current status
# without authenticating.  You may want to use this to avoid basic
# authentication if you are not using a sercure server since basic
# authentication transmits passwords in the clear.
#
# Important:  Do not define a default username unless you are
"cgi.cfg" 438L, 17166C written
[root@jupiter nagios]# 
  • use_authenticationを0にしないと,CGI実行エラーとなる.

12.StatusMapにアイコンをつける

  • Webインタフェイスでは,グラフィカルにサイトマップを表示する機能を持っている.
  • しかし,デフォルトではアイコンが?マークになっているのでこれを設定する.
  • まずは,cgi.cfgファイルに,hostextinfo.cfgファイルへのパスを指定する.
[root@jupiter nagios]# tail cgi.cfg         
# as these values are only used by the CGIs.  The core program 
# will read the directives you specify in a resource file.

#xdddb_host=somehost
#xdddb_port=someport
#xdddb_database=somedatabase
#xdddb_username=someuser
#xdddb_password=somepassword

xedtemplate_config_file=/etc/nagios/hostextinfo.cfg
[root@jupiter nagios]#  
  • RPM版でインストールした場合,アイコンは/usr/share/nagios/images/logos以下に格納される.
  • パスは,このlogos以下で指定して,以下の様にhostextinfo.cfgファイルを定義する.
define hostextinfo{
  host_name jupiter
  icon_image base/redhat.jpg
  icon_image_alt RedHat ES3
  vrml_image base/redhat.png
  statusmap_image base/redhat.gd2
  2d_coords 700,700
}
define hostextinfo{
  host_name moon
  icon_image base/win40.jpg
  icon_image_alt Windows 2000
  vrml_image base/win40.png
  statusmap_image base/win40.gd2
  2d_coords 700,700
}

13.Basic認証をつける

  • サーバ構成情報が掲載されて居る為,nagiosへのアクセスはできるだけ部外者が知らない場所にあるべきである.
  • ここでは,BASIC認証をにて,セキュリティを保つ.
  • htpasswdプログラムを探す.
[root@jupiter nagios]#  locate htpasswd|grep bin
/usr/local/apache/bin/htpasswd
[root@jupiter nagios]# 
  • パスワードファイルを作成する.
  • ここでは,nagiosというユーザを作成している.
[root@jupiter nagios]#  /usr/local/apache/bin/htpasswd -c /usr/share/nagios/.passwd nagios
New password: ■■■■■
Re-type new password: ■■■■■
Adding password for user nagios
[root@jupiter nagios]# 
  • httpd.confにBASIC認証で必要な定義を設定する.
Alias /nagios /usr/share/nagios/
<Directory "/usr/share/nagios/">
        Options None
        AllowOverride AuthConfig
        order allow,deny
        allow from all
        AuthType Basic
        AuthName "Enter your name and password"
        AuthUserFile /usr/share/nagios/.passwd
        AuthGroupFile /dev/null
        Require valid-user
</Directory>
  • Apacheをリスタートして有効化する.
[root@jupiter nagios]# /usr/local/apache/bin/apachectl restart
/usr/local/apache/bin/apachectl restart: httpd restarted
[root@jupiter nagios]# 
  • nagiosのページにアクセスしてみる事でパスワード認証画面が表示されれば成功となる.


広告スペース
Google