Увеличение возможностей Nagios с помощью плагинов собственной разработки. Простая настройка Nagios Установка nagios ubuntu server 14.04

Перед конфигурированием nagios нужно установить необходимые зависимости

# apt install build-essential apache2 php libapache2-mod-php7.0 php-gd libgd-dev mailutils

И добавить пользователя и группу, от имени которых будет работать nagios

# useradd nagios # groupadd nagcmd # usermod -a -G nagcmd nagios # usermod -a -G nagcmd www-data

Перейдем в каталог для сборки и скачаем исходный код nagios и плагинов

# cd /usr/src/ # wget https://sourceforge.net/projects/nagios/files/nagios-4.x/nagios-4.2.3/nagios-4.2.3.tar.gz # wget https://nagios-plugins.org/download/nagios-plugins-2.1.4.tar.gz

Разархивируем скаченные архивы

# tar xzvf nagios-4.2.3.tar.gz # tar xzvf nagios-plugins-2.1.4.tar.gz

Перейдем в директорию с исходным кодом nagios и выполним конфигурирование

# cd nagios-4.2.3 # ./configure --prefix=/etc/nagios --with-command-group=nagcmd --with-httpd-conf=/etc/apache2/sites-available --with-mail=/usr/bin/mail

Выполним сборку

# make all

Установим nagios

# make install

Установим init скрипт в /etc/init.d и активируем авто запуск

# make install-init # update-rc.d nagios defaults

Установим права на директорию для хранения внешних командных файлов

# make install-commandmode

Установим конфигурационные файлы nagios

# make install-config

Установим конфигурацию nagios для apache

# make install-webconf

Скопируем в каталок с nagios скрипты обработки событий внешних командных файлов и выставим владельца на папку

# cp -R contrib/eventhandlers/ /etc/nagios/libexec/ # chown -R nagios:nagios /etc/nagios/libexec/eventhandlers

Выполним проверку установленной конфигурации

# /etc/nagios/bin/nagios -v /etc/nagios/etc/nagios.cfg

# make # make install

Включим конфигурацию nagios в apache и активируем необходимые дополнения

# a2ensite nagios # a2enmod rewrite cgi

Перезапустим службу apache

# service apache2 restart

Запустим nagios и проверим статус

# service nagios start # service nagios status ● nagios.service - Nagios Loaded: loaded (/etc/systemd/system/nagios.service; enabled; vendor preset: enabled) Active: active (running)

Добавим администратора nagios

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

Теперь разберемся с конфигурационными файлами nagios.

/etc/nagios/etc/cgi.cfg — определяет настройки веб интерфейса, а так же права доступа к web консоли nagios.

/etc/nagios/etc/htpasswd.users — база пользователей и их паролей для доступа к web интерфейсу nagios.

/etc/nagios/etc/nagios.cfg — содержит в себе основные настройки и пути к *.cfg файлам.

/etc/nagios/etc/resource.cfg — здесь определена переменная, до каталога с плагинами.

/etc/nagios/etc/objects/commands.cfg — содержит определения команд.

/etc/nagios/etc/objects/contacts.cfg — определяет почтовые контакты, на которые будет происходит отправка оповещений nagios.

/etc/nagios/etc/objects/templates.cfg — содержит шаблоны контактов, хостов и сервисов.

/etc/nagios/etc/objects/timeperiods.cfg — содержит определения временных периодов.

/etc/nagios/etc/objects/localhost.cfg — конфигурация для мониторинга самого сервера nagios. В ней определен сам хост, хостовая группа для linux серверов и сервисы мониторинга.

/etc/nagios/etc/objects/printer.cfg — конфигурация для мониторинга принтера. В ней определен произвольный принтер, хостовая группа для принтеров и сервисы мониторинга.

/etc/nagios/etc/objects/switch.cfg — конфигурация для мониторинга свитча. В ней определен произвольный свитч, хостовая группа для свитчей и сервисы мониторинга.

/etc/nagios/etc/objects/windows.cfg — конфигурация для мониторинга произвольного windows хоста. В ней определен произвольный windows хост, хостовая группа для windows серверов и сервисы мониторинга.

Из описания видно, что localhost.cfg, printer.cfg, switch.cfg и windows.cfg содержат в себе определения хост групп. Для удобства имеет смысл выделить их в отдельный файл /etc/nagios/etc/objects/hostgroups.cfg . Соответственно в изначальном файле их нужно закоментировать. Описание одного и того же объекта не должно повторятся в разных конфигурационных файлах. Так же мы добавим файл /etc/nagios/etc/objects/servicegroups.cfg , в котором будут определены сервисные группы. Так как в данной публикации производится настройка мониторинга для linux и windows хостов, мы определим группы для них. Для принтеров и свитчей группы определяются по аналогии. Так же мы создадим папку /etc/nagios/etc/servers/, в которой будут храниться файлы, определяющие хосты для мониторинга. Внесем соответствующие изменения в файл nagios.cfg

# nano /etc/nagios/etc/nagios.cfg . . . # You can specify individual object config files as shown below: cfg_file=/etc/nagios/etc/objects/commands.cfg cfg_file=/etc/nagios/etc/objects/contacts.cfg cfg_file=/etc/nagios/etc/objects/timeperiods.cfg cfg_file=/etc/nagios/etc/objects/templates.cfg # Definitions for hostgroups and servicegroups cfg_file=/etc/nagios/etc/objects/hostgroups.cfg cfg_file=/etc/nagios/etc/objects/servicegroups.cfg # Definitions for monitoring the local (Linux) host cfg_file=/etc/nagios/etc/objects/localhost.cfg # Definitions for monitoring a Windows machine #cfg_file=/etc/nagios/etc/objects/windows.cfg # Definitions for monitoring a router/switch #cfg_file=/etc/nagios/etc/objects/switch.cfg # Definitions for monitoring a network printer #cfg_file=/etc/nagios/etc/objects/printer.cfg # You can also tell Nagios to process all config files (with a .cfg # extension) in a particular directory by using the cfg_dir # directive as shown below: cfg_dir=/etc/nagios/etc/servers #cfg_dir=/etc/nagios/etc/printers #cfg_dir=/etc/nagios/etc/switches #cfg_dir=/etc/nagios/etc/routers . . .

