Archive for the 'UI' Category

How To Upgrade Nagios XI From Web UI. (How to Upgrade to Nagios XI 5.)

Upgrading to Nagios Xi 5?

If you are using Nagios XI 2014 or later, you can upgrade your Nagios XI instance easily from the web UI, provided your server is connected to the Internet.

Upgrade Nagios XI From Web UI

Here’s how you do it:

From the Nagios XI web interface navigate to the Admin menu, click Check for Updates menu on the left, then click Check For Updates Now. If an update exists, the most recent version will be displayed and you can click the Upgrade to Latest Version button to start the upgrade process.

Note: If you are running the most current version, the Upgrade to Latest Version button will not be displayed.

Check For Updates

Continue reading ‘How To Upgrade Nagios XI From Web UI. (How to Upgrade to Nagios XI 5.)’

Exploring the New JSON CGIs in Nagios Core 4.0.7! (Part 1)

The JSON CGIs, from the JSON branch of core, have been officially released with Nagios Core 4.0.7!

The original design goals were:

  1. To provide all information available in current CGIs in JSON format.
  2. Place the presentation responsibility on the client to minimize network traffic and server load.
  3. Perform operations on the server side that are significantly more easily done there.
  4. Spark community developers to create new Nagios Core UI’s from the easy to work with JSON from the CGIs.

The CGIs provide an API to query object, status, and historical information through GET requests.  They use the same authentication as other CGIs.  Once queried, they return valid JSON that can be parsed into JavaScript objects for client side models and processing.  The API is very robust, providing multiple ways to limit queries – name/descriptions, host/service groups,  update/changes times, among many others.

The three new CGIs are:

  1. objectjson.cgi  (object configuration)
  2. statusjson.cgi  (status information)
  3. archivejson.cgi  (historical logs)

Additionally, a new web app is included – jsonquery.html & jsonquery.js.  This is a small UI for crafting GET requests, it can be used to trial specific parameters for GET requests, or to just explore the api.  It is also the easiest way to get acquainted with the new CGIs.

Continue reading ‘Exploring the New JSON CGIs in Nagios Core 4.0.7! (Part 1)’

Using the New SLA Report within Nagios XI 2014

New to Nagios XI 2014, is the ability to generate reports based on service level agreement (SLA) statistics. In addition to the already included Availability Report, the SLA Report gives you the ability to prove, via already monitored hosts and services within your Nagios system, that you are meeting or exceeding those pesky up-time agreements.

Options for SLA Reporting in Nagios 2014

As per traditional Nagios XI reporting capabilities, there are a wide variety of included time periods that will fit most use cases, as well as the ability to generate reports based on custom time periods. Reports can also be filtered by Host, Hostgroup, and Servicegroup for maximum flexibility when only specific hosts and services need to have reports generated. The final important aspect when generating a report is the modifiable SLA Target value. This allows you up to 5 points of precision when generating reports and can fully calculate the five 9s(99.999%) used in so many cases.

Continue reading ‘Using the New SLA Report within Nagios XI 2014’

Securing Nagios XI Web Front-End with Mod_Security

Today we’re going to walk-through installing a web application firewall for Nagios XI. While not mandatory, this is an important task for anyone with a Nagios XI interface that is accessible through the internet. We do our best to create a secure application and make every effort to protect the data accessible via our software. However, mistakes are made and zero-day exploits do happen, as such, implementing additional measures such as mod_security is a great way to add additional difficulty for any potential attackers.

Mod_Security, is an Apache module that enables a host based web application firewall(waf) before any web traffic actually touches the applications served by Apache. This allows attacks such as sql injection(sqli), cross-site scripting(xss), cross-site request forgery(csrf), and many others to be detected and stopped before they have a chance to effect the web application and back-end databases. In the case of Nagios XI we are most worried about things like sqli, xss, command injection, remote and local file inclusion, and path traversal, as these have the most potential to take or modify vital data or gain access to the server. Mod_Security comes with list of predefined set of rules, that companies like Trustwave and groups like OWASP, regularly submit to and maintain. The module and rules definitions are entirely open source, although there are paid variations of the rules as well.

Setting up Mod_Security to protect your Nagios XI interface is pretty straightforward. The general idea is to install yum provided packages, disable some rules that cause issues with Nagios functionality, and restart Apache. Shall we begin?

1) Install Mod_Security packages.

yum install mod_security_crs-extras mod_security mod_security_crs

2) Download the base exclusion configuration for Apache, and move to the correct location.

cd /tmp

wget http://assets.nagios.com/downloads/nagiosxi/misc/mod_security_excluded_rules.conf

cp /tmp/mod_security_excluded_rules.conf /etc/httpd/conf.d/

3) Restart Apache and verify Nagios is working properly.

service httpd restart

Browse to your Nagios XI server and verify login and that everything looks normal.

Further documentation and troubleshooting can be found at: Integrating Mod_Security with Nagios XI