Support forum for Nagios Core, Nagios Plugins, NCPA, NRPE, NSCA, NDOUtils and more. Engage with the community of users including those using the open source solutions.
We have a need to monitor specific nodes through NRPE due to access restrictions.
We have configured the NRPE (3.0.1) on Centos 5.5 with following options:
The NRPE was installed with the --enable-command-args configuration parameter.
The NRPE seems to work otherwise, but something goes wrong in the process:
./check_nrpe -H 1.1.1.1 -t 30 -c check_all_interfaces -a 2.2.2.2 public
NRPE: Command 'check_all_interfaces!2.2.2.2!public' not defined
That would need that we would require to define 200+ commands in the nrpe config for each and every node, unless this argument handling get's solved somehow.
jiikettu@gmail.com wrote:
The NRPE seems to work otherwise, but something goes wrong in the process:
./check_nrpe -H 1.1.1.1 -t 30 -c check_all_interfaces -a 2.2.2.2 public
NRPE: Command 'check_all_interfaces!2.2.2.2!public' not defined
This error:
NRPE: Command 'check_all_interfaces!2.2.2.2!public' not defined
Usually means that you're trying to call a command like:
command[check_all_interfaces!2.2.2.2!public]=/usr/local/nagios/libexec/check_all_interfaces.pl -H $ARG1$ -C $ARG2$
Which is extremely unlikely, I've not seen anything like this before.
Can you post your entire nrpe.cfg file from the remote host please.
Also, what is the output of this from the remote host:
# su nagios
$ /usr/local/nagios/libexec/check_all_interfaces.pl -H x.x.x.x -C public
OK: Total in errors: 0, Total out errors: 0, Total in discards: 0, Total out discards: 0
# ./check_nrpe --help
NRPE Plugin for Nagios
Copyright (c) 1999-2008 Ethan Galstad (nagios@nagios.org)
Version: 3.0.1
Last Modified: 09-08-2016
License: GPL v2 with exemptions (-l for more info)
SSL/TLS Available: OpenSSL 0.9.6 or higher required
Usage: check_nrpe -H <host> [-2] [-4] [-6] [-n] [-u] [-V] [-l] [-d <dhopt>]
[-P <size>] [-S <ssl version>] [-L <cipherlist>] [-C <clientcert>]
[-K <key>] [-A <ca-certificate>] [-s <logopts>] [-b <bindaddr>]
[-f <cfg-file>] [-p <port>] [-t <interval>:<state>]
[-c <command>] [-a <arglist...>]
Options:
<host> = The address of the host running the NRPE daemon
-2 = Only use Version 2 packets, not Version 3
-4 = bind to ipv4 only
-6 = bind to ipv6 only
-n = Do no use SSL
-u = (DEPRECATED) Make timeouts return UNKNOWN instead of CRITICAL
-V = Show version
-l = Show license
<dhopt> = Anonymous Diffie Hellman use:
0 = Don't use Anonymous Diffie Hellman
(This will be the default in a future release.)
1 = Allow Anonymous Diffie Hellman (default)
2 = Force Anonymous Diffie Hellman
<size> = Specify non-default payload size for NSClient++
<ssl ver> = The SSL/TLS version to use. Can be any one of: SSLv2 (only),
SSLv2+ (or above), SSLv3 (only), SSLv3+ (or above),
TLSv1 (only), TLSv1+ (or above DEFAULT), TLSv1.1 (only),
TLSv1.1+ (or above), TLSv1.2 (only), TLSv1.2+ (or above)
<cipherlist> = The list of SSL ciphers to use (currently defaults
to "ALL:!MD5:@STRENGTH". WILL change in a future release.)
<clientcert> = The client certificate to use for PKI
<key> = The private key to use with the client certificate
<ca-cert> = The CA certificate to use for PKI
<logopts> = SSL Logging Options
<bindaddr> = bind to local address
<cfg-file> = configuration file to use
[port] = The port on which the daemon is running (default=5666)
[command] = The name of the command that the remote daemon should run
[arglist] = Optional arguments that should be passed to the command,
separated by a space. If provided, this must be the last
option supplied on the command line.
NEW TIMEOUT SYNTAX
-t <interval>:<state>
<interval> = Number of seconds before connection times out (default=10)
<state> = Check state to exit with in the event of a timeout (default=CRITICAL)
Timeout state must be a valid state name (case-insensitive) or integer:
(OK, WARNING, CRITICAL, UNKNOWN) or integer (0-3)
Note:
This plugin requires that you have the NRPE daemon running on the remote host.
You must also have configured the daemon to associate a specific plugin command
with the [command] option you are specifying here. Upon receipt of the
[command] argument, the NRPE daemon will run the appropriate plugin command and
send the plugin output and return code back to *this* plugin. This allows you
to execute plugins on remote hosts and 'fake' the results to make Nagios think
the plugin is being run locally.