Создадим файлы для хост и сервис групп и выставим на них права

# cd /etc/nagios/etc/objects/ # touch hostgroups.cfg servicegroups.cfg # chown nagios:nagios hostgroups.cfg servicegroups.cfg # chmod 664 hostgroups.cfg servicegroups.cfg

Создадим каталог /etc/nagios/etc/servers / и выставим на него права

# mkdir /etc/nagios/etc/servers/ # chown nagios:nagios /etc/nagios/etc/servers/ # chmod 775 /etc/nagios/etc/servers/

Добавим в hostgroups.cfg определения хост групп для linux и windows серверов из localhost.cfg и windows.cfg соответственно

# nano /etc/nagios/etc/objects/hostgroups.cfg # Define an optional hostgroup for Linux machines # All hosts that use the linux-server template will automatically be a member of this group define hostgroup{ hostgroup_name linux-servers ; The name of the hostgroup alias Linux Servers ; Long name of the group } # Define a hostgroup for Windows machines # All hosts that use the windows-server template will automatically be a member of this group define hostgroup{ hostgroup_name windows-servers ; The name of the hostgroup alias Windows Servers ; Long name of the group }

Так как в nagios.cfg путь к windows.cfg закоментирован, коментировать определение хост групп в windows.cfg не обязательно, а вот в localhost.cfg это обязательное действие

# nano /etc/nagios/etc/objects/localhost.cfg . . . # Define an optional hostgroup for Linux machines #define hostgroup{ # hostgroup_name linux-servers ; The name of the hostgroup # alias Linux Servers ; Long name of the group # members localhost ; Comma separated list of hosts that belong to this group # } . . .

При создании объекта windows сервер, он автоматически становится членом группы windows-servers. Это действие определено в файле шаблонов templates.cfg. Чтобы linux сервера попадали автоматически в группу linux-servers, нужно сделать следующее изменение

# nano /etc/nagios/etc/objects/templates.cfg . . . # Linux host definition template - This is NOT a real host, just a template! define host{ name linux-server ; The name of this host template use generic-host ; This template inherits other values from the generic-host template check_period 24x7 ; By default, Linux hosts are checked round the clock check_interval 5 ; Actively check the host every 5 minutes retry_interval 1 ; Schedule host check retries at 1 minute intervals max_check_attempts 10 ; Check each Linux host 10 times (max) check_command check-host-alive ; Default command to check Linux hosts notification_period workhours ; Linux admins hate to be woken up, so we only notify during the day ; Note that the notification_period variable is being overridden from ; the value that is inherited from the generic-host template! notification_interval 120 ; Resend notifications every 2 hours notification_options d,u,r ; Only send notifications for specific host states contact_groups admins ; Notifications get sent to the admins by default hostgroups linux-servers ; Host groups that linux servers should be a member of register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE! } . . .

Для настройки оповещения, нужно указать email администратора системы в contacts.cfg

# nano /etc/nagios/etc/objects/contacts.cfg . . . define contact{ contact_name nagiosadmin ; Short name of user use generic-contact ; Inherit default values from generic-contact template (defined above) alias Nagios Admin ; Full name of user email admin@сайт ; <<***** CHANGE THIS TO YOUR EMAIL ADDRESS ****** } . . .

# service nagios restart

Проверить работоспособность оповещений, можно следующим способом, в web интерфейсе выбрать слева «Hosts», далее нажимаем на «localhost», в меню справа нажимаем «Send custom host notification», пишем что угодно в строку «Comment» и нажимаем «Commit».

На почту, указанную в contacts.cfg должно прийти оповещение.


Немного о плагинах

В папке /etc/nagios/libexec располагаются установленные плагины. В начале статьи было отмечено, что nagios получает всю информацию через плагины. Для примера посмотрим uptime системы

# /etc/nagios/libexec/check_uptime Uptime OK: 0 day(s) 3 hour(s) 52 minute(s) | uptime=232.000000;;;

Большинство плагинов работаю только с аргументами, к примеру посмотрим статус файла подкачки системы

# /etc/nagios/libexec/check_swap -w 20 -c 10 SWAP OK - 100% free (2044 MB out of 2044 MB) |swap=2044MB;0;0;0;2044

Здесь есть два аргумента -w 20 и -c 10.

w — warning, когда останется 20% свободного места, будет происходить событие warning.

c — critical, когда останется 10% свободного места, будет происходить событие critical.

Так же плагины бывают локальные и «общие». Приведенные выше примеры, относятся к локальным. К примеру плагином check_swap не удастся посмотреть статус файла подкачки на удаленном хосте, а вот плагином check_ping можно проверить доступность и локального и удаленного хоста

# /etc/nagios/libexec/check_ping -H localhost -w 100.0,20% -c 500.0,60% PING OK - Packet loss = 0%, RTA = 0.04 ms|rta=0.036000ms;100.000000;500.000000;0.000000 pl=0%;20;60;0 # /etc/nagios/libexec/check_ping -H 192.168.1.16 -w 100.0,20% -c 500.0,60% PING OK - Packet loss = 0%, RTA = 0.27 ms|rta=0.273000ms;100.000000;500.000000;0.000000 pl=0%;20;60;0


Немного о NRPE

NRPE — Nagios Remote Plugin Executor. Для того, чтобы nagios мог получать информацию от удаленных хостов, такую как загрузка диска, или процессора, используется nrpe плагин. Nagios обращается через nrpe плагин, к nrpe серверу, установленному на удаленном linux/Unix хосте. Nrpe сервер запускает локальные плагины, и передает nagios серверу полученную информацию. Важно! nrpe сервер и плагин должны быть одной версии, иначе могут возникать ошибки.


Установка NRPE плагина

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

# apt install libssl-dev

Скачать последнюю версию nrpe можно с сайта nagios . Перейдем в каталог для сборки, скачаем и разархивируем последнюю версию nrpe

# cd /usr/src/ # wget https://github.com/NagiosEnterprises/nrpe/archive/3.0.1.tar.gz # tar xzvf 3.0.1.tar.gz

