Мониторинг. · 4 min read · Oct 19, 2025

Как установить Nagios 4.0.8 на Ubuntu 15.04 (Яркая мартышка)

Nagios — это программное обеспечение с открытым исходным кодом для мониторинга систем и сетей. Nagios может отслеживать активность хоста и его служб и предоставляет предупреждение/уведомление, если что-то идет не так на сервере. Nagios может работать на операционных системах Linux. В данный момент мы используем Ubuntu 15.04 для установки.

Предварительные условия

  • Ubuntu 15.04 - 64bit
  • Доступ Root/Sudo

Что мы будем делать в этом руководстве:

  1. Установка необходимых пакетов - LAMP и т.д.
  2. Конфигурация пользователя и группы
  3. Установка Nagios
  4. Настройка Apache
  5. Тестирование сервера Nagios
  6. Добавление хоста для мониторинга

Установка пакета

Nagios требует gcc / build-essential для компиляции, LAMP (Apache, PHP, MySQL) для веб-основы Nagios и Sendmail для отправки уведомлений с сервера. Чтобы установить все эти пакеты и некоторые дополнительные:

apt-get install apache2 libapache2-mod-php5 build-essential libgd2-xpm-dev libssl-dev sendmail-bin sendmail heirloom-mailx wget apache2-utils curl daemon apt-file libnet-snmp-perl libpq5 libsensors4 libsnmp-base libtalloc2 libtdb1 libwbclient0 samba-common samba-common-bin smbclient snmp whois mrtg libcgi-pm-perl librrds-perl libgd-gd2-perl libmysqlclient-dev libperl5.20 libmysqlclient18 libradiusclient-ng2

Конфигурация пользователя и группы

Для работы Nagios необходимо создать нового пользователя для Nagios. Мы назовем пользователя “nagios” и дополнительно создадим группу с именем “nagcmd”. Теперь мы добавим нового пользователя в группу, как показано ниже:

useradd nagios  
groupadd nagcmd  
usermod -a -G nagcmd nagios

Добавить пользователя и группу для Nagios

Установка Nagios

Шаг 1 - Скачивание и распаковка

cd ~  
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-4.0.8.tar.gz  
tar -xzf nagios*.tar.gz  
cd nagios-4.0.8/

Шаг 2 - Компиляция Nagios

Перед тем как собрать Nagios, вам нужно настроить его с пользователем и группой, которые вы создали ранее.

./configure --with-nagios-group=nagios --with-command-group=nagcmd

Для получения дополнительной информации используйте: ./configure –help.

Теперь для установки Nagios:

make all  
sudo make install  
sudo make install-commandmode  
sudo make install-init  
sudo make install-config  
/usr/bin/install -c -m 644 sample-config/httpd.conf  
/etc/apache2/sites-available/nagios.conf

Шаг 3 - Установка плагина Nagios

Скачайте и распакуйте плагин nagios:

cd ~  
wget http://nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz  
tar -xzf nagios-plugins*.tar.gz  
cd nagios-plugin*/

Пожалуйста, сделайте как выше:

./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl  
make && make install

Шаг 4 - Настройка Nagios

После завершения этапа установки вы можете найти конфигурацию по умолчанию Nagios в /usr/local/nagios/.

Теперь настройте контакт Nagios с вашим адресом электронной почты.

vim /usr/local/nagios/etc/nagios.cfg

Распакуйте строку cfg_dir=/usr/local/nagios/etc/servers

Показать строку для раскомментирования

и добавьте новую папку с именем servers:

mkdir -p /usr/local/nagios/etc/servers

Контакт Nagios можно настроить в файле contact.cfg. Чтобы открыть его, используйте:

vim /usr/local/nagios/etc/objects/contacts.cfg

Затем замените адрес электронной почты по умолчанию на свой собственный адрес электронной почты.

Настройка Apache

Шаг 1 - включить модули Apache

sudo a2enmod rewrite  
sudo a2enmod cgi

Вы можете использовать htpasswd для настройки пользователя nagiosadmin для веб-интерфейса nagios

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

и введите свой пароль.

Шаг 2 - включить виртуальный хост Nagios

sudo ln -s /etc/apache2/sites-available/nagios.conf /etc/apache2/sites-enabled/

Шаг 3 - Запустить Apache и Nagios

/etc/init.d/apache2 restart  
/etc/init.d/nagios start

Когда Nagios запускается, вы можете увидеть следующую ошибку:

Starting nagios (via systemctl): nagios.serviceFailed

И вот как это исправить:

cd /etc/init.d/  
cp /etc/init.d/skeleton /etc/init.d/nagios

