Nagios установка и настройка windows

Обновлено: 05.07.2024

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

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

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

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

usermod -a -G nagios,nagcmd apache

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Получаем 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)

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

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

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

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


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]

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

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

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

nagios установка и настройка

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

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

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

В этой статье описывается, как отслеживать «частные» службы компьютеров Windows, такие как загрузка ЦП, использование диска, использование памяти, службы и т. Д. Для этого нам потребовалось установить надстройку NSClient ++ на машине Windows. Надстройка действует как прокси-сервер между компьютером Windows и Nagios и отслеживает фактические службы, взаимодействуя с подключаемым модулем check_nt. Плагин check_nt уже установлен на сервере мониторинга Nagios, если вы следовали нашему руководству по установке Nagios.

Мы предполагаем, что вы уже установили и настроили сервер Nagios в соответствии с нашими нижеследующими руководствами.

  1. Как установить Nagios 4.0.1 на RHEL/CentOS 6.x/5.x и Fedora 19/18/17
  2. Добавить хост Linux на сервер мониторинга Nagios

Чтобы контролировать машины с Windows, вам нужно будет выполнить несколько шагов, а именно:

  1. Установите надстройку NSClient ++ на машине Windows.
  2. Настройте Nagios Server для мониторинга Windows Machine.
  3. Добавьте новые определения хостов и служб для мониторинга компьютеров Windows.
  4. Перезапустите службу Nagios.

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

  1. Определение команды check_nt уже добавлено в файл command.cfg. Эта команда определения используется подключаемым модулем check_nt для мониторинга служб Windows.
  2. Шаблон хоста Windows-сервера, уже созданный в файле templates.cfg. Этот шаблон позволяет добавлять новые определения хостов Windows.

Два вышеуказанных файла, «command.cfg» и «templates.cfg», находятся в каталоге/usr/local/nagios/etc/objects /. Вы можете изменять и добавлять свои собственные определения в соответствии с вашими требованиями. Но я бы порекомендовал вам следовать инструкциям, описанным в этой статье, и вы сможете успешно контролировать свой хост Windows менее чем за 20 минут.

Шаг 1. Установка агента NSClient ++ на машине с Windows

Воспользуйтесь приведенными ниже инструкциями для установки агента NSClient ++ на удаленном узле Windows. Сначала загрузите исходные файлы аддона последней стабильной версии NSClient ++ 0.3.1, которые можно найти по ссылке ниже.

После загрузки последней стабильной версии распакуйте файлы NSClient ++ в новый каталог C:\NSClient ++.

Теперь откройте командную строку MS-DOS на начальном экране -> Выполнить -> введите «cmd», нажмите клавишу ВВОД и перейдите в каталог C:\NSClient ++.

Затем зарегистрируйте службу NSClient ++ в системе с помощью следующей команды.

Наконец, установите системную панель NSClient ++ с помощью следующей команды.


Откройте файл NSC.INI, расположенный в каталоге C:\NSClient ++, и раскомментируйте все модули, определенные в разделе «модули», за исключением CheckWMI.dll и RemoteConfiguration.dll.

Раскомментируйте «allowed_hosts» в разделе «Настройки» и укажите IP-адрес вашего сервера мониторинга Nagios или оставьте поле пустым, чтобы разрешить подключение любым хостам.

Раскомментируйте «порт» в разделе «NSClient» и установите порт по умолчанию «12489». Обязательно откройте порт «12489» в брандмауэре Windows.

Наконец, запустите службу NSClient ++ с помощью следующей команды.

Если вы правильно установили и настроили, вы должны увидеть новый значок на панели задач в желтом круге с черной буквой «M» внутри.

Шаг 2: Настройка сервера Nagios и добавление хостов Windows

Теперь войдите на сервер Nagios и добавьте некоторые определения объектов в файлы конфигурации Nagios для мониторинга новой машины Windows. Откройте файл windows.cfg для редактирования с помощью редактора Vi.

Пример определения хоста Windows, уже определенного для машины Windows, вы можете просто изменить определение хоста, например host_name, alias и address, на соответствующие значения вашей машины Windows.