Перейдем в папку с nrpe и выполним конфигурирование

Выполним сборку и установку nrpe плагина

# make check_nrpe # make install-plugin

Добавим в /etc/nagios/etc/objects/commands.cfg поддержку nrpe

# nano /etc/nagios/etc/objects/commands.cfg . . . # "check_nrpe" command definition define command{ command_name check_nrpe command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ } . . .

После проделанных изменений нужно перезапустить службу nagios

# service nagios restart


Установка NRPE сервера

На linux хосте, который мы будем мониторить, нужно установить nrpe сервер, и плагины.

Установим необходимые зависимости

# apt install build-essential libssl-dev

Перейдем в каталог для сборки, скачаем nrpe, плагины и разархивируем их

# cd /usr/src/ # wget https://github.com/NagiosEnterprises/nrpe/archive/3.0.1.tar.gz # wget https://nagios-plugins.org/download/nagios-plugins-2.1.4.tar.gz # tar xzvf 3.0.1.tar.gz # tar xzvf nagios-plugins-2.1.4.tar.gz

Перейдем в каталог с nrpe и выполним конфигурирование

# cd nrpe-3.0.1 # ./configure --prefix=/etc/nagios

Выполним сборку

# make nrpe

Добавим пользователя и группу, от имени которых будет работать nrpe сервер

# make install-groups-users

Выполним установку сервера и конфигурационного файла

# make install-daemon # make install-config

Установим стартовый скрипт

# make install-init # systemctl enable /lib/systemd/system/nrpe.service

Перейдем в директорию с исходным кодом плагинов и выполним конфигурирование

# cd /usr/src/nagios-plugins-2.1.4/ # ./configure --prefix=/etc/nagios --with-nagios-user=nagios --with-nagios-group=nagios

Выполним сборку и установку плагинов

# make # make install

В /etc/nagios/etc/nrpe.cfg разрешим nagios серверу получать информацию о системе, а так же укажем истинное название раздела диска для мониторинга, в предопределенной команде

Nano /etc/nagios/etc/nrpe.cfg . . . allowed_hosts=127.0.0.1, 192.168.1.13 . . . command=/etc/nagios/libexec/check_users -w 5 -c 10 command=/etc/nagios/libexec/check_load -w 15,10,5 -c 30,25,20 command=/etc/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda1 command=/etc/nagios/libexec/check_procs -w 5 -c 10 -s Z command=/etc/nagios/libexec/check_procs -w 150 -c 200 . . .

192.168.1.13 нужно заменить на адрес своего nagios сервера.
Запустим nrpe сервер и проверим его статус

# service nrpe start # service nrpe status ● nrpe.service - Nagios Remote Program Executor Loaded: loaded (/lib/systemd/system/nrpe.service; enabled; vendor preset: enabled) Active: active (running)


Добавление linux хоста в систему мониторинга

Для этого мы создадим файл linux-server.cfg в папке servers

# nano /etc/nagios/etc/servers/linux-serv.cfg define host{ use linux-server host_name linux-serv alias linux-serv address 192.168.1.12 } define service{ use generic-service host_name linux-serv service_description CPU Load check_command check_nrpe!check_load } define service{ use generic-service host_name linux-serv service_description Current Users check_command check_nrpe!check_users } define service{ use generic-service host_name linux-serv service_description /dev/sda1 Free Space check_command check_nrpe!check_sda1 } define service{ use generic-service host_name linux-serv service_description Total Processes check_command check_nrpe!check_total_procs } define service{ use generic-service host_name linux-serv service_description Zombie Processes check_command check_nrpe!check_zombie_procs }

192.168.1.12 нужно заменить на адрес своего linux сервера.
Директива use указывает на имя шаблона в templates.cfg, в котором определены настройки по умолчанию. Для того, чтобы новый хост появился в web интерфейсе нужно перезагрузить службу nagios

# service nagios restart

Для проверки работоспособности nrpe можно выполнить команду

# /etc/nagios/libexec/check_nrpe -H 192.168.1.12 NRPE v3.0.1

Для проверки определенного сервиса, нужно добавить аргумент с названием проверки

# /etc/nagios/libexec/check_nrpe -H 192.168.1.12 -c check_sda1 DISK OK - free space: /var/tmp 14549 MB (85% inode=88%);| /var/tmp=2527MB;14411;16212;0;18014

Название проверки мы определяли в файле nrpe.cfg

Command[check_sda1 ]=/etc/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda1

и в файле linux-serv.cfg

Define service{ use generic-service host_name linux-serv service_description /dev/sda1 Free Space check_command check_nrpe!check_sda1 }


Мониторинг Windows хостов

Для мониторинга windows хостов используется nt плагин. По умолчанию он входит в состав базовых плагинов, и его не нужно отдельно устанавливать. Через nt плагин nagios обращается к NSClient++, установленному на windows хосте. NSClient++ обращается к определенным модулям, которые сообщают ему информацию о системе. Полученную информацию NSClient++ передает nogios серверу.


Установка NSClient++

На windows хосте нужно установить NSClient++. Скачиваем последнюю версию и запускаем от имени администратора.

Нажимаем «Next»

Снова нажимаем «Next»

Выбираем «Typical»

Указываем адрес nagios сервера, пароль и оставляем две первых галочки. Жмем «Next»

Жмем «Install»

Жмем «Finish»


Добавление windows хоста в систему мониторинга

Для этого мы создадим файл windows-serv.cfg в папке servers

# nano /etc/nagios/etc/servers/windows-serv.cfg define host{ use windows-server host_name windows-serv alias My Windows Server address 192.168.1.33 } define service{ use generic-service host_name windows-serv service_description NSClient++ Version check_command check_nt!CLIENTVERSION } define service{ use generic-service host_name windows-serv service_description Uptime check_command check_nt!UPTIME } define service{ use generic-service host_name windows-serv service_description CPU Load check_command check_nt!CPULOAD!-l 5,80,90 } define service{ use generic-service host_name windows-serv service_description Memory Usage check_command check_nt!MEMUSE!-w 80 -c 90 } define service{ use generic-service host_name windows-serv service_description C:\ Drive Space check_command check_nt!USEDDISKSPACE!-l c -w 80 -c 90 } define service{ use generic-service host_name windows-serv service_description VMTools check_command check_nt!SERVICESTATE!-d SHOWALL -l VMTools } define service{ use generic-service host_name windows-serv service_description Explorer check_command check_nt!PROCSTATE!-d SHOWALL -l explorer.exe }

