h1. Setting up NRPE on Debian server {{>toc}} Process: h2. on client server h3. Install NRPE
apt install nagios-nrpe-server nagios-plugins-basic
h3. Edit config file
vim /etc/nagios/nrpe.cfg
* Add IP_v4_of_Nagios_server (currently tuber.palantetech.coop, 45.79.131.186) to @allowed_hosts@ h3. start service
service nagios-nrpe-server restart
h3. check that service is running
netstat -tpln | grep 5666
h3. edit local config to add specified checks
vim /etc/nagios/nrpe_local.cfg
Add NRPE test check, disk check, and Apache SIGTERM check
0 octavia:/etc/nagios# cat nrpe_local.cfg 
######################################
# Do any local nrpe configuration here
######################################

command[check_nrpe_daemon]=/bin/echo "NRPE OK"

# disk checks
command[check_disk_root]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/root

# checking Apache logs for SIGTERM
command[check_apache_sigterm]=/usr/lib/nagios/plugins/check_cat.sh /var/log/apache2/error.log SIGTERM 0

h3. add check_cat In /usr/lib/nagios/plugins create check_cat.sh
#!/bin/bash

#
# checks in files if there are instances of a given string.
# $1 is the file
# $2 is the string
# $3 is the threshold, any more than $3 and it will be Critical

cnt=`cat $1|grep $2|wc -l`
recent=`cat $1|grep $2`
if [ $cnt -le $3 ] ; then
        echo OK - no errors or warnings
        exit 0
fi

echo -e "CRITICAL - String $2 appeared $cnt times\n$recent"
exit 2
Make it executable
chmod 755 /usr/lib/nagios/plugins/check_cat.sh
h3. Make total procs check ignore kernel processes Add -k to the total_procs check in /etc/nagios/nrpe.cfg, and lower the threshold.
command[check_total_procs]=/usr/lib/nagios/plugins/check_procs -k -w 130 -c 180
h3. restart service
service nagios-nrpe-server restart
h2. on monitoring server h3. test connection On Nagios/Icinga server test that that worked:
/usr/lib/nagios/plugins/check_nrpe -H clientserveruri.com -c check_nrpe_daemon
NRPE OK
h3. set up checks. example service config file
###############################################################################
###############################################################################
#
# SERVICE DEFINITIONS
#
###############################################################################
###############################################################################

define service{
        use                     generic-service         ; Inherit default values from a template
        host_name               clientserver
        service_description     SSH
        check_command           check_ssh
        }

define service{
        use                     generic-service         ; Inherit default values from a template
        host_name               clientserver
        service_description     HTTP
        check_command           check_http
        }

define service{
        use                     generic-service         ; Inherit default values from a template
        host_name               clientserver
        service_description     Users
        check_command           check_nrpe_1arg!check_users
        }

define service{
        use                     generic-service         ; Inherit default values from a template
        host_name               clientserver
        service_description     Load
        check_command           check_nrpe_1arg!check_load
        }

define service{
        use                     generic-service         ; Inherit default values from a template
        host_name               clientserver
        service_description     Zombie Processes
        check_command           check_nrpe_1arg!check_zombie_procs
        }

define service{
        use                     generic-service         ; Inherit default values from a template
        host_name               clientserver
        service_description     Total Processes
        check_command           check_nrpe_1arg!check_total_procs
        }

define service{
        use                     generic-service         ; Inherit default values from a template
        host_name               clientserver
        service_description     Disk Space /root
        check_command           check_nrpe_1arg!check_disk_root
        }

define service{
        use                     generic-service         ; Inherit default values from a template
        host_name               clientserver
        service_description     Apache SIGTERM
        check_command           check_nrpe_1arg!check_apache_sigterm
        }
h3. restart monitoring service for icinga
/etc/init.d/icinga restart
sources: http://xmodulo.com/2014/03/nagios-remote-plugin-executor-nrpe-linux.html https://wiki.icinga.org/display/howtos/Setting+up+NRPE+with+Icinga