UNIX Apache 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-apache.xml

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

  • Plugin scripts (installed on the remote monitored server): check_apache.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.

If you are communicating to a remote host that is behind a firewall, make sure the SSH port 22 is allowed to access the remote host. The Apache configuration file,httpd.conf must be modified to supportmod_statusdirective. The following is an example of these configuration statements.

# Allow server status reports generated by mod_status
# with the URL of [http://servername/server-status]
# Change the ".example.com" to match your domain to enable.
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from example.com
</Location>

You can then test this configuration by opening a page to the URL:

http://<hostIP>/server-status

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_apache

  • check_by_ssh_apache

  • $USER1$/check_by_ssh -H $HOSTADDRESS$ -t 60 -l "$USER17$" -C "$USER22$/check_apache.pl -H $HOSTADDRESS$"

Checks the Apache server status page for load statistics.No arguments.

  • 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