192.168.1.33 нужно заменить на адрес своего windows сервера.
Если при установке NSClient++ клиента указывался пароль, нужно добавить его в commands.cfg

# nano /etc/nagios/etc/objects/commands.cfg . . . # "check_nt" command definition define command{ command_name check_nt command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -s MegaPass -v $ARG1$ $ARG2$ } . . .

И перезапустить службу nagios

# service nagios restart


Определение сервисной группы

Сервисная группа объединяет хосты, по определенным сервисным проверкам. Создадим сервисную группу CPU Load, и объединим хосты по проверке загрузки процессора.

# nano /etc/nagios/etc/objects/servicegroups.cfg define servicegroup{ servicegroup_name cpuload alias CPU Load members linux-serv,CPU Load, localhost,Current Load, windows-serv,CPU Load }

Члены группы определяются в директиве members по принципу
members=,,,,…,n >,n >

Чтобы группа стала доступна, нужно перезапустить службу nagios

# service nagios restart


Расположение связей хостов на карте

По умолчанию все хосты на карте соединены с Nagios Process. Бывают случаи, когда нужно переопределить такое поведение. К примеру связь должна идти не от Nagios Process, а от другой точки на карте (как пример соединение сервера через свитч). Делается это добавлением в секцию описания хоста директивы parents. Для наглядного примера изменим связь windows-serv от Nagios Process к linux-serv

# nano /etc/nagios/etc/servers/windows-serv.cfg define host{ use windows-server host_name windows-serv alias My Windows Server address 192.168.1.33 parents linux-serv } . . .

И перезапустить службу nagios

# service nagios restart

В первом случае все хосты имели связь с Nagios Process, во втором случае связь windows-serv начинается от linux-serv.


Включение иконок

В nagios есть возможность включения иконок рядом с названием хоста. Иконки находятся в папке /etc/nagios/share/images/logos. Можно воспользоваться готовым набором, можно загрузить из интернета. Для включения отображения иконок, нужно добавить следующие строки в templates.cfg

# nano /etc/nagios/etc/objects/templates.cfg . . . # Linux host definition template - This is NOT a real host, just a template! define host{ name linux-server ; The name of this host template use generic-host ; This template inherits other values from the generic-host template check_period 24x7 ; By default, Linux hosts are checked round the clock check_interval 1 ; Actively check the host every 5 minutes retry_interval 1 ; Schedule host check retries at 1 minute intervals max_check_attempts 10 ; Check each Linux host 10 times (max) check_command check-host-alive ; Default command to check Linux hosts notification_period workhours ; Linux admins hate to be woken up, so we only notify during the day ; Note that the notification_period variable is being overridden from ; the value that is inherited from the generic-host template! notification_interval 120 ; Resend notifications every 2 hours notification_options d,u,r ; Only send notifications for specific host states contact_groups admins ; Notifications get sent to the admins by default hostgroups linux-servers ; Host groups that linux servers should be a member of icon_image linux40.png statusmap_image linux40.gd2 register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE! } # Windows host definition template - This is NOT a real host, just a template! define host{ name windows-server ; The name of this host template use generic-host ; Inherit default values from the generic-host template check_period 24x7 ; By default, Windows servers are monitored round the clock check_interval 5 ; Actively check the server every 5 minutes retry_interval 1 ; Schedule host check retries at 1 minute intervals max_check_attempts 10 ; Check each server 10 times (max) check_command check-host-alive ; Default command to check if servers are "alive" notification_period 24x7 ; Send notification out at any time - day or night notification_interval 30 ; Resend notifications every 30 minutes notification_options d,r ; Only send notifications for specific host states contact_groups admins ; Notifications get sent to the admins by default hostgroups windows-servers ; Host groups that Windows servers should be a member of icon_image win40.png statusmap_image win40.gd2 register 0 ; DONT REGISTER THIS - ITS JUST A TEMPLATE } . . .

Перезапускаем службу nagios

# service nagios restart

Nagios - это один из самых распространенных инструментов мониторинга серверов Linux и Windows с открытым исходным кодом. С помощью него вы сможете следить за выполнением различных приложений и сервисов удаленно, через веб-интерфейс. Nagios также может контролировать маршрутизаторы и другие сетевые устройства.

С помощью Nagios вы можете отслеживать основные параметры сервера, такие как нагрузка на процессор, использование памяти и т д. Все это доступно в веб-интерфейсе, для получения доступа к которому нужно пройти простую аутентификацию. В этой статье мы рассмотрим как выполняется установка Nagios Ubuntu, а также настройка этой программы.

Есть несколько способов установить Nagios Ubuntu 16.04. Вы можете воспользоваться PPA или устанавливать с помощью архива, загруженного на официальном сайте. На данный момент самая последняя версия - 4.3. В PPA доступна только 4.2, поэтому мы рассмотрим ручную установку с помощью архива.

Но перед тем как мы перейдем к установке необходимо обновить систему и установить все необходимые компоненты для сборки программы:

sudo apt install build-essential apache2 php7.0 openssl perl make php7.0-gd libgd2-xpm-dev libapache2-mod-php7.0 libperl-dev libssl-dev daemon wget apache2-utils unzip

Затем нужно создать группу и пользователя, от имени которых будет запускаться Nagios, а также команды оболочки, выполненные в веб-интерфейсе:

sudo useradd nagios
$ sudo groupadd nagcmd

Добавьте пользователя nagios и пользователя, от имени которого запускается Apache в группу nagcmd:

sudo usermod -a -G nagcmd nagios
$ sudo usermod -a -G nagcmd www-data

Затем нам нужно скачать исходные коды nagios. Это можно сделать с помощью команды терминала, но поскольку мы хотим получить самую новую версию, то лучше зайти на официальный сайт и скачать.

