В серии статей про Nagios мы уже успели установить Nagios, научились мониторить Windows и Linux хосты. В данной статье я покажу как мониторить активные сессии и температуру на VPN устройстве.
1. Определяем конфигурационный файл для VPN устройства
Вы можете либо создать новый конфигурационный файл, например vpn.cfg, либо использовать какой либо из уже существующих. В этой статье, я добавлю определение VPN сервиса и определения группы хостов в уже существующий файл switch.cfg. Убедитесь что строка с данным файлом раскомментирована в файле nagios.cfg.
# grep switch.cfg /usr/local/nagios/etc/nagios.cfg cfg_file=/usr/local/nagios/etc/objects/switch.cfg
2. Добавляем новую hostgroup для VPN устройства в switch.cfg
Добавляем в файл /usr/local/nagios/etc/objects/switch.cfg группу ciscovpn .
define hostgroup{ hostgroup_name ciscovpn alias Cisco VPN Concentrator }
3. Добавляем новые VPN устройства в switch.cfg
В этом примере я определяю два Cisco VPN в файле /usr/local/nagios/etc/objects/switch.cfg. Измените IP адреса хостов на используемые у вас.
define host{ use generic-host host_name cisco-vpn-primary alias Cisco VPN Concentrator Primary address 192.168.1.7 check_command check-host-alive max_check_attempts 10 notification_interval 120 notification_period 24x7 notification_options d,r contact_groups admins hostgroups ciscovpn } define host{ use generic-host host_name cisco-vpn-secondary alias Cisco VPN Concentrator Secondary address 192.168.1.9 check_command check-host-alive max_check_attempts 10 notification_interval 120 notification_period 24x7 notification_options d,r contact_groups admins hostgroups ciscovpn }
4. Добавляем новые сервисы для мониторинга активных сессий VPN и температуры устройства в файл switch.cfg
Добавьте сервис “Temperature” и “Active VPN Sessions” в файл /usr/local/nagios/etc/objects/switch.cfg file.
define service{ use generic-service hostgroup_name ciscovpn service_description Temperature is_volatile 0 check_period 24x7 max_check_attempts 4 normal_check_interval 10 retry_check_interval 2 contact_groups admins notification_interval 960 notification_period 24x7 check_command check_snmp!-l Temperature -o .1.3.6.1.4.1.3076.2.1.2.22.1.29.0,.1.3.6.1.4.1.3076.2.1.2.22.1.33.0 -w 37,:40 -c :40,:45 } define service{ use generic-service hostgroup_name ciscovpn service_description Active VPN Sessions is_volatile 0 check_period 24x7 max_check_attempts 4 normal_check_interval 5 retry_check_interval 1 contact_groups admins notification_interval 960 notification_period 24x7 check_command check_snmp!-l ActiveSessions -o 1.3.6.1.4.1.3076.2.1.2.17.1.7.0,1.3.6.1.4.1.3076.2.1.2.17.1.9.0 -w :70,:8 -c :75,:10 }
5. Проверяем команду check_snmp
Плагин Check_snmp использует команду ’snmpget’ из пакета NET-SNMP. Убедитесь что данный пакет установлен в вашей системе.
# rpm -qa | grep -i net-snmp net-snmp-libs-5.1.2-11.el4_6.11.2 net-snmp-5.1.2-11.el4_6.11.2 net-snmp-utils-5.1.2-11.EL4.10
Проверяем что команда check_snmp работает правильно.
# /usr/local/nagios/libexec/check_snmp -H 192.168.1.7 -P 2c -l Temperature -w :35,:40 -c :40,:45 -o .1.3.6.1.4.1.3076.2.1.2.22.1.29.0,.1.3.6.1.4.1.3076.2.1.2.22.1.33.0 Temperature OK - 35 38 | iso.3.6.1.4.1.3076.2.1.2.22.1.29.0=35 iso.3.6.1.4.1.3076.2.1.2.22.1.33.0=38 # /usr/local/nagios/libexec/check_snmp -H 192.168.1.7 -P 2c -l ActiveSessions -w :80,:40 -c :100,:50 -o 1.3.6.1.4.1.3076.2.1.2.17.1.7.0,1.3.6.1.4.1.3076.2.1.2.17.1.9.0 ActiveSessions CRITICAL - *110* 20 | iso.3.6.1.4.1.3076.2.1.2.17.1.7.0=110 iso.3.6.1.4.1.3076.2.1.2.17.1.9.0=20
В данном примере использовались следующие параметры:
- -H, –hostname=ADDRESS Имя хоста, IP адрес, или Unix сокет
- -P, –protocol=[1|2c|3] Версия протокола SNMP
- -l, –label=STRING Префикс указывающий на нужный сервис, либо Temerature or ActiveSessions
- -w, –warning=INTEGER_RANGE(s) Диапазон выдающий статус WARNING
- -c, –critical=INTEGER_RANGE(s) Диапазон выдающий статус CRITICAL
- -o, –oid=OID(s) Идентификатор объекта или переменная SNMP, которая запрашивается на удаленном хосте.
В примере с ActiveSessions , мониторятся два различных OID, один получает количество туннелей VPN LAN-2-LAN (iso.3.6.1.4.1.3076.2.1.2.17.1.7.0), а другой количество сессий PPTP (iso.3.6.1.4.1.3076.2.1.2.17.1.9.0). Как вы можете видеть, количество активных сессий VPN LAN-2-LAN превысило критический лимит 100.
6. Проверяем конфигурационный файл и перезапускаем Nagios
Проверяем конфигурационный файл и убеждаемся что нет ошибок или предупреждений.
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg Total Warnings: 0 Total Errors: 0 Things look okay - No serious problems were detected during the pre-flight check
Перезапускаем Nagios.
# /etc/rc.d/init.d/nagios stop Stopping nagios: .done. # /etc/rc.d/init.d/nagios start Starting nagios: done.
Проверяем статус ActiveSessions и Temperature в веб интерфейсе Nagios.
О разном
Продажа и доставка бетона по Москве. Аренда автобетоносмесителей. Быстро и качественно.