Nagios Network Monitoring System Setup in Ubuntu
Posted by admin on December 11th, 2007
Email This Post
WARNING: “this tutorial is meant for users that have a good knowledge of development tools and manual installation process and will be hardly supported by the Ubuntu community. Standard supported procedure are to install packages from the official repositories, not to compile them by hand”.
Install Nagios in Ubuntu
This Tutorial is intended to provide you with simple instructions on how to install Nagios from source (code) on Ubuntu and have it monitoring your local machine inside of 20 minutes.
If you follow these instructions, here’s what you’ll end up with:
Nagios and the plugins will be installed underneath /usr/local/nagios
Nagios will be configured to monitor a few aspects of your local system (CPU load, disk usage, etc.)
The Nagios web interface will be accessible at http://localhost/nagios/
Required Packages
Make sure you’ve installed the following packages on your Ubuntu installation before continuing.
Apache 2
GCC compiler and development libraries
GD development libraries
Preparing Your System
First you need to install the following packages
sudo apt-get install apache2
sudo apt-get install build-essential
sudo apt-get install libgd2-xpm-dev
1) Create Account Information
Become the root user.
sudo -s
Create a new nagios user account and give it a password.
#/usr/sbin/useradd nagios
#passwd nagios
On Ubuntu server edition , you will need to also add a nagios group (it’s not created by default). You should be able to skip this step on desktop editions of Ubuntu.
#/usr/sbin/groupadd nagios
#/usr/sbin/usermod -G nagios nagios
Create a new nagcmd group for allowing external commands to be submitted through the web interface. Add both the nagios user and the apache user to the group.
#/usr/sbin/groupadd nagcmd
#/usr/sbin/usermod -G nagcmd nagios
#/usr/sbin/usermod -G nagcmd www-data
2) Download Nagios and the Plugins
Create a directory for storing the downloads.
#mkdir ~/downloads
#cd ~/downloads
Download the source code tarballs of both Nagios and the Nagios plugins (visit http://www.nagios.org/download/ for links to the latest versions). At the time of writing, the latest versions of Nagios and the Nagios plugins were 2.10 and 1.4.10, respectively.
#wget http://switch.dl.sourceforge.net/sourceforge/nagios/nagios-2.10.tar.gz
#wget http://kent.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.10.tar.gz
3) Compile and Install Nagios
Extract the Nagios source code tarball.
#cd ~/downloads
#tar xzf nagios-2.10.tar.gz
#cd nagios-2.10
Run the Nagios configure script, passing the name of the group you created earlier like so:
#./configure --with-command-group=nagcmd
Compile the Nagios source code.
#make all
Install binaries, init script, sample config files and set permissions on the external command directory.
#make install
#make install-init
#make install-config
#make install-commandmode
Don’t start Nagios yet - there’s still more that needs to be done…
4) Customize Configuration
Sample configuration files have now been installed in the /usr/local/nagios/etc directory. These sample files should work fine for getting started with Nagios. You’ll need to make just one change before you proceed…
Edit the /usr/local/nagios/etc/objects/contacts.cfg config file with your favorite editor and change the email address associated with the nagiosadmin contact definition to the address you’d like to use for receiving alerts.
#vi /usr/local/nagios/etc/objects/contacts.cfg
5) Configure the Web Interface
Install the Nagios web config file in the Apache conf.d directory.
#make install-webconf
Create a nagiosadmin account for logging into the Nagios web interface. Remember the password you assign to this account - you’ll need it later.
#htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
Restart Apache to make the new settings take effect.
#/etc/init.d/apache2 reload
6) Compile and Install the Nagios Plugins
Extract the Nagios plugins source code tarball.
#cd ~/downloads
#tar xzf nagios-plugins-1.4.10.tar.gz
#cd nagios-plugins-1.4.10
Compile and install the plugins.
#./configure --with-nagios-user=nagios --with-nagios-group=nagios
#make
#make install
7) Start Nagios
Configure Nagios to automatically start when the system boots.
#ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios
Verify the sample Nagios configuration files.
#/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
If there are no errors, start Nagios.
#/etc/init.d/nagios start
Login to the Web Interface
You should now be able to access the Nagios web interface at the URL below. You’ll be prompted for the username (nagiosadmin) and password you specified earlier.
http://localhost/nagios/
Click on the “Service Detail” navbar link to see details of what’s being monitored on your local machine. It will take a few minutes for Nagios to check all the services associated with your machine, as the checks are spread out over time.
9) Other Modifications
If you want to receive email notifications for Nagios alerts, you need to install the mailx (Postfix) package.
#apt-get install mailx
You’ll have to edit the Nagios email notification commands found in /usr/local/nagios/etc/commands.cfg and change any ‘/bin/mail’ references to ‘/usr/bin/mail’. Once you do that you’ll need to restart Nagios to make the configuration changes live.
#/etc/init.d/nagios restart
If you want to be notified the next time we write something please subscribe to our RSS feed.Thanks for Visiting!


