23 lines
1 KiB
Text
23 lines
1 KiB
Text
|
|
#!/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."
|