Donc, si quelqu'un tombe sur cette question comme je l'ai fait : la réponse est en effet contrôles_en-tête et il fonctionne comme tel :
-
Ajouter la ligne suivante à /etc/postfix/main.cf
:
header_checks = regexp:/etc/postfix/header_checks
-
Ajouter le nouveau fichier /etc/postfix/header_checks
avec ce contenu :
/^To:.*@allowed-domain.com/ DUNNO
/^To:.*@/ REDIRECT redirect@example.com
Remplacer allowed-domain.com
avec le domaine vers lequel votre serveur de messagerie doit continuer à envoyer des messages. Remplacer redirect@example.com
avec l'adresse électronique vers laquelle tous les autres courriels doivent être redirigés.
Si vous devez autoriser plusieurs domaines, la première ligne doit ressembler à ceci :
/^To:.*@(allowed-domain.com|another-domain.com)/ DUNNO
Au lieu de rediriger, vous pouvez simplement supprimer tous les autres courriers. Remplacez la deuxième ligne ci-dessus par :
/^To:.*@/ DISCARD No outgoing mails allowed
Explication :
- Postfix examine les en-têtes du courrier un par un.
- Chaque ligne d'en-tête est comparée au fichier
header_checks
ligne par ligne.
- S'il correspond à la première ligne (
To:
contient le domaine autorisé), il passe à la ligne d'en-tête suivante et recommence la vérification de l'en-tête depuis le début. Étant donné qu'aucune autre ligne ne correspond, cela signifie que le courrier est distribué.
- S'il correspond à la deuxième ligne (
To:
contient une autre adresse électronique externe), il redirige le courrier.