December 11th, 2007 at 2:48 pm
What are your reasons for compiling nagios from source, rather than just installing the nagios2 package?
December 11th, 2007 at 2:57 pm
you can install latest version of nagios with bug fixes
December 12th, 2007 at 9:11 am
http://www.centreon.com/
an powerful front-end for Nagios
December 14th, 2007 at 3:41 am
Ryan:
What’s the point of installing nagios2 package when you can compile from source?
December 15th, 2007 at 3:52 am
sudo apt-get install libgd2-dev
This does not install, I get the following error:
Reading package lists… Done
Building dependency tree
Reading state information… Done
Package libgd2-dev is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package libgd2-dev has no installation candidate
Not sure where to go from here.
December 15th, 2007 at 11:06 am
try to run the following package
sudo apt-get install libgd2-xpm-dev
January 21st, 2008 at 2:01 am
I got this error message…..Please help …..
root@ubuntu:~# apt-get install libgd2-xpm-dev
Reading package lists… Done
Building dependency tree
Reading state information… Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
Since you only requested a single operation it is extremely likely that
the package is simply not installable and a bug report against
that package should be filed.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
libgd2-xpm-dev: Depends: libfontconfig1-dev but it is not installable
Depends: libfreetype6-dev but it is not installable
Depends: libjpeg62-dev but it is not installable
Depends: libx11-dev but it is not installable
Depends: libxpm-dev but it is not installable
E: Broken packages
root@ubuntu:~#
January 21st, 2008 at 8:08 am
if you are installing in ubuntu 7.10 gutsy this package should be there please let me know which version of ubuntu you are trying to install
February 5th, 2008 at 10:11 pm
i’ve installed nagios on my ubuntu 7.04 and everything is going all right ecept one thing. When i type adress in my webbrowser eg. http://localhost/nagios then passwd for admin i’ll see webpage of nagios software but when i click on the right menu i have some trobles like:
”
It appears as though you do not have permission to view information for any of the services you requested…
If you believe this is an error, check the HTTP server authentication requirements for accessing this CGI
and check the authorization options in your CGI configuration file.”
Please help - what is this???
February 11th, 2008 at 7:18 am
Also requires glib2.0:
sudo aptitude install libglib2.0-devFebruary 11th, 2008 at 7:19 am
MAYDAY!!!!!!!!!!!
The Captcha plugin makes errors: (is Akismet not powerful enough for you?)
———-
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/debianad/public_html/ubuntugeek/wp-content/plugins/SK2/sk2_second_chance.php:2) in /home/debianad/public_html/ubuntugeek/wp-content/plugins/pxsmail.php on line 1
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/debianad/public_html/ubuntugeek/wp-content/plugins/SK2/sk2_second_chance.php:2) in /home/debianad/public_html/ubuntugeek/wp-content/plugins/pxsmail.php on line 1
Warning: Cannot modify header information - headers already sent by (output started at /home/debianad/public_html/ubuntugeek/wp-content/plugins/SK2/sk2_second_chance.php:2) in /home/debianad/public_html/ubuntugeek/wp-content/plugins/what_would_seth_godin_do.php on line 86
Kind-a-Captcha
Please type the code below in the input field and click on Submit (characters can only be letters from A to F and digits from 0 to 9).
captcha_img
February 12th, 2008 at 12:36 pm
Hi, i have two problems installing nagios on Ubuntu Server 7.10
1)in the line
#vi /usr/local/nagios/etc/objects/contacts.cfg
–the directory /Objects and contacts.cfg doesn’t exists
2)And in the line
#/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
–like the another one says theres no such file or directory!!
i follow every step in the guide…!! and i don’t know linux well!!
Thanks!!!!!!!!!
February 12th, 2008 at 12:46 pm
i almost forget..
can’t find executable file /usr/local/nagios/bin/naigos
February 21st, 2008 at 7:05 pm
I am having exactly the same problems as Chogar any idea where these directories should have been created?
February 25th, 2008 at 3:50 am
I was having the same problems as Chogar and Simon when installing nagios-2.10 on an Ubuntu 7.10 VM. The install worked fine with nagios-3.0rc2. I am giving up on 2.10 (for now) and will focus on 3.0rc2.
Here is the Ubuntu quick start for nagios-3.0rc2: http://nagios.sourceforge.net/docs/3_0/quickstart-ubuntu.html
April 15th, 2008 at 7:50 am
It was an easy set up with this great howto. But after my install I am getting the following error.
[04-14-2008 21:25:38] SERVICE ALERT: localhost;SSH;CRITICAL;HARD;4;Connection refused
Any ideas on how to fix it? Thanks.
May 14th, 2008 at 5:20 pm
@Bill - sudo apt-get install openssh-server
Suggests you’ve installed nagios onto an Ubuntu desktop install rather than Server.
June 5th, 2008 at 12:00 pm
kudos great install article. thanks!
June 11th, 2008 at 3:20 pm
very, very good… thanks for all… regards from Brazil…
June 19th, 2008 at 3:28 am
Hi,
I was having hard time in setting up email relay for nagios. I’m using SSMTP.. I was able to send email and received it but nagios is not using SSMTP. I don’t know if i missed something with the configuration. Our SMTP server is hosted.
Thanks in advance.
June 19th, 2008 at 6:32 am
@Felix
you have any error message and try to install the following package
sudo aptitude install mailx
now you try
June 25th, 2008 at 11:58 pm
@Chogar, @Simon
You may have gotten excited and missed the first install step:
make install
I had the same trouble because I read the output of “make all” and skipped straight to “make install-init.”
July 24th, 2008 at 1:06 pm
First of all, great article. Makes the installation really easy.
I have one final step to do and this is getting mails to work.
I installed mailx as mentioned in your how-to but till now it just writes its mails into /var/mail/nagios.
Where can i define the ip of the email-server (our standalone mail-server) which should be used ?
July 24th, 2008 at 1:20 pm
@ape
The solution was to install the package ssmtp, and then point it to your smtp server in /etc/ssmtp/ssmtp.conf file
finally you needto restart ssmtp and mailx programs
July 24th, 2008 at 1:56 pm
@ admin:
thank you very much. that was the final / missing hit
Best regards
ape
September 1st, 2008 at 3:41 pm
How can you completely remove an application installed in this fashion? I have it running but decided its not for me.
September 29th, 2008 at 10:15 am
what is the source code of Nagios 3.0.3?????