1. Introduction

So our OpenBSD-based network now includes redundant firewalls, domain name servers, a mail gateway and a web proxy cache. All the services provided by these machines are particularly critical and can't afford even minimal downtime. Redundancy may give us the time to recover from a failure before having angry users trying to knock down our door, but it doesn't free us from the responsibility to detect and solve ongoing problems.

To put it short, it's time to think about monitoring our network! And the following are the perfect ingredients for implementing a full-featured, secure and reliable network monitoring system:

OpenBSD
the operating system for the security paranoid, with only two remote holes in the default install, in a heck of a long time!;
Nagios
the Industry Standard in IT infrastructure monitoring;
Apache
the secure, efficient and extensible server that provides HTTP services in sync with the current HTTP standards.

My pick goes to Nagios for its ease of use, flexibility and extensibility. It also features a very clean and straightforward design, as it is structured into three basic building blocks:

Furthermore, these basic components can be easily extended with external modules, making it easy for Nagios to meet even your most demanding needs! Therefore, after the installation and configuration of the Nagios' core components, we will take a brief look at some of its most popular and useful addons:

If you're intereseted in a more "modern-looking" interface and some extra features, you might want to have a look at Icinga, a fork of Nagios which is also available as an OpenBSD package or port.

This document assumes a good knowledge of OpenBSD, since it doesn't cover basic system management topics such as OS installation, base configuration or packages/ports installation.