Linux/CentOSでNagios の変更点


*CentOSでNagios [#vc64123e]

#contents

**先にNagiosユーザを作成しておく。 [#a5713b65]
 # useradd nagios

**GDをインストールしておく。 [#e2648e96]
ステータスマップや、レポートを表示する為にはGDがインストールされている必要がある。
~
[[最新版>http://www.libgd.org/Downloads]]

 # yum install gd-devel


**ダウンロード [#rf0fb0a1]
[[日本語パッチ>http://sourceforge.jp/projects/nagios-jp/releases/]]

 # wget http://jaist.dl.sourceforge.jp/nagios-jp/38828/nagios-3.1.0-ja-utf8.patch.gz

&color(red){※日本語化して使用したい場合、日本語パッチのバージョンに合わせたNagiosソースをダウンロードします。};


[[Nagiosソース>http://sourceforge.net/project/showfiles.php?group_id=26589&package_id=224047]]

 # wget http://jaist.dl.sourceforge.net/sourceforge/nagios/nagios-3.1.0.tar.gz


**インストール [#d48d6451]
 # tar zxvf nagios-3.1.0.tar.gz
 # cd nagios-3.1.0
 # gzip -dc ../nagios-3.1.0-ja-utf8.patch.gz |patch -p0
 # ./configure --prefix=/home/nagios
 # make all
 # make install
 # make install-init
 # make install-commandmode
 # make install-config
 # chkconfig --add nagios


**Nagios Pluginインストール [#e5cb6193]
[[最新版>http://sourceforge.net/projects/nagiosplug/files/nagiosplug/]]

 # wget http://jaist.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.14.tar.gz
 # tar zxvf nagios-plugins-1.4.14.tar.gz 
 # cd nagios-plugins-1.4.14
 # ./configure --prefix=/home/nagios --enable-per-modules
 # make
 # make install


**さざ波フォントインストール [#d4adfea8]
 # wget http://osdn.dl.sourceforge.jp/efont/10087/sazanami-20040629.tar.bz2
 # tar jxvf sazanami-20040629.tar.bz2 
 # mkdir /home/nagios/etc/font
 # cp sazanami-20040629/sazanami-gothic.ttf /home/nagios/etc/font/font.ttf


**httpd.confの修正 [#ndcb9bb0]
 ScriptAlias /nagios/cgi-bin/ /home/nagios/sbin/
 <Directory "/home/nagios/sbin">
 #  SSLRequireSSL
   Options ExecCGI
   AllowOverride None
   Order allow,deny
   Allow from all
 #  Order deny,allow
 #  Deny from all
   AuthName "Nagios Access"
   AuthType Basic
   AuthUserFile /home/nagios/etc/.htpasswd
   Require valid-user
 </Directory>
 
 Alias /nagios/ /home/nagios/share/
 <Directory "/home/nagios/share">
 #  SSLRequireSSL
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
 #  Order deny,allow
 #  Deny from all
    AuthName "Nagios Access"
    AuthType Basic
    AuthUserFile /home/nagios/etc/.htpasswd
    Require valid-user
 </Directory>
 
 AddDefaultCharset UTF-8


**.htpasswd作成 [#ve67af45]
 # htpasswd -c /home/nagios/etc/.htpasswd nagiosadmin
 New password: 
 Re-type new password: 
 Adding password for user nagiosadmin

**Apache再起動 [#t6070ade]
 # /sbin/service httpd restart

**nagios.cfgの編集 [#h76b98fa]
 # vi /home/nagios/etc/nagios.cfg ← nagios.cfg編集
 cfg_dir=/home/nagios/etc/servers ← 行頭の#を削除(コメント解除)
 
 date_format=iso8601 ← 日付書式をYYYY-MM-DD HH:MM:SSにする
これで、「/home/nagios/etc/server」以下のファイルをインクルードするようになる。


**Basic認証を行わない場合 [#fd5f4046]
 # vi /home/nagios/etc/cgi.cfg
 use_authentication=1
          ↓
 use_authentication=0


&color(Blue){※Basic認証でのログインユーザによって権限が決められており、デフォルトの監理ユーザは「nagiosadmin」です。};
~
権限等を変更する場合は「/home/nagios/etc/cgi.cfg」を修正する。
 # grep -n nagiosadmin cgi.cfg 
 119:authorized_for_system_information=nagiosadmin
 131:authorized_for_configuration_information=nagiosadmin
 144:authorized_for_system_commands=nagiosadmin
 157:authorized_for_all_services=nagiosadmin
 158:authorized_for_all_hosts=nagiosadmin
 171:authorized_for_all_service_commands=nagiosadmin
 172:authorized_for_all_host_commands=nagiosadmin

**Nagios設定ファイルの例 [#yc3be5ae]
 # cat /home/nagios/etc/servers/service.cfg 
 #################################################
 # SERVICE                                       #
 #################################################
 define service{
         use                             generic-service
         hostgroup_name                  test
         #host_name                      ma21.ath.cx
         service_description             HTTP
         check_command                   check_http
         notifications_enabled           0        }
 define service{        use                             generic-service
         hostgroup_name                  test
         #host_name                      ma21.ath.cx
         check_command                   check_ssh
         notifications_enabled           0
         }
 define service{
         use                             generic-service
         hostgroup_name                  test
         #host_name                      ma21.ath.cx
         check_command                   check_smtp
         notifications_enabled           0
         }
 
 # cat /home/nagios/servers/test.cfg
 #################################################
 # HOST                                          #
 #################################################
 define host{
         use                     linux-server
         host_name               ma21.ath.cx
         alias                   CentOS
         address                 ma21.ath.cx
         contact_groups          admins
         }
 define host{
         use                     linux-server
         host_name               test.ath.cx
         alias                   CentOS
         address                 test.ath.cx
         contact_groups          admins
         }
 
 #################################################
 # HOST GROUP                                    #
 #################################################
 define hostgroup{
         hostgroup_name  test
         alias           under test
         members         ma21.ath.cx,test.ath.cx
         }


**Web上からnagiosのコマンドを実行できるようにするには。。。 [#ee17ca84]

こんなエラーでWeb上からコマンドが発行できない。
 エラー: コマンドファイル'/home/nagios/var/rw/nagios.cmd'をアップデートできません。
 
 
 外部コマンドファイルもしくは、ディレクトリのパーミッションに誤りがある可能性があります。パーミッションが適切かどうか確認してください。 
 
 
 コマンドを処理する際にエラーが発生しました。


***手順 [#t7a72acc]
 # /usr/sbin/groupadd nagiocmd
 # /usr/sbin/usermod -G nagioscmd nagios
 # /usr/sbin/usermod -G nagiocsmd apache
 # mkdir /home/nagios/var/rw 
 # chmod nagios:nagioscmd /home/nagios/var/rw
 # chmod ug+rwx /home/nagios/rw
 # chmod g+s /home/nagios/rw
 

・Apache、Nagiosを再起動
 # /sbin/service httpd restart
 # /sbin/service nagios restart


**設定のチェックコマンド [#q1a02c41]
 # /home/nagios/bin/nagios -v /home/nagios/etc/nagios.cfg

結果がこれなら正常です。
 Total Warnings: 0
 Total Errors:   0

**Nagios終了ステータス [#w67cce9c]
&#8226;0:OK
&#8226;1:WARNING
&#8226;2:CRITICAL
&#8226;3:UNKNOWN

**3Dステータスマップを表示するにはVRMLブラウザというものが必要になります。 [#bff60f36]

[[Cortona>http://www.parallelgraphics.com/cortona]]など

http://www.6996.jp/wiki/index.php?Nagios


**nagios.cfgの日本語訳 [#na646f0f]
[[http://www.on-sky.net/~hs/diary/images/nagios.cfg-sample.ja.txt]]