Ich habe eine Erlaubnisfrage, die mich verrückt macht. Ich versuche, Sternchen auf einer virtuellen Maschine unter Linux mit dem Plugin "check_asterisk_peers" zu überwachen. Ich habe NRPE (den Nagios Remote Agent) installiert. Der relevante Abschnitt von nrpe.cfg ist:
command[check_users]=/usr/lib/monitoring-plugins/check_users -w 5 -c 10 command[check_asterisk_peers]=/usr/lib/monitoring-plugins/check_asterisk_peers -p monika_gigaset
Folgendes bekomme ich:
/usr/lib/monitoring-plugins/check_nrpe -H 10.10.10.10 -c check_users USERS OK - 2 users currently logged in |users=2;5;10;0
Nun sagt mir das, dass die NRPE in Ordnung ist und alle Berechtigungen richtig gesetzt sind.
Wenn ich einfach das Plugin starte (ohne check_nrpe aufzurufen), bekomme ich:
aag ~ $ /usr/lib/monitoring-plugins/check_asterisk_peers -p monika_gigaset CRITICAL: Unable to connect to remote asterisk (does /var/run/asterisk/asterisk.ctl exist?)
Wenn ich es jedoch mit Sudo starte, funktioniert es einwandfrei (woraus ich schließe, dass das Plugin keine ausreichenden Berechtigungen hat, wenn es als Nicht-Root ausgeführt wird):
aag ~ $ sudo /usr/lib/monitoring-plugins/check_asterisk_peers -p monika_gigaset OK: monika_gigaset
Wenn ich jedoch das Sternchen-Plugin starte, bekomme ich:
aag ~ $ /usr/lib/monitoring-plugins/check_nrpe -H 10.10.10.10 -c check_asterisk_peers CRITICAL: Unable to connect to remote asterisk (does /var/run/asterisk/asterisk.ctl exist?)
das gleiche, wenn ich es mit sudo laufen lasse:
aag ~ $ sudo /usr/lib/monitoring-plugins/check_nrpe -H 10.10.10.10 -c check_asterisk_peers CRITICAL: Unable to connect to remote asterisk (does /var/run/asterisk/asterisk.ctl exist?)
Ich bin sicher, dass es sich um ein Problem mit Berechtigungen handelt, aber ich kann es nicht lösen. Die Sudoers-Datei (Auszug) liest sich wie folgt:
root ALL=(ALL) ALL http ALL = NOPASSWD: /usr/sbin/asterisk -rx database * nrpe ALL=(ALL) NOPASSWD: /usr/sbin/service,/usr/lib/monitoring-plugins/check_asterisk_peers asterisk ALL=(ALL) ALL %wheel ALL=(ALL) ALL %admins ALL= (ALL) ALL Defaults targetpw # Ask for the password of the target user ALL ALL=(ALL) ALL # WARNING: only use this together with 'Defaults targetpw'
Jeder Hinweis wäre dankbar! Meine Diagnose lautet, dass das Plugin "check_asterisk_peers" nicht die Berechtigung hat, mit asterisk in Verbindung zu treten (das als root ausgeführt wird), aber ich verstehe nicht, wie ich ihm die entsprechenden Berechtigungen erteilen kann.