Следующие службы уже добавлены и включены в файле windows.cfg. Если вы хотите добавить еще несколько определений других служб, которые необходимо отслеживать, вы можете просто добавить эти определения в тот же файл конфигурации. Обязательно измените host_name для всех этих сервисов на host_name, определенное на предыдущем шаге.

Наконец, раскомментируйте файл windows.cfg в /usr/local/nagios/etc/nagios.cfg.

Наконец, проверьте файлы конфигурации Nagios на наличие ошибок.

2. Функциональные возможности, которые могут быть достигнуты Nagios

3. Принцип реализации мониторинга Nagios

nagios

Программное обеспечение Nagios необходимо установить и запустить на отдельном сервере. Этот сервер называется центром мониторинга. Можно использовать сервер центра мониторинга.LinuxИли операционная система Unix; каждый отслеживаемый аппаратный хост или служба запускает программный демон Nagios, который взаимодействует с сервером центра мониторинга, который также может пониматься как агент или плагин. Сервер центра мониторинга читает инструкции в файле конфигурации для связи с удаленным демоном и дает команду удаленному демону выполнить необходимые проверки. Хотя программное обеспечение Nagios должно работать в операционных системах Linux или Unix, удаленно контролируемая машина может быть любым хостом, который может связываться с ним. Согласно ответу, возвращенному удаленным хостом, Naigos ответит в соответствии с конфигурацией; затем Nagios будет использовать локальную машину Выполните тест. Если возвращаемое значение обнаружения неверно, Nagios подаст сигнал одним или несколькими способами; конкретный принцип показан на рисунке ниже:

4. Установка и настройка Nagios

4.1 Установка Nagios

1). Подготовка перед установкой

rpmforge - release - 0.3.6 - 1.el6.rf.x86_64.rpm

2). Установите соответствующие пакеты программного обеспечения.

openssl - devel php mailx postfix cpp gcc gcc - c ++ libstdc ++ glib2 - devel

libtoul - ltdl - devel

3). Создание пользователей и групп.

4). Скомпилируйте и установите Nagios.

-- with - nagios - group = nagios -- with - command - user = nagios

-- with - command - group = nagcmd -- enable - event - broker -- enable - nanosleep

-- enable - embedded - perl -- with - perlcache

4.2 Установка и настройка Apache

Поскольку Nagios предоставляет интерфейс веб-мониторинга, вы можете четко видеть рабочий статус отслеживаемого хоста и ресурсов через веб-интерфейс, поэтому для установки требуется установка службы Apache. В то же время для настройки интерфейса веб-мониторинга требуется поддержка модуля PHP.Здесь вы можете выбрать программный пакет, который поставляется с текущей системой, или вы можете скомпилировать и установить его через исходный пакет.

1). Установите Apache и php.

2). Настроить Apache

DirectoryIndex index.html index.html.var

Измените его на:

DirectoryIndex index.html index.php

Затем добавьте следующий контент в файл конфигурации Apache

3). Установить контроль доступа пользователей

Установить почтовый сервис Postfix

Платформа мониторинга Nagios поддерживает функцию оповещения по электронной почте, поэтому необходимо установить почтовый сервис. Здесь мы используем более распространенный в Интернете MTA - Postfix. Вы также можете определить его в соответствии с вашей собственной производственной средой, такой как Sendmail, Qmail и т. Д. Поскольку Nagios использует только функцию отправки почты Postfix, нет необходимости слишком сильно настраивать почтовую службу Postfix.Установите пакет Postfix, запустите службу и автоматически загрузите ее при следующем перезапуске сервера. Конкретные команды следующие:

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

Различные функции мониторинга, предоставляемые Naigos, в основном выполняются с помощью подключаемых модулей, в то время как ядро ​​Nagios предоставляет несколько функций, поэтому очень необходимо устанавливать подключаемые модули. Официальный веб-сайт Nagios предоставляет множество подключаемых приложений в разных разделах, и версия подключаемого модуля не имеет ничего общего с версией Nagios. Если он поддерживает функцию локализации, вам необходимо найти соответствующий пакет программного обеспечения для локализации, в противном случае некоторые функции не будут работать. Оставьте здесь значение по умолчанию. Английский, например, следующие сведения об установке:

