How to Install Nagios Monitoring Tool on RHEL 8

Nagios Core is an open source IT infrastructure monitoring and alerting platform built using PHP. It is used for monitoring mission-critical IT infrastructure components such as network infrastructure, servers, network protocols, system metrics, applications, and services.

In addition, Nagios Core supports alerting (when critical infrastructure components fail and recover), via email, SMS, or custom script, and reporting of the historical record of events, outages, notifications, and alert response for later analysis.

Importantly, Nagios Core ships with multiple API’s that provide integration with existing or third-party applications as well as community-developed add-ons.

This article will walk you through the process of installing Nagios Core 4.4.3 and Nagios Plugins 2.2.1 in RHEL 8 Linux distribution.

Requirements:

  1. RHEL 8 with Minimal Installation
  2. RHEL 8 with RedHat Subscription Enabled
  3. RHEL 8 with Static IP Address

Step 1: Install Required Dependencies

1. To install Nagios Core package from sources, you need to install following dependencies including Apache HTTP server and PHP using the default dnf package manager.

# dnf install -y gcc glibc glibc-common perl httpd php wget gd gd-devel

2. Next, start the HTTPD service for now, enable it to automatically start at system boot and check its status using the systemctl commands.

# systemctl start httpd
# systemctl enable httpd
# systemctl start httpd

Step 2: Downloading, Compiling and Installing Nagios Core

3. Now download the Nagios Core source package using wget command, extract it and move into the extracted directory as shown.

# wget -O nagioscore.tar.gz https://github.com/NagiosEnterprises/nagioscore/archive/nagios-4.4.3.tar.gz
# tar xzf nagioscore.tar.gz
# cd nagioscore-nagios-4.4.3/

4. Next, run the following commands to configure the source package and build it.

# ./configure
# make all

5. After that create the Nagios User and Group, and add the Apache user to the Nagios Group as follows.

# make install-groups-users
# usermod -a -G nagios apache

6. Now install the binary files, CGIs, and HTML files with using the following commands.

# make install
# make install-daemoninit

7. Next, run the following commands to install and configure the external command file, a sample configuration file and the Apache-Nagios configuration file.

# make install-commandmode		#installs and configures the external command file
# make install-config			#installs the *SAMPLE* configuration files.  
# make install-webconf		        #installs the Apache web server configuration files. 

8. In this step, you need to secure the Nagios Core web console using HTTP basic authentication. So, you’ll need to create an Apache user account to be able to log into Nagios – this account will act as the Nagios Administrator account.

# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Step 3: Installing Nagio Plugins in RHEL 8

9. Next, you need to install necessary Nagios plugins. But before you download and install the Nagios plugins, you need to install the required packages for compiling and building the plugin package.

# dnf install -y gcc glibc glibc-common make gettext automake autoconf wget openssl-devel net-snmp net-snmp-utils

10. Then download and extract the latest version of the Nagios Plugins using the following commands.

# wget --no-check-certificate -O nagios-plugins.tar.gz https://github.com/nagios-plugins/nagios-plugins/archive/release-2.2.1.tar.gz
# tar zxf nagios-plugins.tar.gz

11. Move into the extracted directory, compile, build and install the Nagios Plugins install the Nagios Plugins as follows.

# cd nagios-plugins-release-2.2.1/
# ./tools/setup
# ./configure
# make
# make install

12. At this point, you have set up the Nagios Core service and configured it to work with the Apache HTTP server. Now you need to restart the HTTPD service. Also, start and enable the Nagios service and check if it is up and running as follows.

# systemctl restart httpd.service
# systemctl start nagios.service
# systemctl start nagios.service
# systemctl start nagios.service
Start Nagios Service

Start Nagios Service

13. If you have firewall running, you need to open port 80 in the firewall.

# firewall-cmd --permanent --zone=public --add-port=80/tcp
# firewall-cmd --reload

14. Next disable SELinux which is in enforcing mode by default or you can set it in permissive mode.

# sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config
# setenforce 0

Step 4: Accessing Nagios Web Console in RHEL 8

15. In this final step, you can now access the Nagios web console. Open your web browser and point it to Nagios Core web directory, for example (replace the IP address or FDQN with your own values).

http://192.168.56.100/nagios
OR
http://tecmint.lan/nagios

You will be prompted to enter a username and password to access the web interface. Provide the credentials you created in point 8 (i.e username is nagiosadmin and the password).

Nagios Login

Nagios Login

After a successful login, you will be presented with the Nagios interface as shown in the following screenshot.

Nagios Web Console

Nagios Web Console

Congratulations! You have successfully installed Nagios Core on your RHEL 8 server. If you have any questions, use the feedback form below to reach us.

Read Also:

  1. How to Add Linux Host to Nagios Monitoring Server
  2. How to Add Windows Host to Nagios Monitoring Server
Best Affordable Linux and WordPress Services For Your Business
Outsource Your Linux and WordPress Project and Get it Promptly Completed Remotely and Delivered Online.

If You Appreciate What We Do Here On TecMint, You Should Consider:

  1. Stay Connected to: Twitter | Facebook | Google Plus
  2. Subscribe to our email updates: Sign Up Now
  3. Get your own self-hosted blog with a Free Domain at ($3.45/month).
  4. Become a Supporter - Make a contribution via PayPal
  5. Support us by purchasing our premium books in PDF format.
  6. Support us by taking our online Linux courses

We are thankful for your never ending support.

Aaron Kili

Aaron Kili is a Linux and F.O.S.S enthusiast, an upcoming Linux SysAdmin, web developer, and currently a content creator for TecMint who loves working with computers and strongly believes in sharing knowledge.

Your name can also be listed here. Got a tip? Submit it here to become an TecMint author.

RedHat RHCE and RHCSA Certification Book
Linux Foundation LFCS and LFCE Certification Preparation Guide

You may also like...

Got something to say? Join the discussion.

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.