Project

General

Profile

Actions

Demande #3782

closed

Supervision spécifique pour XMPP

Added by pitchum . over 5 years ago. Updated over 1 year ago.

Status:
Fermé
Priority:
Normale
Assignee:
Start date:
06/26/2019
Due date:
% Done:

100%

Estimated time:
Difficulté:
2 Facile

Description

Pour commencer il faudrait vérifier que les ports TCP suivants répondent :
  • 5222
  • 5223
  • 5269

Il faudrait également vérifier la date d'expiration des certificats TLS.
Ça risque d'être un poil compliqué pour le STARTTLS sur les ports xmpp-client et xmpp-server.

Pour info comment je fais ces checks manuellement :

</dev/null  2>/dev/null openssl s_client -connect xmpp.chapril.org:5222 -xmpphost chapril.org -starttls xmpp | openssl x509 -noout -subject -dates
</dev/null  2>/dev/null openssl s_client -connect xmpp.chapril.org:5269 -xmpphost chapril.org -starttls xmpp-server | openssl x509 -noout -subject -dates
Actions #1

Updated by pitchum . almost 5 years ago

  • Subject changed from Supervision basique pour XMPP to Supervision spécifique pour XMPP
  • Assignee changed from Quentin Gibeaux to pitchum .
  • % Done changed from 0 to 20

Un premier check fait-maison a été implémenté lors de l'april-camp avec cpm.

Il faudrait maintenant utiliser ce plugin nagios : https://exchange.icinga.com/jandd/check_xmppng qui devrait notamment permettre de vérifier que les ports du service XMPP sont bien joignables et que les certificats TLS sont "frais".
Il est disponible dans debian sous le nom nagios-check-xmppng

Je l'ai testé rapidement à partir de la VM xmpp elle-même (mais il serait plus judicieux que ce test soit exécuté depuis "l'extérieur").

Pour l'instant ça ne marche pas très bien. Voici les checks que j'aurais imaginés :

/usr/lib/nagios/plugins/check_xmppng -H xmpp.chapril.org --servername chapril.org --warn-days 15 --crit-days 8 --s2s
/usr/lib/nagios/plugins/check_xmppng -H xmpp.chapril.org --servername chapril.org --warn-days 15 --crit-days 8 --c2s -p 5223
/usr/lib/nagios/plugins/check_xmppng -H xmpp.chapril.org --servername chapril.org --warn-days 15 --crit-days 8 --c2s -p 5222 --starttls

Seul le premier test répond OK. Les 2 autres retournent "XMPP CRITICAL - request took unknownNone (no CA certificates found) | time=unknown".

Il restera également à implémenter une sonde qui vérifie que le service ejabberd tourne.

Actions #2

Updated by pitchum . almost 5 years ago

  • Description updated (diff)
Actions #3

Updated by pitchum . over 4 years ago

Il faudrait maintenant utiliser ce plugin nagios : https://exchange.icinga.com/jandd/check_xmppng qui devrait notamment permettre de vérifier que les ports du service XMPP sont bien joignables et que les certificats TLS sont "frais".
Il est disponible dans debian sous le nom nagios-check-xmppng

Pour l'instant ça ne marche pas très bien.

Après analyse, c'est probablement causé par un bug dans le packaging Debian pour python3.7. J'ai signalé le soucis :
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=946581

Si on ne veut pas attendre un correctif propre on peut envisager un patch de contournement :

diff --git a/check_xmppng b/check_xmppng
index 6987c61..58c827d 100755
--- a/check_xmppng
+++ b/check_xmppng
@@ -340,7 +340,7 @@ class Xmpp(nagiosplugin.Resource):
                 _LOG.info(
                     "tried to load CA certificates from default locations, but" 
                     " could not find any CA certificates.")
-                raise XmppException('no CA certificates found')
+                _LOG.warning('no CA certificates found')
             else:
                 _LOG.debug('certificate store statistics: %s', stats)
         return context

Actions #4

Updated by Christian P. Momon over 4 years ago

  • Target version set to Backlog
Actions #5

Updated by pitchum . over 3 years ago

Ticket ouvert sur le dépôt de check_xmppng : https://git.dittberner.info/jan/check_xmppng/issues/2

Actions #6

Updated by pitchum . over 3 years ago

Le problème a été corrigé upstream dans la version 0.3.2, qui a été poussée dans Debian et devrait arriver dans Debian Bullseye.

Donc on pourra enfin mettre en place cette sonde de supervision lorsque la machine admin sera passée en Debian Bullseye.

Actions #7

Updated by pitchum . over 3 years ago

  • Status changed from Nouveau to En cours de traitement
Actions #8

Updated by pitchum . almost 3 years ago

Les machines de supervision sont maintenant sous Debian Bullseye depuis un mois maintenant...
Donc yapuka.

Actions #9

Updated by pitchum . almost 2 years ago

  • Status changed from En cours de traitement to Résolu
  • % Done changed from 20 to 100

FAIT ! (enfin)

Actions #10

Updated by Quentin Gibeaux almost 2 years ago

  • Status changed from Résolu to Fermé
Actions #11

Updated by Pierre-Louis Bonicoli over 1 year ago

  • Target version changed from Backlog to Sprint 2023 janvier
Actions

Also available in: Atom PDF