Сначала кликните по пункту "Nagios Core" , затем пролистайте вниз и нажмите "Download" :

На этом этапе вы можете заполнить информацию о себе, или пропустить, нажав "Skip download" :

Осталось выбрать версию, например, 4.3.2. После того как загрузка будет завершена перейдите в папку с загрузками и распакуйте архив:

cd ~/Загрузки/
$ tar -zxvf /tmp/nagios-4.3.2.tar.gz

Теперь можно переходить к компиляции nagios. Для этого нужно выполнить такие команды:

./configure --with-nagios-group=nagios --with-command-group=nagcmd --with-httpd_conf=/etc/apache2/sites-enabled/
$ make all
$ sudo make install
$ sudo make install-init
$ sudo make install-config
$ sudo make install-commandmode
$ sudo make install-webconf

Настройка Nagios в Ubuntu

Все конфигурационные файлы программы будут размещены установщиком в /usr/local/nagios/etc/. Настройки по умолчанию позволяют запустить Nagios, но нам нужно внести еще несколько изменений. Откройте файл contact.cfg и измените электронный адрес, на который будут приходить оповещения:

sudo vi /usr/local/nagios/etc/objects/contacts.cfg

define contact{
contact_name nagiosadmin ; Краткое имя пользователя
use generic-contact ; Шаблон по умолчанию
alias Nagios Admin ; Полное имя пользователя
email admin@сайт ; Ваш Email
}

Для работы веб-интерфейса необходимо создать пароль пользователя nagiosadmin с помощью htpasswd, без него вы просто не сможете войти в интерфейс:

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

Наконец, для корректной работы нужно внести несколько настроек для веб-сервера. Включите модуль cgi:

sudo a2enmod cgi

Перезапустите веб-сервер:

sudo service apache2 restart

Для получения дополнительных возможностей nagios вы можете установить набор плагинов. Для этого сначала скачайте его:


Теперь распакуйте архив и перейдите в папку с ним:

tar -zxvf /tmp/nagios-plugins-2.1.1.tar.gz
$ cd /tmp/nagios-plugins-2.1.1/

Для компиляции модулей выполните:

./configure --with-nagios-user=nagios --with-nagios-group=nagios
$ make
$ make install

Модули установлены в папку с Nagios, теперь проверьте правильность конфигурации:

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

Для автоматического запуска создадим Unit файл для systemd:

sudo vi /etc/systemd/system/nagios.service


Description=Nagios
BindTo=network.target


WantedBy=multi-user.target


User=nagios
Group=nagios
Type=simple
ExecStart=/usr/local/nagios/bin/nagios /usr/local/nagios/etc/nagios.cfg

Запуск Nagios

Почти все готово, осталось запустить сервис и начать использовать. Для запуска сервиса наберите:

sudo systemctl stat nagios

Чтобы открыть веб-интерфейс nagios будет достаточно набрать ip адрес и url nagios в браузере. Если вы устанавливали все это на локальном компьютере, то используйте:

http://localhost/nagios

Сразу после открытия странички вам нужно будет ввести имя пользователя nagiosadmin и пароль, который вы задали для него ранее. После этого можете пользоваться всеми возможностями программы:

Выводы

В этой статье мы рассмотрели как выполняется настройка nagios 4, а также полная установка последней версии в операционной системе Ubuntu. Несмотря на то, что, на первый взгляд, все кажется сложным, процесс достаточно простой. Теперь вы можете осуществлять мониторинг nagios ubuntu 16.04. Надеюсь, эта информация была полезной для вас.

Популярное решение для мониторинга — nagios позволяет реализовывать масштабируемые системы. Конфигурация для распределенных систем — длительный процесс, в рамках статьи реализуем мониторинг одного сервиса на удаленном хосте.

Работы по настройке будут выполняться на сервере с операционной системой CentOS 7 , для nrpe клиента также будет использоваться CentOS 7

На клиенте установим плагин nrpe и разрешим в его настройках подключение к серверу.

Nagios установка и настройка сервера мониторинга

Настройку начинаем на машине, которая будет выполнять роль nagios сервера. Установим необходимые пакеты:

yum install -y wget httpd php gcc glibc glibc-common gd gd-devel make net-snmp unzip

nagios работает через Apache , поэтому в списке устанавливаемых пакетов присутствует httpd

Переходим в корневой каталог с временными файлами и скачиваем в него при помощи wget последние релизы nagios и nagios-plugins

wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-4.2.8.tar.gz

wget http://nagios-plugins.org/download/nagios-plugins-2.1.2.tar.gz

Создаем системных пользователя и группу

Добавляем пользователя nagios в группу nagcmd

usermod -a -G nagcmd nagios

usermod -a -G nagios,nagcmd apache

Поскольку используем CentOS httpd работает не от имени пользователя www-data, а от имени пользователя apache

Чтобы в дальнейшем не возникло конфликтов прав добавляем пользователя apache в группы nagios,nagcmd

Извлекаем содержимое скачанного архива

tar -zxvf nagios-4.2.0.tar.gz

Переходим в каталог с файлами nagios

Установку как nagios, так и nrpe в дальнейшем будем производить из исходников

./configure —with-command-group=nagcmd

В качестве опции при сборке указываем группу nagcmd

Компилируем

make install-commandmode

Рекурсивно копируем каталог с библиотеками в /usr/local на сервере

cp -R contrib/eventhandlers /usr/local/nagios/libexec

Также рекурсивно меняем владельца и группу владельца каталогов и файлов на nagios

chown -R nagios:nagios /usr/local/nagios/libexec/eventhandlers

Пробуем запустить и посмотреть версию nagios указывая путь к основному конфигурационному файлу

Добавляем nagios в автозагрузку — система будет каждый раз запускать его при старте

systemctl enable nagios

Запускаем сервис

Аналогичные операции проделываем с веб-сервером

Задаем пароль пользователя nagios

При помощи htpasswd генерируем файл, который будет ограничивать доступ для пользователя nagiosadmin

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

Установка основного пакета на этом завершена. Открываем интернет браузер и вводим в поисковую строку ip-адрес сервера, затем /nagios и попадаем в веб-интерфейс

Настройка мониторинга сервиса на удаленном хосте

