Set-OPS-Public/roles/serveur_dovecot/templates/setops-dovecot-cert-sync.sh.j2
Daniel Allaire 7549c61e75 serveur_dovecot (Dovecot 2.4) : IMAP + auth LDAP + TLS step_ca — prouvé
Rôle mail : IMAP :993/:143 + LMTP, auth/annuaire LDAP (serveur_openldap),
stockage Maildir (user vmail), TLS via step_ca (pont de cert + resync au
renouvellement), auth système par défaut neutralisée. Config drop-in en
syntaxe Dovecot 2.4 (mail_driver, ssl_server_cert_file, passdb ldap),
validée par doveconf au déploiement. Sockets Postfix conditionnels à la
présence de l'utilisateur postfix (co-localisation).

Déployé et prouvé sur infra-mail-01 : doveadm auth test — bon mot de passe
accepté, mauvais refusé, cert IMAPS émis par step_ca. Format 2.4 validé
empiriquement avant l'écriture (leçon « éprouver l'outil »).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-02 15:09:37 -04:00

19 lines
782 B
Django/Jinja

#!/bin/sh
# Géré par Set-OPS (rôle serveur_dovecot). Ne pas éditer à la main.
# Synchronise le certificat step_ca (déposé par client_pki, root:root 600) vers Dovecot,
# puis recharge. Idempotent ; appelé au déploiement ET au renouvellement (unité path).
# Dovecot lit le certificat via son maître (root), donc root:root suffit.
set -eu
SRC_CERT="{{ serveur_dovecot_tls_source_cert }}"
SRC_KEY="{{ serveur_dovecot_tls_source_cle }}"
DST="{{ serveur_dovecot_tls_dir }}"
[ -f "$SRC_CERT" ] && [ -f "$SRC_KEY" ] || exit 0
install -o root -g root -m 0644 "$SRC_CERT" "$DST/cert.pem"
install -o root -g root -m 0600 "$SRC_KEY" "$DST/key.pem"
if systemctl --quiet is-active dovecot 2>/dev/null; then
systemctl reload dovecot 2>/dev/null || systemctl restart dovecot
fi