--- # Postfix 3.x (Debian 13) — MTA du nœud edge-mta : réception :25, cartes LDAP (domaines, # boîtes, alias), remise LMTP réseau vers le nœud mail-store (Dovecot). TLS via step_ca. # NE STOCKE AUCUNE BOÎTE. Cf. docs/courriel-conception.md + docs/identite-sso.md. # DEUX MODES, PARCE QU'UN SITE N'A PAS DE BOITES (2026-09-02). # # `complet` — le serveur de courriel d'un ecosysteme : il RECOIT, resout les # destinataires dans l'annuaire LDAP et remet a Dovecot par LMTP. C'est le mode # historique, et il reste le defaut. # # `relais` — le site. Il n'heberge aucune boite et n'a ni annuaire ni magasin : il # EXPEDIE, et rien d'autre. C'est ce dont la supervision a besoin pour alerter. # # POURQUOI CE MODE PLUTOT QU'UN SECOND ROLE : les deux partagent tout ce qui compte — # le certificat et sa resynchronisation, la resolution dans le chroot, la validation de # la configuration. Un role jumeau aurait duplique ces quatre pieces, et c'est # exactement le genre de duplication qui finit par diverger sans qu'on le voie. # # POURQUOI PAS UN RELAIS SORTANT EXTERNE : le site expedie DIRECTEMENT, par sa # frontiere. Emprunter le MTA d'un locataire ferait dependre l'hebergeur d'un # ecosysteme qu'il peut outvivre — une emancipation emporterait son alerte avec elle. serveur_postfix_mode: "complet" serveur_postfix_paquets: - postfix - postfix-ldap serveur_postfix_service: "postfix" serveur_postfix_domaine: "{{ domaine_interne }}" serveur_postfix_nom_hote: "{{ ansible_fqdn | default(ansible_hostname) }}" # Réseaux internes de confiance (relais autorisé). À adapter au réseau de l'instance. serveur_postfix_reseaux_confiance: "127.0.0.0/8 [::1]/128" # --- Nœud mail-store (Dovecot) : remise LMTP réseau --- # OBLIGATOIRE : le FQDN/nom du nœud qui héberge les boîtes (Dovecot LMTP). serveur_postfix_mailstore_hote: "" serveur_postfix_lmtp_port: 24 # --- Soumission :587 (clients authentifiés) --- # SASL délégué à Dovecot (passdb LDAP prouvé) sur le nœud mail-store, via son auth réseau. # Interne uniquement : STARTTLS requis, seuls les authentifiés relaient. Pas de sortie internet. serveur_postfix_submission_actif: false serveur_postfix_sasl_hote: "{{ serveur_postfix_mailstore_hote }}" serveur_postfix_sasl_port: 12345 # --- Annuaire LDAP (validation domaines/boîtes/alias) --- # Connexion à l'annuaire (serveur, base, bind_dn, bind_password) : fournie par le rôle partagé # resoudre_annuaire (voir tasks/main.yml « Adopter la connexion annuaire »). # --- Milter rspamd (antispam + DKIM) — si rspamd est co-localisé (nœud edge-mta) --- serveur_postfix_rspamd_milter: false serveur_postfix_rspamd_milter_port: 11332 # --- TLS via le certificat d'hôte step_ca (client_pki) --- serveur_postfix_tls_actif: true serveur_postfix_tls_source_cert: "/etc/step/certs/{{ ansible_fqdn | default(ansible_hostname) }}.crt" serveur_postfix_tls_source_cle: "/etc/step/certs/{{ ansible_fqdn | default(ansible_hostname) }}.key" serveur_postfix_tls_dir: "/etc/postfix/tls" # Zero-confiance : verifier le TLS de la livraison LMTP vers Dovecot (cert step-ca). serveur_postfix_lmtp_tls_verify: false serveur_postfix_lmtp_tls_cafile: "/etc/step/certs/root_ca.crt"