Plugin Nagios générique pour vérifier si un processus / service spécifique est en cours d'exécution?

12

Je vois sur http://exchange.nagios.org qu'il n'y a pas de plugins pour vérifier si sendmail, xinetd, automount, ypserv, ypbind, mailscanner, mcafee, clamav, samba server et openvpn fonctionnent.

Bien sûr, tous ces programmes devraient être stables, mais ils sont essentiels, donc je voudrais vérifier s'ils fonctionnent.

Question

Existe-t-il un plugin générique pour vérifier des processus spécifiques?

Sandra
la source

Réponses:

25

J'utilise le check_procsplugin NAGIOS standard , avec le -Cdrapeau, montré ici étant appelé depuis nrpe.cfgvia NRPE:

command[check_spamd]=/usr/lib/nagios/plugins/check_procs -c 1: -w 3: -C spamd

qui avertira s'il ne trouve pas au moins trois processus avec le nom de l'exécutable (sans compter le chemin) spamdet qui CRIT s'il n'en trouve pas au moins un.

Chapelier Fou
la source
2

J'utilise ce script pour vérifier divers processus en cours d'exécution. Vous pouvez modifier ces deux lignes:

PROCLIST_RED="sshd"
PROCLIST_YELLOW="syslogd"

pour changer les processus rouge (critique) et jaune (avertissement).

En outre, ce script vérifie les ports ouverts (état d'écoute). Vous pouvez modifier la ligne:

PORTLIST="22"

J'ai même modifié le script moi-même en définissant de nouvelles variables UDP_PORTLISTpour vérifier les sockets UDP.

Khaled
la source
Le lien du script est mort
phansen
Je ne sais pas si c'est le bon script, mais au moins le nom est le même. Peut-être que cela aide.
gf_
1

Tous les services qui devraient écouter sur un port TCP peuvent être vérifiés avec check_tcp. En effectuant la vérification de connexion en externe, vous vérifiez que le pare-feu autorise les connexions via ce port en plus de vérifier que le processus s'exécute et d'écouter sur le port approprié.

La check_tcpvérification ne vous dira pas si quelqu'un a démarré Postfix au lieu de sendmail ou configuré nginx pour écouter sur le port 80 au lieu d'Apache mais check_procs(que les autres ont déjà mentionné) le fera.

Ladadadada
la source
C'est intéressant! Je vois que le plugin nécessite une chaîne send / expect. Comment les trouver pour, par exemple, sendmail et openvpn?
Sandra
2
Est - il besoin de l'envoi / expect chaîne? Vous pouvez trouver quoi envoyer pour sendmail en examinant la spécification SMTP ou en vous connectant telnet localhost 25et en l'essayant vous-même. OpenVPN peut être un peu plus délicat car il veut être chiffré, mais l'envoi de bêtises et la réception d'un message d'erreur peuvent convenir à vos besoins.
Ladadadada
UPS. J'ai essayé le check_udp au lieu de check_tcp. L'utilisation de telnet pour obtenir l'envoi / l'attente deviendra certainement utile.
Sandra
1

En règle générale, il est préférable de se connecter à un service réseau et de voir s'il répond comme prévu, au lieu d'utiliser simplement check_tcp ou de vérifier si le service est en cours d'exécution.

Dans le cas de Samba, ClamAV, Sendmail, etc., il existe des plugins spécifiques au service pour les vérifier (même s'ils sont cochés sur "localhost" via NRPE) qui seront plus précis que de simplement vérifier si le port est ouvert. Évidemment, vérifier le port tcp et / ou utiliser check_procs est mieux que rien .

Keith
la source