Postfix

Ce rôle installe et configure Postfix comme relais SMTP pour l'envoi d'emails système via un serveur de messagerie externe.

Vue d’ensemble

Ce rôle installe et configure Postfix comme relais SMTP pour l’envoi d’emails système via un serveur de messagerie externe. Il configure l’authentification SASL, le chiffrement TLS, la réécriture des en-têtes pour un affichage correct du nom de l’expéditeur, et paramètre le fichier de configuration principal de Postfix. Ce rôle est conçu pour les systèmes devant envoyer des emails de notification (comme les alertes Centreon) via un hôte relais tel que Gmail, Office 365 ou un serveur SMTP dédié.

Ce que fait ce rôle

  1. Installer les paquets :

    • postfix : serveur/relais SMTP
    • postfix-pcre : support des expressions régulières Perl (réécriture d’en-têtes)
    • s-nail : utilitaire de commande mail
    • cyrus-sasl-plain : authentification SASL PLAIN
  2. Configurer le mot de passe SASL :

    • Crée sasl_passwd avec les identifiants du relais
    • Format : [relais:port] utilisateur:motdepasse
    • Définit les permissions : 0600 (root uniquement)
    • Exécute postmap pour créer la base de données hash
  3. Configurer les vérifications d’en-têtes :

    • Crée smtp_header_checks pour la réécriture du champ From
    • Réécrit les emails de centreon-engine avec le nom d’affichage Centreon Alerts
    • Utilise la correspondance par regex PCRE
  4. Configurer main.cf :

    • Définit l’hôte et le port du relais
    • Active TLS et l’authentification SASL
    • Référence les maps de mots de passe et les vérifications d’en-têtes
    • Renseigne le hostname du système
  5. Redémarrer Postfix :

    • Redémarre le service pour appliquer les changements
    • Active Postfix au démarrage

Variables du rôle

VariableDescription
postfix_config_pathChemin du répertoire de configuration Postfix
postfix_config_fileNom du fichier de configuration principal
postfix_password_maps_fileNom du fichier de maps de mots de passe SASL
postfix_smtp_header_checks_fileNom du fichier de vérifications d’en-têtes SMTP
postfix_smtp_hostHostname du relais SMTP
postfix_smtp_portPort du relais SMTP
postfix_sender_emailAdresse email de l’expéditeur
postfix_sender_passwordMot de passe d’authentification SMTP (depuis le vault)
postfix_myhostnameHostname du système pour le mail
postfix_sender_display_nameNom d’affichage dans le champ From
postfix_relayhostHôte relais au format Postfix (construit automatiquement depuis postfix_smtp_host et postfix_smtp_port)
postfix_smtp_use_tlsActiver le chiffrement TLS
postfix_smtp_sasl_auth_enableActiver l’authentification SASL
postfix_smtp_sasl_security_optionsOptions de sécurité SASL
postfix_smtp_sasl_tls_security_optionsOptions de sécurité SASL TLS

Notes

  • Gmail requiert un mot de passe d’application (pas le mot de passe du compte) lorsque la 2FA est activée
  • Le mot de passe de l’expéditeur est stocké dans Ansible Vault, jamais en clair
  • Utiliser le port 587 avec TLS (STARTTLS) pour Gmail — le port 465 utilise SSL implicite