Попытайтесь включить отладку в nrpe конфигурационном файле nrpe.conf на Вашем узле разработки. Набор debug=1, перезапуск nrpe при выполнении как демон, и проверяет на наличие ошибок/var/log/messages или nagios файл журнала. Можно запланировать непосредственные проверки команды check_apt от веб-интерфейса Nagios.
Также попытайтесь работать от консоли с "правильным" пользователем, не как корень, но как nagios пользователь. Или Ваш nagios работает как корень? В наших системах nagios работает как пользователь nagios.
Если Ваш nagios работает при nagios пользователе, попробуйте:
su-c '/usr/lib/nagios/plugins/check_nrpe-H разработка-c check_apt' nagios
Richard
Проблема заключалась в том, что порт 53 был защищен брандмауэром от внешнего порта, но не на локальном хосте или на интерфейсе VPN.
Я не заметил, потому что обычно пытался копать @localhost
.
Если я правильно понял, мастер отправляет сообщение на UDP / 53 (через Стефана). Таким образом, это было частично зашито брандмауэром и вызвало проблему.
Главный:
Oct 3 18:56:25 localhost pdns[6884]: gmysql Connection successful
Oct 3 18:56:25 localhost pdns[6884]: AXFR of domain 'netly.io' initiated by 162.243.25.159
Oct 3 18:56:25 localhost pdns[6884]: AXFR of domain 'netly.io' allowed: client IP 162.243.25.159 is in allow-axfr-ips
Oct 3 18:56:25 localhost pdns[6884]: gmysql Connection successful
Oct 3 18:56:25 localhost pdns[6884]: gmysql Connection successful
Oct 3 18:56:25 localhost pdns[6884]: AXFR of domain 'netly.io' to 162.243.25.159 finished
Oct 3 18:56:25 localhost pdns[6884]: Received unsuccessful notification report for 'netly.io' from 146.185.146.149:53, rcode: 4
Oct 3 18:56:25 localhost pdns[6884]: Removed from notification list: 'netly.io' to 146.185.146.149:53
Oct 3 18:56:25 localhost pdns[6884]: Removed from notification list: 'netly.io' to 162.243.25.159:53 (was acknowledged)
Oct 3 18:56:27 localhost pdns[6884]: No master domains need notifications
Подчиненный:
Oct 3 18:56:25 localhost pdns[2263]: 1 slave domain needs checking, 0 queued for AXFR
Oct 3 18:56:25 localhost pdns[2263]: Received serial number updates for 1 zones, had 0 timeouts
Oct 3 18:56:25 localhost pdns[2263]: Domain netly.io is stale, master serial 2013100302, our serial 2013100301
Oct 3 18:56:25 localhost pdns[2263]: Initiating transfer of 'netly.io' from remote '146.185.146.149'
Oct 3 18:56:25 localhost pdns[2263]: AXFR started for 'netly.io', transaction started
Oct 3 18:56:25 localhost pdns[2263]: Zone 'netly.io' (/etc/powerdns/bind/netly.io.) reloaded
Oct 3 18:56:25 localhost pdns[2263]: AXFR done for 'netly.io', zone committed with serial number 2013100302
Мы столкнулись с этим, и оказалось, что целью сообщения DNS-уведомления на самом деле был отказ от сообщения.
Обратите внимание на "уведомление отказано", приведенное ниже. Замена поддельных имен серверов и зон.
# tcpdump -v -r notify.pcap
reading from file notify.pcap, link-type LINUX_SLL (Linux cooked)
00:00:33.210137 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 61) master.dns.server.46861 > slave.dns.server.domain: 49437 notify SOA? zoneinquestion.com. (33)
00:00:33.236488 IP (tos 0x0, ttl 55, id 17352, offset 0, flags [none], proto UDP (17), length 61) slave.dns.server.domain > master.dns.server.46861: 49437 notify Refused- 0/0/0 (33)
00:00:36.244057 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 61) master.dns.server.46861 > slave.dns.server.domain: 48449 notify SOA? zoneinquestion.com. (33)
00:00:36.269682 IP (tos 0x0, ttl 55, id 17353, offset 0, flags [none], proto UDP (17), length 61) slave.dns.server.domain > master.dns.server.46861: 48449 notify Refused- 0/0/0 (33)
00:00:36.519361 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 61) master.dns.server.46861 > slave.dns.server.domain: 65128 notify SOA? zoneinquestion.com. (33)
00:00:36.544391 IP (tos 0x0, ttl 55, id 17354, offset 0, flags [none], proto UDP (17), length 61) slave.dns.server.domain > master.dns.server.46861: 65128 notify Refused- 0/0/0 (33)
Захватил этот вывод на ведущем устройстве следующим образом:
tcpdump -U -i any -w notify.pcap -s 1600 host slave.dns.server
не забудьте увеличить серийный номер. уведомление AXFR ничего не сделает, если вы не увеличили серийный номер на главном устройстве