UNIX Secure Web Server (via SSH)

Description

Monitors a UNIX Apache web server. HTTP and HTTPS services are monitored remotely. A monitoring script is installed on the remote server and called from the GroundWork server using the SSH protocol. The Apache configuration must be changed to allow the monitoring server to check the Apache server status. Please reference the SSH Monitoring document when using this profile.

Profile Package

This package includes the following files:

  • Profile definition: service-profile-ssh-https.xml

  • Plugin scripts (installed on the GroundWork server): check_http, check_by_ssh

  • Plugin script (installed on the remote monitored server): check_procs.pl

Installation

GroundWork Monitor includes many monitoring profiles for a variety of devices, systems and applications. Some profiles are pre-imported on a new GroundWork installation and others are distributed with the product. The configuration tool is used to import updated profiles and profiles that require additional setup, services can also be imported, see Importing Profiles.

Services Configuration

For plugin details you can run the service help command from within the nagios container. For example: Get to the nagios container from the gw8 directory: docker-compose exec -u 1000 nagios bash, then to the libexec directory: cd /usr/local/nagios/libexec, and enter a service help command e.g., ./check_snmp --help to receive help content.

Service/Command Line/Plugin CommandCommand Parameters

This column lists the Service Definition name, Service Command name with arguments to be passed to the plugin, and the Plugin Command line which is the plugin script called by Nagios for the service.

Command parameters are in the configuration services section with the following names and default values.

  • ssh_process_cmd

  • check_by_ssh_process_cmd!1:1!1:1!named

  • $USER1$/check_by_ssh -H $HOSTADDRESS$ -t 60 -l "$USER17$" -C "$USER22$/check_procs -w $ARG1$ -c $ARG2$ -C $ARG3$"

Check for the number of specified processes running

  • $ARG1$: Warning threshold, default is 1:1

  • $ARG2$: Critical threshold, default is 1:1

  • $ARG3$: Process command, default is "named"

  • tcp_http_port

  • check_http!3!5!80

  • $USER1$/check_http -t 60 -H $HOSTADDRESS$ -w "$ARG1$" -c "$ARG2$" -p "$ARG3$"

Uses check_http plugin to get a web page from $HOSTADDRESS$

  • $ARG1$: Warning seconds, default warning threshold for page load time is 3 seconds

  • $ARG2$: Critical seconds, default critical threshold for page load time is 5 seconds

  • $ARG3$: Web server port, default port is 80

  • tcp_https

  • check_https!3!5

  • $USER1$/check_http -t 60 -H $HOSTADDRESS$ -w "$ARG1$" -c "$ARG2$" -S

Uses check_http plugin with the -S (SSL) switch to get a web page from $HOSTADDRESS$

  • $ARG1$: Warning seconds, default warning threshold for page load time is 3 seconds

  • $ARG2$: Critical seconds, default critical threshold for page load time is 5 seconds

Related Resources