Теперь отредактируйте файл Nagios:

vim /etc/init.d/nagios

… и добавьте следующий код:

DESC="Nagios"  
NAME=nagios  
DAEMON=/usr/local/nagios/bin/$NAME  
DAEMON_ARGS="-d /usr/local/nagios/etc/nagios.cfg"  
PIDFILE=/usr/local/nagios/var/$NAME.lock

Сделайте его исполняемым и запустите Nagios:

chmod +x /etc/init.d/nagios  
/etc/init.d/apache2 restart  
/etc/init.d/nagios start

Тестирование сервера Nagios

Пожалуйста, откройте ваш браузер и получите доступ к IP-адресу сервера Nagios, который был установлен. http://192.168.1.101/nagios.

Добавление хоста для мониторинга

В этом руководстве вы добавите хост Ubuntu для мониторинга на сервер Nagios, который мы создали выше.

IP сервера Nagios : 192.168.1.101  
IP хоста Ubuntu : 192.168.1.102

Шаг 1 - Подключение к хосту ubuntu

ssh [email protected]

Шаг 2 - Установка службы NRPE

sudo apt-get install nagios-nrpe-server nagios-plugins

Шаг 3 - Настройка NRPE

После завершения установки отредактируйте файл nrpe /etc/nagios/nrpe.cfg:

vim /etc/nagios/nrpe.cfg

… и добавьте IP-адрес сервера Nagios 192.168.1.101 в server_address.

Шаг 4 - Перезапуск NRPE

/etc/init.d/nagios-nrpe-server restart

Шаг 5 - Добавление хоста Ubuntu на сервер Nagios

Пожалуйста, подключитесь к серверу Nagios:

ssh [email protected]

Затем создайте новый файл для конфигурации хоста в /usr/local/nagios/etc/servers/.

vim /usr/local/nagios/etc/servers/ubuntu_host.cfg

Добавьте следующие строки:

# Файл конфигурации хоста Ubuntu

define host {
        use                          linux-server
        host_name                    ubuntu_host
        alias                        Ubuntu Host
        address                      192.168.1.102 #IP хоста Ubuntu
        register                     1
}

define service {
      host_name                       ubuntu_host
      service_description             PING
      check_command                   check_ping!100.0,20%!500.0,60%
      max_check_attempts              2
      check_interval                  2
      retry_interval                  2
      check_period                    24x7
      check_freshness                 1
      contact_groups                  admins
      notification_interval           2
      notification_period             24x7
      notifications_enabled           1
      register                        1
}

define service {
      host_name                       ubuntu_host
      service_description             Check Users
      check_command                  check_local_users!20!50
      max_check_attempts              2
      check_interval                  2
      retry_interval                  2
      check_period                    24x7
      check_freshness                 1
      contact_groups                  admins
      notification_interval           2
      notification_period             24x7
      notifications_enabled           1
      register                        1
}

define service {
      host_name                       ubuntu_host
      service_description             Local Disk
      check_command                   check_local_disk!20%!10%!/
      max_check_attempts              2
      check_interval                  2
      retry_interval                  2
      check_period                    24x7
      check_freshness                 1
      contact_groups                  admins
      notification_interval           2
      notification_period             24x7
      notifications_enabled           1
      register                        1
}

define service {
      host_name                       ubuntu_host
      service_description             Check SSH
      check_command                   check_ssh
      max_check_attempts              2
      check_interval                  2
      retry_interval                  2
      check_period                    24x7
      check_freshness                 1
      contact_groups                  admins
      notification_interval           2
      notification_period             24x7
      notifications_enabled           1
      register                        1
}

Вы можете найти много check_command в файле /usr/local/nagios/etc/objects/commands.cfg. Посмотрите там, если хотите добавить больше служб, таких как DHCP, POP и т.д.

А теперь проверьте конфигурацию:

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

… чтобы увидеть, правильна ли конфигурация.

Шаг 6 - Перезапуск всех служб

На хосте Ubuntu запустите службу NRPE:

/etc/init.d/nagios-nrpe-server restart

… а на сервере Nagios запустите Apache и Nagios:

/etc/init.d/apache2 restart  
/etc/init.d/nagios restart

Шаг 7 - Тестирование хоста Ubuntu

Откройте сервер Nagios в браузере и посмотрите, как мониторится ubuntu_host.

Заключение

Nagios — это приложение с открытым исходным кодом для мониторинга системы. Nagios широко используется благодаря простоте конфигурации. Nagios поддерживается различными плагинами, и вы даже можете создавать свои собственные плагины. Смотрите здесь для получения дополнительной информации.

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.