-- with - command - user = nagios -- with - command - group = nagcmd \

-- prefix = / usr / local / nagios

Таким образом устанавливается подключаемый модуль Nagios.Проверяя главный программный каталог Nagios, вы можете увидеть множество исполняемых файлов внешнего модуля в каталоге / usr / local / nagios / linexec.

4.4 Перезапуск службы Nagios

4.5 Отключить SeLinux и iptables

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

4.6 Доступ к платформе мониторинга Nagios

4.7 Конфигурация Nagios

1). Каталог Nagios и описание связанного с ним файла конфигурации.

После завершения установки Nagios каталоги и файлы конфигурации, связанные с nagios, будут созданы в каталоге / usr / local / nagios /. Файлы конфигурации по умолчанию находятся в каталоге / usr / local / nagios / etc. Подробное описание см. В следующей таблице:

Имя каталога эффект
bin Каталог, в котором находится исполняемая программа Nagios.
etc Каталог файлов конфигурации Nagios
sbin Каталог, в котором находится файл Nagios cgi, то есть каталог, в котором находятся файлы, необходимые для выполнения внешних команд.
share Путь к хранилищу веб-страницы Nagios
libexec Каталог внешнего хранилища плагинов Nagios
var Каталог, в котором находятся файлы журнала Nagios, Lock и другие файлы.
var/archives Каталог автоматического архива журнала Nagios
var/rw Каталог, используемый для хранения внешних командных файлов

2). Обзор роли файлов конфигурации.

Файл конфигурации Описание
cgi.cfg Файл конфигурации, который управляет доступом CGI
nagios.cfg Основной файл конфигурации Nagios
resource.cfg Файлы определения переменных, также известные как файлы ресурсов, определяют переменные в этом файле, чтобы на них могли ссылаться другие файлы конфигурации, такие как $ USER1 $.
objects Объекты - это каталог, в этом каталоге есть много шаблонов файлов конфигурации, используемых для определения объектов Nagios.
objects/commands.cfg Файл конфигурации определения команды, на определенную команду могут ссылаться другие файлы конфигурации
objects/contacts.cfg Определите профили для контактов и групп контактов
objects/localhost.cfg Определите файл конфигурации для мониторинга локального хоста
objects/printer.cfg Определите шаблон файла конфигурации для мониторинга принтеров, этот файл по умолчанию не включен
objects/switch.cfg Шаблон файла конфигурации для мониторинга маршрутизаторов, этот файл по умолчанию не включен.
objects/templates.cfg Файл конфигурации шаблона, который определяет хосты и службы, на которые можно ссылаться в других файлах конфигурации.
objects/timeperiods.cfg Файл конфигурации, определяющий период времени мониторинга Nagios.
objects/windows.cfg Шаблон файла конфигурации для мониторинга хостов Windows, этот файл не включен по умолчанию.
Примечания: Nagios очень гибок в настройке, и файл конфигурации по умолчанию не требуется. Вы можете использовать эти файлы конфигурации по умолчанию или создать свои собственные файлы конфигурации, а затем ссылаться на них в основном файле конфигурации nagios.cfg.

3). Связь между файлами конфигурации Nagios

Процесс настройки Nagios включает в себя несколько определений: хост, группа хостов, служба, группа услуг, контакт, группа контактов, время мониторинга и команда мониторинга и т. Д. Из этих определений можно увидеть, что различные файлы конфигурации Nagios являются взаимоисключающими. Родственны и относятся друг к другу. Чтобы успешно настроить систему мониторинга Nagios, вам необходимо понять зависимость и зависимые отношения между каждым файлом конфигурации. Вы можете начать со следующих четырех шагов. Первый шаг: определить, какие хосты, группы хостов, службы и группы сервисов, а второй Шаг: чтобы определить команду для достижения этого мониторинга, третий шаг: определить период времени мониторинга, четвертый шаг: определить контакт и группу контактов, которые будут уведомлены при возникновении проблемы с хостом или службой; настоятельно рекомендуется следовать указанной выше последовательности Настройте систему Nagios.

