Интеграция с системами мониторинга |
![]() ![]() ![]() |
SNMP-агент Dr.Web может выступать поставщиком данных для любой системы мониторинга, использующей протокол SNMP версии 2c или 3. Перечень данных, доступных для контроля и их структура описаны в файле описания MIB Dr.Web DrWeb-Snmpd.mib, поставляемом совместно с продуктом. Этот файл находится в каталоге <opt_dir>/share/drweb-snmpd/mibs. Для удобства настройки, совместно с компонентом поставляются необходимые шаблоны настроек для популярных систем мониторинга: Шаблоны настроек для систем мониторинга находятся в каталоге <opt_dir>/share/drweb-snmpd/connectors. Интеграция с системой мониторинга Munin Система мониторинга Munin состоит из централизованного сервера (мастера) munin, собирающего статистику от клиентов munin-node, располагающихся локально на узлах, подлежащих наблюдению. Каждый клиент мониторинга по запросу от сервера собирает данные о работе наблюдаемого узла, запуская подключаемые модули (plug-ins), предоставляющие данные для передачи на сервер. Для подключения Dr.Web SNMPD к системе мониторинга Munin в каталоге <opt_dir>/share/drweb-snmpd/connectors/munin/plugins поставляются готовые подключаемые модули сбора данных Dr.Web, используемые munin-node. Эти модули собирают данные для построения следующих графиков: •Количество обнаруженных угроз. •Статистика проверки файлов. •Статистика проверки почтовых сообщений. Указанные модули поддерживают использование протокола SNMP версий 1, 2c и 3. На основе этих шаблонных модулей можно создать любые подключаемые модули, опрашивающие состояние программного комплекса Dr.Web для Интернет-шлюзов UNIX через Dr.Web SNMPD. В каталоге <opt_dir>/share/drweb-snmpd/connectors/munin поставляются следующие файлы.
Подключение узла к Munin В данной инструкции предполагается, что система мониторинга Munin уже корректно развернута на сервере мониторинга, а на наблюдаемом узле установлены и корректно функционируют Dr.Web SNMPD (возможно, в режиме прокси совместно с snmpd) и munin-node. 1.Настройка на наблюдаемом узле •Скопируйте файлы snmp__drweb_* в каталог библиотек подключаемых модулей munin-node (этот путь зависит от используемой ОС. Например, в Debian/Ubuntu это путь /usr/share/munin/plugins). •Сконфигурируйте munin-node, подключив к нему поставляемые подключаемые модули Dr.Web. Для этого используйте утилиту munin-node-configure, которая поставляется совместно с munin-node. Например, команда
выведет на экран терминала список команд для создания необходимых символических ссылок на подключаемые модули. Скопируйте и выполните их в командной строке. Обратите внимание, что указанная команда предполагает, что: 1)munin-node установлена на том же узле в сети, что и Dr.Web SNMPD. Если это не так, то следует указать вместо localhost правильный FQDN или IP-адрес наблюдаемого узла; 2)Dr.Web SNMPD использует протокол SNMP версии 2c. Если это не так, то следует указать правильную версию протокола SNMP в вызове команды munin-node-configure. Эта команда имеет набор ключей, которые позволяют гибко настроить подключаемые модули, в том числе – указать используемую версию протокола SNMP, порт, используемый SNMP-агентом на наблюдаемом узле, строку community string и т.п. При необходимости воспользуйтесь справкой по команде munin-node-configure. •При необходимости определите (или переопределите) значения параметров среды, в которой должны исполняться установленные подключаемые модули Dr.Web для munin-node. В качестве параметров среды используется значение community string, используемый SNMP-агентом порт и так далее. Эти параметры необходимо определить в файле /etc/munin/plugin-conf.d/drweb (создайте его при необходимости). В качестве примера данного файла используйте поставляемый файл drweb.cfg. •В файле конфигурации munin-node (munin-node.conf) укажите регулярное выражение, которому должны соответствовать IP-адреса узлов сети, с которых серверам (мастерам) munin разрешено подключаться к munin-node на данном узле для получения значений контролируемых параметров, например:
В данном случае регулярное выражение разрешает получение параметров этого узла только узлу с IP-адресом 10.20.30.40. •Перезапустите munin-node, например, командой:
2.Настройка на сервере (мастере) Munin В конфигурационный файл мастера Munin munin.conf, который по умолчанию хранится в каталоге /etc (в системах Debian/Ubuntu – /etc/munin/munin.conf), добавьте запись с адресом и идентификатором наблюдаемого узла:
где <ID> – отображаемый идентификатор узла; <hostname> – имя узла; <domain> – имя домена; <host IP address> – IP-адрес узла. С официальной документацией по настройке системы мониторинга Munin вы можете ознакомиться по ссылке http://munin.readthedocs.io. Интеграция с системой мониторинга Zabbix Для подключения Dr.Web SNMPD к системе мониторинга Zabbix в каталоге <opt_dir>/share/drweb-snmpd/connectors/zabbix поставляются следующие файлы шаблонов.
Шаблон описания наблюдаемого узла содержит: •Набор описаний счетчиков («items», в терминологии Zabbix). По умолчанию шаблон настроен на использование протокола SNMP v2. •Набор настроенных графиков: количество проверенных файлов и распределение обнаруженных угроз по типам. Подключение узла к Zabbix В данной инструкции предполагается, что система мониторинга Zabbix уже корректно развернута на сервере мониторинга, а на наблюдаемом установлен и корректно функционирует Dr.Web SNMPD (возможно, в режиме прокси совместно с snmpd). Кроме того, если планируется получать с наблюдаемого узла оповещения SNMP trap (в частности – об обнаружении Dr.Web для Интернет-шлюзов UNIX угроз на защищаемом сервере), на сервере мониторинга также должен быть установлен пакет net-snmp (используются стандартные утилиты snmptt и snmptrapd). 1.В веб-интерфейсе Zabbix, на вкладке Configuration –> Templates, импортируйте шаблон наблюдаемого узла из файла <opt_dir>/share/drweb-snmpd/connectors/zabbix/zbx_drweb.xml. 2.Добавьте наблюдаемый узел в список узлов (используйте ссылку Hosts –> Create host). Укажите параметры узла и корректные настройки SNMP-интерфейса (должны соответствовать настройкам drweb-snmpd и snmpd на узле): •Вкладка Host: Host name: drweb-host Visible name: DRWEB_HOST Groups: выбрать Linux servers Snmp interfaces: Нажмите add и укажите IP-адрес и порт, используемый Dr.Web SNMPD (по умолчанию предполагается, что Dr.Web SNMPD работает на локальном узле, поэтому здесь указан адрес 127.0.0.1, а в качестве порта указан стандартный порт 161). •Вкладка Templates: Нажмите Add, отметьте DRWEB, нажмите select. •Вкладка Macros: Macro: {$SNMP_COMMUNITY} Value: укажите «read community» для SNMP V2c (по умолчанию – public). Нажмите Save. Примечание: Макрос {$SNMP_COMMUNITY} можно указать непосредственно в шаблоне узла.
3.После привязки шаблона к наблюдаемому узлу, если настройки SNMP корректны, система мониторинга Zabbix начнет сбор данных для счетчиков (items), содержащихся в шаблоне, на вкладках веб-интерфейса Monitoring –> Latest Data и Monitoring –> Graphs будут отображаться собранные данные счетчиков. 4.Специальный элемент (item) drweb-traps служит для сбора уведомлений SNMP trap от Dr.Web SNMPD. Журнал полученных оповещений SNMP trap доступен на странице Monitoring –> Latest Data –> drweb-traps –> history. Для сбора оповещений Zabbix использует стандартные утилиты snmptt и snmptrapd из пакета net-snmp. О их настройке для получения уведомлений SNMP trap от Dr.Web SNMPD см. ниже. 5.В случае необходимости, вы можете настроить для добавленного наблюдаемого узла триггер, изменяющий свое состояние при получении уведомлений SNMP trap от Dr.Web SNMPD. Изменение состояния этого триггера можно использовать как источник событий для формировать соответствующих нотификаций. Триггер для наблюдаемого узла добавляется стандартным способом, ниже показан пример выражения, указываемого в поле trigger expression для описанного триггера: •Для Zabbix версии 2.x:
•Для Zabbix версии 3.x:
Данный триггер срабатывает (устанавливается в значение 1), если журнал уведомлений SNMP trap, поступающих от Dr.Web SNMPD был обновлен в течение минуты. Если же журнал в течение минуты не обновлялся, то триггер выключается (меняет состояние на 0). В поле Severity (Важность) для этого триггера рекомендуется устанавливать вид уведомления, отличный от Not classified (Не классифицировано), например – Warning (Предупреждение). Настройка приема уведомлений SNMP trap для Zabbix 1.На наблюдаемом узле в настройках Dr.Web SNMPD (параметр TrapReceiver) указывается адрес, который прослушивается snmptrapd на узле с Zabbix, например:
2.В конфигурационном файле snmptrapd (snmptrapd.conf) указывается тот же адрес, а также приложение, которое будет обрабатывать полученные уведомления SNMP trap (в данном случае – snmptthandler, компонент snmptt):
Чтобы snmptt не отклонял, как неизвестные, уведомления SNMP trap, отправленные Dr.Web SNMPD, добавьте в этот файл также строку:
3.Компонент snmptthandler сохраняет принимаемые уведомления SNMP trap в файл на диске в соответствии с указанным форматом, который должен соответствовать регулярному выражению, заданному в шаблоне узла для Zabbix (элемент (item) drweb-traps). Формат сохраняемого сообщения о поступлении уведомления SNMP trap поставляется в файле <opt_dir>/share/drweb-snmpd/connectors/zabbix/snmptt.drweb.zabbix.conf, который необходимо скопировать в каталог /etc/snmp. 4.Кроме этого, путь к файлам формата необходимо указать в конфигурационном файле snmptt.ini:
После этого, если snmptt запущен в режиме демона, то его надо перезапустить. 5.В конфигурационном файле сервера Zabbix (zabbix-server.conf) необходимо задать (или проверить наличие) следующих настроек:
где /var/log/snmptt/snmptt.log – это файл журнала, в который snmptt записывает информацию о поступивших уведомлениях SNMP trap. Подробнее с официальной документацией по Zabbix вы можете ознакомиться по ссылке https://www.zabbix.com/documentation/. Интеграция с системой мониторинга Nagios Для подключения Dr.Web SNMPD к системе мониторинга Nagios в каталоге <opt_dir>/share/drweb-snmpd/connectors/nagios поставляются следующие файлы примеров конфигурации Nagios.
Подключение узла к Nagios В данной инструкции предполагается, что система мониторинга Nagios уже корректно развернута на сервере мониторинга, включая настройку веб-сервера и графического средства Nagiosgraph, а на наблюдаемом установлен и корректно функционирует Dr.Web SNMPD (возможно, в режиме прокси совместно с snmpd). Кроме того, если планируется получать с наблюдаемого узла уведомления SNMP trap (в частности – об обнаружении Dr.Web для Интернет-шлюзов UNIX угроз на защищаемом сервере), на сервере мониторинга также должен быть установлен пакет net-snmp (используются стандартные утилиты snmptt и snmptrapd). В данном руководстве по подключению используются следующие соглашения о путях (реальные пути зависят от ОС и установки Nagios): •<NAGIOS_PLUGINS_DIR> – каталог плагинов Nagios, например: /usr/lib64/nagios/plugins. •<NAGIOS_ETC_DIR> – каталог настроек Nagios, например: /etc/nagios. •<NAGIOS_OBJECTS_DIR> – каталог объектов Nagios, например: /etc/nagios/objects. •<NAGIOSGRAPH_DIR> – каталог Nagiosgraph, например: /usr/local/nagiosgraph. •<NAGIOS_PERFDATA_LOG> – файл, в который Nagios записывает результаты выполнения команд проверки сервисов (должен совпадать с файлом perflog из <NAGIOSGRAPH_DIR>/etc/nagiosgraph.conf). Записи из этого файла считываются сценарием <NAGIOSGRAPH_DIR>/bin/insert.pl и записываются в соответствующие RRA-архивы RRD Tool. Настройка Nagios: 1.Скопируйте файл check_drweb в каталог <NAGIOS_PLUGINS_DIR>, а файл drweb.cfg – в каталог <NAGIOS_OBJECTS_DIR>. 2.Добавьте в группу drweb узлы с установленным продуктом Dr.Web, подлежащие наблюдению (на них должен быть запущен Dr.Web SNMPD), по умолчанию в данную группу включен только локальный узел localhost. 3.Отредактируйте (при необходимости) команду check_drweb, в которой указывается обращение к Dr.Web SNMPD на узлах drweb через утилиту snmplwalk:
укажите правильную версию протокола SNMP и параметры (такие, как "community string" или параметры аутентификации), а также порт. Переменную $HOSTADDRESS$ необходимо оставить в команде (она автоматически заменяется Nagios на правильный адрес узла при вызове команды). OID в команде указывать не требуется. Рекомендуется также указать команду вместе с полным путем к исполняемому файлу (обычно – /usr/local/bin/snmpwalk). 4.Подключите объекты DrWeb в конфигурационном файле <NAGIOS_ETC_DIR>/nagios.cfg, добавив в него строку:
5.Добавьте настройки RRD Tool для графиков DrWeb из файла rrdopts.conf-sample в файл <NAGIOSGRAPH_DIR>/etc/rrdopts.conf. 6.Если компонент Nagiosgraph еще не настроен, то выполните его настройку: •Скопируйте файл nagiosgraph.cfg в каталог <NAGIOS_OBJECTS_DIR> и исправьте путь к файлу сценария insert.pl в команде process-service-perfdata-for-nagiosgraph, например, так:
•Подключите этот файл в конфигурационном файле <NAGIOS_ETC_DIR>/nagios.cfg, добавив в него строку:
7.Проверьте значения переменных конфигурации Nagios в конфигурационном файле <NAGIOS_ETC_DIR>/nagios.cfg:
Настройка приема уведомлений SNMP trap для Nagios 1.На наблюдаемом узле в настройках Dr.Web SNMPD (параметр TrapReceiver) укажите адрес, который прослушивается snmptrapd на узле с Nagios, например:
2.Проверьте наличие файла сценария <NAGIOS_PLUGINS_DIR>/eventhandlers/submit_check_result, который будет вызываться при получении уведомлений SNMP trap. Если этого файла нет, то следует скопировать в это место файл submit_check_result из каталога <opt_dir>/share/drweb-snmpd/connectors/nagios/plugins/eventhandlers/. Необходимо в этом файле исправить путь, указанный в параметре CommandFile. Он должен иметь такое же значение, что и параметр command_file в файле <NAGIOS_ETC_DIR>/nagios.cfg. 3.Скопируйте файл snmptt.drweb.nagios.conf в каталог /etc/snmp/snmp/. В этом файле измените путь к файлу сценария submit_check_result, например, используя следующую команду:
4.Добавьте в файл /etc/snmp/snmptt.ini строку «/etc/snmp/snmptt.drweb.nagios.conf». После этого, если snmptt запущен в режиме демона, то его надо перезапустить. После того как все требуемые файлы конфигурации Nagios были добавлены и отредактированы, необходимо запустить Nagios в режиме отладки командой
В этом случае Nagios проверит наличие ошибок конфигурации. Если при проверке ошибки не найдены, перезапустите Nagios стандартным способом (например, командой ОС service nagios restart). Подробнее с официальной документацией по Nagios вы можете ознакомиться по ссылке http://www.nagios.org/documentation/. |