I could use some help from the board experts! I have nagios 2.5 installed on FC4 (IP 192.168.254.80) and running fine. I also loaded the nagios-plugins-1.4.3 package on the local nagios server. I’m attempting to monitor cpu, memory and disk space on a remote windows XP box (on the same subnet) for testing purposes, and downloaded nrpe_nt.0.8b-bin-NoSSL and the nrpe_nt plugins and ran nrpe_nt.exe -i at the command prompt which installed the NRPE service successfully. I then configured the nrpe.cfg on the windows server defining the nrpe plugins I want to use. (Please see the nrpe.cfg at the end of my post.) I’m able to start the nrpe daemon on the Nagios server successfully and I’m able to start the nrpe service on the windows box and tested the following command locally:
c:>c:\nagios\nrpe_nt.0.8b-bin-NoSSL\bin\diskspace_nrpe_nt.exe c: 70 90
Used: 7013 MB <18%> Free: 31141 MB <81%>
However when I try and execute the check_nrpe command from the Nagios server I receive the following error:
[root@NOCLI-NAGIOS001 plugins]# ./check_nrpe -H 192.168.254.26 -p 5666 -c check_disk_c
CHECK_NRPE: Socket timeout after 10 seconds.
I also see the following error in the debug log on the windows box:
2006-07-31 15:44:58; 888; 7;Starting server thread…
2006-07-31 15:44:58; 3320; 7;Binding to all interfaces
2006-07-31 15:44:58; 3320; 6;Listening on port 5666
2006-07-31 15:45:40; 3016; 4;Error: Socket read failed (NonSSL)…
I can telnet to the windows server on port 5666 and ran an ethereal trace on the Nagios box but didn’t see any errors.
I defined the command[nt_check_disk_c]=C:\nagios\nrpe_nt.0.8b-bin-NoSSL\bin\diskspace_nrpe_nt.exe c: 70 90 on the nagios servers /etc/nagios/nrpe.cfg and also created the service check commands in checkcommands.cfg:
(CUT FROM checkcommands.cfg)
‘nt_check_disk’ command NRPE_NT defination
define command{
command_name nt_check_disk_c
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c nt_check_disk_c
}
Not sure where the problem is. Any help is greatly appreciated!
(NRPE.cfg from Windows Bo:evil::
PORT NUMBER
Port number we should wait for connections on.
server_port=5666
ALLOWED HOST ADDRESSES
This is a comma-delimited list of IP address of hosts that are allowed
to talk to the NRPE daemon.
NOTE: The daemon only does rudimentary checking of the client’s IP
address.
allowed_hosts=192.168.254.80
COMMAND ARGUMENT PROCESSING
This option determines whether or not the NRPE_NT service will allow clients
to specify arguments to commands that are executed
*** ENABLING THIS OPTION IS A SECURITY RISK! ***
Values: 0=do not allow arguments, 1=allow command arguments
dont_blame_nrpe=0
DEBUGGING OPTION
This option determines whether or not debugging messages are logged to the
eventlog.
Values: 0=debugging off, 1=debugging on
debug=1
COMMAND TIMEOUT
This specifies the maximum number of seconds that the NRPE_NT service will
allow plugins to finish executing before killing them off.
command_timeout=60
INCLUDE CONFIG FILE
This directive allows you to include definitions from an external config file.
#include=<somefile.cfg>
INCLUDE CONFIG DIRECTORY
This directive allows you to include definitions from config files (with a
.cfg extension) in one or more directories (with recursion).
#NOTE: This option is currently ignored with NRPE_NT!
#include_dir=
#include_dir=
LOGLEVEL / NRPE_NT only
severity of events logged to nrpe_nt.log if debug = 1
Useful Values:
1: Log Critical
4: Log Errors (Default)
6: Log Informational
7: Log Debug
loglevel=7
USE_WIN_METACHARS / NRPE_NT only
use NASTY_METACHARS_WIN, allow \ and " to allow easier passing of
pathnames as parameter
Values: 0=use default NASTY_METACHARS definition, 1=use relaxed NASTY_METACHARS_WIN definition
use_win_metachars=1
COMMAND DEFINITIONS
Command definitions that this daemon will run. Definitions
are in the following format:
command<command_name>]=<command_line>
When the daemon receives a request to return the results of <command_name>
it will execute the command specified by the <command_line> argument.
Unlike Nagios, the command line cannot contain macros - it must be
typed exactly as it should be executed.
Note: Any plugins that are used in the command lines must reside
on the machine that this daemon is running on! The examples below
assume that you have plugins installed in a D:\NRPE_NT
directory. Also note that you will have to modify the definitions below
to match the argument format the plugins expect. Remember, these are
examples only!
The following examples use no command arguments…
command[nt_check_disk_c]=C:\nagios\nrpe_nt.0.8b-bin-NoSSL\bin\diskspace_nrpe_nt.exe c: 70 90
#command[nt_check_disk_d]=C:\nagios\nrpe_nt.0.8b-bin-NoSSL\bin\diskspace_nrpe_nt.exe d: 70 90
#command[nt_check_disk_e]=C:\nagios\nrpe_nt.0.8b-bin-NoSSL\bin\diskspace_nrpe_nt.exe e: 70 90
command[nt_cpuload]=C:\nagios\nrpe_nt.0.8b-bin-NoSSL\bin\cpuload_nrpe_nt.exe 50 80
command[nt_memload]=C:\nagios\nrpe_nt.0.8b-bin-NoSSL\bin\memload_nrpe_nt.exe 70 90
command[nt_service]=C:\nagios\nrpe_nt.0.8b-bin-NoSSL\bin\service_nrpe_nt.exe "Event Log,DNS Client"
command[nt_eventlog]=C:\nagios\nrpe_nt.0.8b-bin-NoSSL\bin\eventlog_nrpe_nt.exe -m 7200 -s “Service Control Manager”
The following examples allow user-supplied arguments and can
only be used if NRPE_NT was compiled with support for
command arguments AND the dont_blame_nrpe directive in this
config file is set to ‘1’…
#command[check_arg]=D:\NRPE_NT\testarg.cmd $ARG1$
#command[check_arg]=D:\NRPE_NT\testarg.exe -H $ARG1$ -p $ARG2$