4). Настройки конфигурации Nagios

nagios

Каталог и файлы конфигурации Nagios:

nagios

Файл шаблона объекта Nagios:

Каталог пользовательского мониторинга:

По умолчанию nagios.cfg включает некоторые файлы конфигурации объекта, такие как comands.cfg, contacts.cfg localhost.cfg, contacts.cfg, windows.cfg и т. Д. Мы используем его здесь, чтобы лучше управлять и поддерживать платформу Nagios. Чтобы создать собственный каталог, создайте папку монитора в каталоге / usr / local / nagios / etc / для сохранения управляемых отслеживаемых объектов. В то же время аннотируйте файл конфигурации объекта, определенный в файле конфигурации nagios.cfg по умолчанию, и добавьте строку в файл nagios.cfg: cfg_dir = / usr / local / nagios / etc / monitor, как показано ниже:

nagios

Nagios позволяет настраивать каталоги:

Конфигурация Nagios заключается в основном в изменении и настройке файла конфигурации объекта мониторинга. Здесь вам необходимо скопировать все шаблоны файлов конфигурации объекта в каталог объектов и создать независимые файлы конфигурации hosts.cfg и service.cfg под файлом монитора для определения хоста и Что касается сервиса, то в отношении периода контакта и мониторинга оставьте здесь конфигурацию по умолчанию. Как показано ниже:

nagios

Файл конфигурации объекта в пользовательском каталоге:

3.1 1. Зайдите на вашу виртуальную машину как sysadm.

3.2 2. Установите Nagios версии 3

Во время установки вас спросят о "Nagios web administration password:" - этот пользователь называется "nagiosadmin". Введите тот же пароль что и для вашего пользователя "sysadm".

Замечание: если вы этого еще не сделали, вас могут попросить настроить Postfix (почтовый сервер) во время установки Nagios. Просто примите настройки по умолчанию для "Internet Site".

3.3 3. Посмотрите исходную конфигурацию.

Откройте броузер, и посетите следующий URL на вашей виртуальной машине:

Нажмите на ссылку "Hosts" слева главной страницы, чтобы увидеть, что уже настроено.

3.4 4. Добавьте роутеры, PC, и маршрутизаторы

Мы создадим три файла, routers.cfg, switches.cfg, и pcs.cfg, и создайте записи для оборудования в нашем классе.

3.4.1 4a. Создание файла switches.cfg

В этом файле добавьте следующую запись (СКОПИРУЙТЕ!):

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

3.4.2 4b. Создание файла "routers.cfg"

Всего у нас до 10 роутеров - rtr1-rtr9 и gw. У нас также есть две беспроводные точки доступа (ap1, ap2). Мы создадим записи для некоторых из этих устройств. Если какие-то из этих устройств не существуют в вашем классе, не включайте их в конфигурацию. Помните, просто СКОПИРУЙТЕ нижеследующие записи, не пытайтесь перепечатать все вручную.

*** Замечание: вам не обязательно добавлять все определения роутеров прямо сейчас - в всегда можете вернуться и добавить оставшиеся позднее! ***

Теперь сохраните файл и выйдите из редактора.

3.4.3 4c. Создание файла pcs.cfg

Теперь мы создадим записи для некоторых из виртуальных машин в классе. Ниже мы приводим первые несколько записей. Вам следует поместить в этот файл столько виртуальных машин, сколько возможно. Мы советуем добавить по крайней мере 4 машины, которые принадлежат вашей группе, а также запись для машины NOC, и по крайней мере одну виртуальную машину из другой группы (помните, КОПИРУЙТЕ, не печатайте!):

Сохраните файл и выйдите из редактора. Вы можете добавить больше записей для виртуальных машин позднее.