Идем на другую серверную машину, которая будет выполнять роль nagios-клиента
Переходим в каталог /tmp/

Распаковываем nagios-plugins-2.1.2

tar -zxvf nagios-plugins-2.1.2

cd nagios-plugins-2.1.2

Компилируем указывая пользователя и группу nagios

./configure —with-command-user=nagios —with-nagios-group=nagios

Теперь устанавливаем nrpe plugin

Сначала дополнительно ставим из репозитория openssl-devel, если он уже установлен — шаг пропускаем (необходимо также присутствие пакета и на nagios сервере)

yum -y install openssl-devel

Можно установить и из репозитория

yum install nagios-plagins-all nagios-plagins-nrpe

Если нужна свежая версия, что так
Скачиваем пакет

wget http://sourceforge.net/projects/nagios/files/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz

Распаковываем tar.gz

tar -zxvf nrpe-2.15.tar.gz

Компилируем тем же способом, что и ранее

Идем на сервер nagios

Пробуем подключиться с сервера указывая после ключа -H IP адрес клиента

Получаем connection refused и отправляемся производить конфигурацию плагина

Стартуем nrpe на клиенте и добавляем сервис в автозагрузку

Открываем основной конфигурационный файл и в качестве значения в секции allowed_hosts указываем IP адрес сервера

mcedit /etc/nrpe/nrpe.cfg

allowed_hosts = 10.11.27.11

Возвращаемся на сервер

/usr/local/nagios/libexec/check_nrpe -H 10.11.27.44

Теперь наша попытка успешна и мы видим версию nagios

Снова открываем основной конфиг

Снимаем знак комментария со строки с cfg_dir (cfg_dir=/usr/local/nagios/etc/servers)

Создаем директорию и переходим в нее

mkdir /usr/local/nagios/etc/servers

cd /usr/local/nagios/etc/servers

Определяем хосты, мониторинг которых будет производиться. У хостов могут быть любые названия, nagios увидит все файлы с расширением cfg

Прописываем параметры хоста, значения директив понятно из названия. Этих директив может быть значительно больше в случае необходимости тонких настроек мониторинга, здесь рассматираем базовую рабочую конфигурацию

define host {
use linux-server
host_name cenos11
alias just nagios client
address 10.11.27.44
max_check_attempts 5
check_period 24×7
notification_interval 30
notification_period 24×7

}

Добавляем конфиг для сервиса, который мониторим. Сейчас ограничимся проверкой наличия пинга до хоста

{
use generic-service
host_name cenos11
service_description PING
check_command check_ping!100.0,20%!500.0,50%
}

Использована команда check_command, выдержка из мануала относительно нее говорит следующее:

check_ping -H -w ,% -c ,%
[-p packets] [-t timeout] [-4|-6]

Соответственно, при потере 20% пакетов мы будем получать предупреждение, при потере 50% — ALERT

Снова запускаем и убеждаемся в том, что ошибок нет

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

Перезапускаем службу

systemctl restart nagios

Идем в веб-интерфейс и видим, что там отображается сервис на удаленном хосте, который мы мониторим (в конфигурации, приведенной на скриншоте, настроен мониторинг еще ряда ресурсов). Настройка сервера мониторинга с базовым функционалом завершена.

Настройка ALERT-ов в nagios

Открываем основной конфигурационный файл и при необходимости раскомментируем строку cfg_file=/usr/local/nagios/etc/objects/contacts.cfg :

mcedit /usr/local/nagios/etc/nagios.cfg

В файле определяем контактный адрес электронной почты для отправки уведомлений:

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

define contact {
contact_name nagiosadmin
use generic-contact
alias Nagios Admin
email [email protected]

}

Перезапускаем службу

cyctemctl restart nagios

Также может использоваться дополнительное программное обеспечение с помощью которого могут отправляться, например, SMS-сообщения с ALERT -ами касающимися принципиально важных сервисов. Получен рабочий сервер Nagios, установка и настройка на этом завершены.

Для серверов можно устанавливать Nagios сервер и клиент на одной машине, однако намного проще использовать другой пакет — например, .

Данное руководство поможет установить популярную открытую систему мониторинга Nagios 4 на сервер Ubuntu 14.04, а также выполнить базовую настройку мониторинга ресурсов хоста. Кроме того, в руководстве показано, как настроить Nagios Remote Plugin Executor (NRPE) в качестве агента на удалённых хостах для мониторинга их ресурсов.

Система Nagios позволяет отслеживать ресурсы сервера и работу основных сервисов. В целом системы мониторинга являются важным инструментом для любой среды производства.

Примечание: Аналогичное руководство для CentOS можно найти по .

Требования

  • Предварительно настроенный сервер Ubuntu 14.04.
  • Права суперпользователя (подробнее – ).
  • Заранее установленный стек LAMP (инструкции по установке можно найти ).
  • Частная сеть; если ваш сервер не поддерживает частную сеть, просто замените ссылки на внутренний IP-адрес внешним IP-адресом.

Установка Nagios 4

Создание пользователя и группы Nagios

Создайте пользователя и группу для запуска процесса Nagios; в данном руководстве пользователь называется nagios, а группа nagcmd. Создайте их и добавьте пользователя в группу.

sudo useradd nagios
sudo groupadd nagcmd
sudo usermod -a -G nagcmd nagios

Установка зависимостей

После этого нужно установить несколько библиотек для разработки, чтобы собрать Nagios Core из исходного кода, и apache2-utils для настройки интерфейса Nagios.

Обновите список пакетов системы:

sudo apt-get update

Установите пакеты:

sudo apt-get install build-essential libgd2-xpm-dev openssl libssl-dev xinetd apache2-utils unzip

Установка Nagios Core

Загрузите последний стабильный релиз Nagios Core. Откройте загрузочную страницу сайта, кликните Skip to download и загрузите ссылку на стабильный релиз.

Примечание: В руководстве используется версия Nagios 4.1.1.

Загрузите пакет в домашний каталог:

cd ~
curl -L -O https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.1.1.tar.gz

Распакуйте архив:

tar xvf nagios-*.tar.gz

Откройте полученный каталог:

Прежде чем приступить к сборке Nagios, нужно настроить систему. Чтобы настроить Nagios для поддержки postfix (который можно установить при помощи apt-get), добавьте —with-mail=/usr/sbin/sendmail в следующую команду:

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

Скомпилируйте Nagios:

Затем установите Nagios, сценарии инициализации и образцы конфигурационных файлов:

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

Чтобы иметь возможность запускать внешние команды через веб-интерфейс Nagios, нужно добавить пользователя www-data в группу nagcmd:

sudo usermod -G nagcmd www-data

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

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

Примечание: В руководстве используется версия Nagios Plugins 2.1.1.

cd ~
curl -L -O http://nagios-plugins.org/download/nagios-plugins-2.1.1.tar.gz

Распакуйте архив Nagios Plugins.

tar xvf nagios-plugins-*.tar.gz

Откройте полученный каталог:

cd nagios-plugins-*

Запустите настройку Nagios Plugins перед сборкой пакетов.

./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl

Скомпилируйте Nagios Plugins:

Установите полученный пакет:

sudo make install

Установка NRPE

Откройте загрузочную страницу сайта, найдите последний стабильный релиз NRPE и загрузите его в домашний каталог.

Примечание: В руководстве используется NRPE 2.15.

cd ~
curl -L -O http://downloads.sourceforge.net/project/nagios/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz

Распакуйте архив NRPE:

tar xvf nrpe-*.tar.gz

Перейдите в полученный каталог:

Чтобы настроить NRPE, запустите команду:

./configure --enable-command-args --with-nagios-user=nagios --with-nagios-group=nagios --with-ssl=/usr/bin/openssl --with-ssl-lib=/usr/lib/x86_64-linux-gnu

После этого соберите и установите NRPE и сценарий xinetd:

make all
sudo make install
sudo make install-xinetd
sudo make install-daemon-config

Откройте скрипт запуска xinetd в текстовом редакторе:

sudo vi /etc/xinetd.d/nrpe

В строку only_from добавьте внутренний IP-адрес сервера Nagios:

only_from = 127.0.0.1 10.132.224.168

Примечание: Укажите свой правильный IP-адрес.

Сохраните и закройте файл. Теперь взаимодействовать с NRPE сможет только сервер Nagios.

Перезапустите xinetd:

sudo service xinetd restart

Установка Nagios 4 успешно завершена. Теперь нужно настроить систему.

Настройка Nagios 4

Откройте главный конфигурационный файл Nagios в текстовом редакторе:

sudo vi /usr/local/nagios/etc/nagios.cfg

Найдите и раскомментируйте следующую строку:

#cfg_dir=/usr/local/nagios/etc/servers

Сохраните и закройте файл.

Создайте каталог для хранения конфигурационных файлов отслеживаемых серверов.

sudo mkdir /usr/local/nagios/etc/servers

Откройте конфигурационный файл contacts в текстовом редакторе:

sudo vi /usr/local/nagios/etc/objects/contacts.cfg

Найдите директиву email и укажите в ней свой адрес электронной почты.

email nagios@localhost ; <<***** CHANGE THIS TO YOUR EMAIL ADDRESS ******

Сохраните и закройте файл.

Настройка команды check_nrpe

Добавьте в настройки Nagios новую команду:

sudo vi /usr/local/nagios/etc/objects/commands.cfg

Добавьте в конец файла следующий код:

define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}

Сохраните и закройте файл. Теперь вы сможете использовать команду check_nrpe в определении серверов Nagios.

Настройка Apache

Включите модули rewrite и cgi:

sudo a2enmod rewrite
sudo a2enmod cgi

Используйте htpasswd, чтобы создать пользователя по имени nagiosadmin для доступа к веб-интерфейсу Nagios.

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

Введите пароль. Запомните эти учётные данные, поскольку они пригодятся для работы с веб-интерфейсом Nagios.

Примечание: Если назвать этого пользователя не nagiosadmin, то нужно будет отредактировать файл /usr/local/nagios/etc/cgi.cfg и во всех ссылках на nagiosadmin указать другое имя пользователя.

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

Теперь система Nagios готова к запуску. Не забудьте перезапустить Apache:

sudo service nagios start
sudo service apache2 restart

Чтобы настроить автозапуск Nagios, введите:

sudo ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios

Ограничение доступа по IP-адресу (опционально)

Чтобы разрешить доступ только определённым IP-адресам, отредактируйте конфигурацию Apache:

sudo vi /etc/apache2/sites-available/nagios.conf

Найдите и закомментируйте следующие строки:

Order allow,deny
Allow from all

Затем раскомментируйте следующие строки и добавьте IP-адреса или диапазоны IP-адресов (через пробел), которые будут иметь доступ к серверу, в директиву Allow from:

# Order deny,allow
# Deny from all
# Allow from 127.0.0.1

Примечание: Поскольку эти строки встречаются в конфигурационном файле два раза, нужно повторить эти инструкции дважды.

Сохраните и закройте файл.

Запустите Nagios и перезапустите Apache, чтобы обновить настройки:

sudo service nagios restart
sudo service apache2 restart

Веб-интерфейс Nagios

Откройте браузер и перейдите к Nagios по этой ссылке:

http://nagios_server_public_ip/nagios

Веб-сервер Apache использует htpasswd, потому нужно ввести учётные данные пользователя nagiosadmin.

Пройдя аутентификацию, вы получите доступ к домашней странице Nagios. Чтобы просмотреть список серверов, отслеживаемых Nagios, откройте Hosts в левой панели управления.

Как видите, на данный момент Nagios мониторит только localhost.

Мониторинг хоста при помощи NRPE

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

Примечание: Если вы хотите добавить несколько серверов, повторите эти инструкции на каждом из них.

Войдите на сервер, который нужно добавить в список отслеживаемых, и обновите apt-get:

sudo apt-get update

Затем установите Nagios Plugins и NRPE.

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

Настройка хостов

Откройте конфигурационный файл NRPE в текстовом редакторе:

sudo vi /etc/nagios/nrpe.cfg

Найдите директиву allowed_hosts и добавьте в конец внутренний IP-адрес сервера Nagios (через запятую).

allowed_hosts=127.0.0.1,10.132.224.168

Сохраните и закройте файл. Теперь NRPE будет принимать запросы от сервера Nagios через внутренний IP-адрес.

Настройка команд NRPE

Уточните имя файловой системы root (это один из компонентов, который будет отслеживаться):

Используйте имя файловой системы в конфигурации NRPE для мониторинга использования диска (/dev/vda). Откройте nrpe.cfg в редакторе:

sudo vi /etc/nagios/nrpe.cfg

Конфигурационный файл NRPE очень длинный и содержит много закомментированных строк. Вам понадобятся только следующие строки:

  • server_address: Укажите внутренний IP-адрес хоста.
  • allowed_hosts: Укажите внутренний IP-адрес сервера Nagios.
  • command: Замените/dev/hda1 именем файловой системы root.

В результате эти строки должны иметь такой вид:

server_address=client_private_IP
allowed_hosts=nagios_server_private_IP
command=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/vda

Обратите внимание: файл содержит несколько других строк command, которые может использовать Nagios. NRPE прослушивает порт 5666 (строка server_port=5666). Если этот порт заблокирован брандмауэром, не забудьте открыть его.

Сохраните и закройте файл.

Перезапустите NRPE, чтобы обновить настройки:

sudo service nagios-nrpe-server restart

После этого нужно добавить хост в настройки сервера Nagios.

Добавление хоста в настройки Nagios

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

sudo vi /usr/local/nagios/etc/servers/yourhost.cfg

Примечание: Вместо yourhost укажите имя своего хоста.

Добавьте в файл следующий код, заменив значение host_name именем удалённого хоста (в данном примере это web-1), значение alias – описанием хоста, а address – внутренним IP-адресом удалённого хоста.

define host {
use linux-server
host_name yourhost
alias My first Apache server
address 10.132.234.52
max_check_attempts 5
check_period 24x7
notification_interval 30
notification_period 24x7
}

Теперь Nagios будет мониторить данный сервер. Однако система будет отслеживать только состояние удалённого хоста (включен он или отключен). Если этого достаточно, сохраните и закройте файл. Если вы хотите мониторить отдельные сервисы на удалённом хосте, не закрывайте файл.

Ниже приведены примеры настройки отслеживания сервисов. Просто выберите сервис, который вы хотите отслеживать, и добавьте в файл предложенный блок настроек. Имейте в виду: значение команды check_command определяет, что именно будет отслеживаться.

define service {
use generic-service
host_name yourhost
service_description PING
check_command check_ping!100.0,20%!500.0,60%
}

SSH (notifications_enabled со значением 0 отключает уведомления):

define service {
use generic-service
host_name yourhost
service_description SSH
check_command check_ssh
notifications_enabled 0
}

Директива use generic-service просто наследует значения шаблона generic-service, установленного по умолчанию.

Сохраните и закройте файл. Перезапустите Nagios, чтобы обновить настройки:

sudo service nagios reload

После настройки откройте веб-интерфейс и проверьте страницу Services; теперь она должна содержать список только что добавленных удалённых хостов.

Заключение

Настроив мониторинг хостов и некоторых сервисов, определите, какие сервисы имеют решающее значение в работе сервера, и добавьте их в список. Также можно настроить извещения; к примеру, Nagios может сообщить о том, что использование диска достигло критической отметки или что веб-сайт не работает. Это позволяет вовремя устранить подобные проблемы.

Tags: ,

В больших сетях мониторинг стратегических объектов, таких как маршрутизаторы, web-серверы и файловые хранилища просто необходим, чем быстрее будет определена неисправность, тем быстрее ее устранят!
В качестве системы мониторинга я предлагаю использовать Nagios.
Для установки была выбрана платформа ubuntu 10.10 , воспользовавшись встроенным инсталятором установим nagios :

Стоит отметить что в данном случае apache можно не настраивать, так как базовой конфигурации вполне достаточно.
Теперь создадим файл, в котором будут описываться параметры хостов. Переходим к настройке :

cd /etc/nagios3/conf.d nano myhosts.cfg

В файле myhosts.cfg назначим каждому устройству адрес и описание :

define host { host_name Server-terminals alias Server terminals address 192.168.1.2 use generic-host } define host { host_name Server-www alias Server www address 192.168.1.12 use generic-host } define host { host_name Server-firewall alias Server firewall address 192.168.1.21 use generic-host } define host { host_name Server-statistic alias Server statistic address 192.168.1.20 use generic-host } define host { host_name Server-ad alias Server ad address 192.168.1.14 use generic-host } define host { host_name modem-ad alias Server ad address 10.0.0.1 parents Server-ad use generic-host } define host { host_name modem-www alias Server ad address 172.16.0.3 parents Sever-www use generic-host } define host { host_name modem-statistic alias Server ad address 192.168.0.253 parents Server-statistic use generic-host }

Параметром parents мы указываем к какому устройству,логически, данный объект будет подключаться, таким образом появляется возможность корректировать карту сети.
Все объявленные хосты мы сможем просмотреть на вкладке hosts браузера и выглядеть они будут таким образом:


Далее нам необходимо добавить объявленные устройства в группы, в зависимости от дальнейшего способа проверки, один компьютер можно вносить в несколько групп одновременно. Редактируем файл-групп :

Теперь когда группы созданы зададим параметры для проверки, в данном случае мы будем проверять на наличие пинга, и при высоком проценте потерянных пакетов nagios будет нас оповещать, изменяя цвет отдельного узла на карте.
И так правим файл сервисов :

Мы хотим заменить логотип отображаемого элемента на карте nagios , логотипы находятся в /usr/share/nagios/htdocs/images/logos , при изменении логотипа достаточно лишь указать новое картинки, находящейся по указанному пути.
Радактируем :

а именно параметр default_statuswrl_layout на значение от 0 до 5 .
Также я меняю период обновления страницы, в секундах, параметром refresh_rate
Теперь по образу и подобию вы самостоятельно сможете добавлять компьютеры и группы, думаю на этом простая настройка закончена. В дальнейшем я напишу об дополнительных настройках, связанных с системой оповещения.