#!/bin/bash # GENERE par Set-OPS (role serveur_dovecot). Ne pas editer a la main. # # SONDE « boites » — Dovecot repond et resout un utilisateur dans l'annuaire # # Contrat : docs/supervision-conception.md (API des greffons Nagios) — une ligne, 0/1/2. # Mise en defaut PAR PARAMETRE : `serveur_dovecot_sonde_utilisateur` (compte inexistant). set -uo pipefail UTILISATEUR={{ serveur_dovecot_sonde_utilisateur }} systemctl is-active --quiet dovecot || { echo "Dovecot n'est pas actif."; exit 2; } # ON RESOUT UN UTILISATEUR REEL, PAS UN PING DE SERVICE. C'est le bind LDAP qui tombe le # plus souvent, et il ne se voit que quand on demande un compte : le demon reste debout, # le port reste ouvert, et toute authentification echoue. sortie=$(doveadm user "${UTILISATEUR}" 2>&1) if ! printf '%s' "${sortie}" | grep -qE '^uid[[:space:]]'; then echo "Dovecot ne resout pas « ${UTILISATEUR} » — l'annuaire ne repond plus : ${sortie:0:70}" exit 2 fi echo "Dovecot : « ${UTILISATEUR} » resolu dans l'annuaire, service actif."