3.5 ШАГИ 5a - 5c ДОЛЖНЫ БЫТЬ ВЫПОЛНЕНЫ КАЖДЫЙ РАЗ, ВЫ МЕНЯЕТЕ КОНФИГУРАЦИЮ!

3.5.1 5a. Убедитесь, что конфигурация не содержит ошибок

Вы увидите предупреждения, похожие на приведенные ниже. Не обращайте пока на них внимания.

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

3.5.2 5b. Перезагрузите/перестартуйте Nagios

ПОДСКАЗКА: Вы будете делать это много раз. Если вы сделаете это на одной строке, вы сможете использовать стрелки вверх для повтора команды:

Связка '&&' обеспечивает, что перезагрузка происходит только когда конфигурация не содержит ошибок.

3.5.3 5c. Проверьте работоспособность через Web-интерфейс

3.6 6. Посмотрите на диаграмму состояния сети

Нажмите на "Map" слева. Вы должны увидеть все ваши устройства с сервером Nagios посередине. Вопросительные знаки означают, что мы не указали, какой тип имеет каждое устройство (роутер, маршрутизатор, точка доступа, сервер Linux, и т.д. )

4.1 0. Конфигурация

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

4.2 1. Добавьте проверку сервиса на машине NOC

  • Найдите группу хостов под названием "ssh-servers". В разделе "members" поменяйте строку:

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

Убедитесь, что конфигурация не содержит ошибок:

Перезапустите Nagios чтобы увидеть связь нового сервиса с вашей машиной:

В web-интерфейсе, найдите ссылку "Services" (меню слева), и нажмите на нее.

Вы должны увидеть ваше последнее изменение:

Замечания: У умолчанию, интервал проверки, normal_check_interval равен 5 минутам для сервисов. Это определено в "generic-service_nagios2.cfg". Вы можете установить значение этого параметра в 1 минуту для ускорения работы, по крайней мере во время этого семинара.

5.1 1. Определите, какие сервисы связать с какими машинами

Это основная концепция использования Nagiosа и систем сетевого мониторинга вообще. До сих пор мы использовали ping для проверки того, что физические устройства работают в нашей сети; мы начали мониторить один сервис на одной машине. Следующий шаг - решить, какие сервисы (web сервер, SSH, etc.) вы хотите мониторить на каких устройствах в классе.

Для этого курса, у нас есть:

Давайте настроим Nagios проверять эти сервисы на этих устройствах.

5.2 2. Настройте мониторинг сервиса SSH для роутеров и виртуальных машин

Файл "services_nagios2.cfg" уже содержит запись для проверки SSH сервиса, поэтому нам не нужно создавать эту проверку. Вместо этого, нам нужно просто переопределить запись "ssh-servers" в файле /etc/nagios3/conf.d/hostgroups_nagios2.cfg . Исходно, эта запись выглядит так:

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

Замечание: не удаляйте "localhost" - это ваша PC, представляющая сетевую точку зрения со стороны Nagios. Таким образом, если ваша виртуальная машина - "pc3", вам НЕ надо добавлять "pc3" в список, поскольку она уже представлена записью "localhost".

Запись "members" будет довольно длинной строкой и скорее всего не поместится в ширну экрана. Если вы хотите добавить дополнительные имена устройств на новой строке, используйте "" в конце предыдущей строки, например:

Не забудьте добавить все устройства, которые вы определили в файлах "pcs.cfg", "switches.cfg" и "routers.cfg". Добавляйте только записи из этих файлов, (например, не добавляйте "pc8", если "pc8" не наличествует такж и в "pcs.cfg").

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

. и посмотрите ваши изменения в web-интерфейсе Nagiosа.

Продолжая с группами хостов, вы можете определить дополнительные группы для дальнейшего использования, такие как все наши роутеры. Отредактируйте файл hostgroups_nagios2.cfg снова:

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

Указывайте только роутеры, присутствующие в "routers.cfg".

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

Если все нормально, перезапустите Nagios

Если у вас есть вопросы или вы чего-то не понимаете, попросите помощи у преподавателя.

Читайте также: