星期二, 3月 01, 2011

Nagios with openSUSE 11.3 一些小問題修正 with crawlzilla

問題 1:

今天將實驗的主機 實行 crawlzilla
由於實驗的主機裝上 crawlzilla 之後會去修改 /etc/hosts 的對應

所以之前在  /etc/nagios/nrpe.conf 內的command
因為 localhost 對應不正確 會產生 UNKNOWN 的錯誤, 原因在於 localhost 對應會被改掉



# ping localhost
ping: unknown host localhost

# cat /etc/hosts
# Crawlzilla add
192.168.123.204 da4 00:23:F8:5E:8D:34
192.168.123.203 da3 00:11:5B:E9:B4:9E
192.168.123.202 da2 00:11:5B:D1:66:7D
# Crawlzilla End


故原本 /etc/nagios/nrpe.conf 內的
command[check_ssh]=/usr/lib/nagios/plugins/check_ssh localhost
command[check_smtp]=/usr/lib/nagios/plugins/check_smtp localhost


就會產生錯誤

修正方式:
將localhost 直接改為 IP 對應

command[check_ssh]=/usr/lib/nagios/plugins/check_ssh 127.0.0.1
command[check_smtp]=/usr/lib/nagios/plugins/check_smtp 127.0.0.1

修正完之後 check_ssh 就可以解決
但是  check_smtp 還是會出現問題

# /usr/lib/nagios/plugins/check_smtp   127.0.0.1
CRITICAL - Socket timeout after 10 seconds



原因在於  /etc/postfix/main.cf  內的 inet_interfaces 設定已經解析不到 localhost
解決方式
#vi   /etc/postfix/main.cf

將 原本的 inet_interfaces
#inet_interfaces = localhost
改成
inet_interfaces = 127.0.0.1

重開 postfix  就可以解決

#rcpostfix  restart


問題 2:
要透過網頁重新修改 nagios 的相關設定的時候出現 錯誤訊息
Error: Could not open command file '/var/spool/nagios/nagios.cmd' for update!

原因 該檔案的權限設定錯誤

首先觀察 /etc/group

# grep  nag  /etc/group
nagios:!:113:
nagcmd:!:114:wwwrun


從這邊可以知道  httpd 的群組為  nagcmd 這個群組

錯誤的權限為


# ls  -l   /var/spool/nagios/nagios.cmd
prw-rw---- 1 nagios nagios 0 2010-12-21 01:38 /var/spool/nagios/nagios.cmd


這個時候可以發現  httpd 的執行者沒有權限


修正方式 將群組 改為  nagcmd
# chgrp   nagcmd   /var/spool/nagios/nagios.cmd

權限如以下所示


# ls  -l   /var/spool/nagios/nagios.cmd
prw-rw---- 1  nagios  nagcmd 0 2011-03-01 20:00 /var/spool/nagios/nagios.cmd


修改完成之後就可以正確執行 Nagios 的update.

沒有留言: