Je souhaite exécuter une copie intermédiaire d'un serveur de production sur un environnement local. Le système exécute une application PHP, qui envoie des e-mails aux clients dans divers scénarios et je veux m'assurer qu'aucun e-mail n'est jamais envoyé depuis l'environnement de transfert.
Je peux modifier le code afin qu'il utilise un expéditeur de courrier électronique factice, mais je voudrais exécuter le même code exact que l'environnement de production. Je peux utiliser un MTA différent (Postfix est exactement ce que nous utilisons en production), mais j'aimerais quelque chose de facile à configurer sous Debian / Ubuntu :)
Je voudrais donc configurer l'installation locale de Postfix pour stocker tous les e-mails dans (un ou plusieurs) fichiers au lieu de les relayer. En fait, je ne me soucie pas vraiment de la façon dont il est stocké tant qu'il est possible de vérifier l'e-mail qui a été envoyé. Même une option de configuration qui indique à postfix de conserver le courrier électronique dans la file d'attente de courrier électronique fonctionnerait (je peux purger la file d'attente lorsque je recharge le serveur intermédiaire avec une copie de la production).
Je sais que c'est possible, je n'ai tout simplement pas trouvé de bonne solution en ligne pour ce qui semble être un besoin assez courant.
Merci!
la source
local_recipient_maps =
. Il est décrit dans le lien que vous avez fourni, mais je pense qu'il devrait également être mentionné dans la réponse.essayez (dans main.cf):
vous pouvez ensuite voir la file d'attente
postqueue -p
et regarder le contenu avecpostcat
la source
Selon votre distribution, vous pouvez regarder "nullmailer". Il s'agit d'un MTA relais, qui relaie vers un autre SMTP sur votre réseau ou à distance. Cela pourrait très bien être un SMTP invalide, et dans ce cas, il ne le mettrait probablement que dans une file d'attente sur un dossier sur la machine.
Sur debian et ubuntu, ceci est disponible en tant que MTA de remplacement pour votre système.
la source
Ceci est copié et légèrement modifié depuis mon blog http://blog.malowa.de/2011/04/postfix-as-spam-trap-server.html :
Vous n'avez même pas besoin de configurer Postfix pour agir comme un nullmailer. Postfix est livré avec un outil soigné appelé
smtp-sink
qui fait l'affaire. smtp-sink est principalement destiné à servir d'outil de test pour les clients SMTP qui ont besoin d'un serveur pour jouer avec. Vous pouvez donc le configurer pour enregistrer toute la conversation ou même vider chaque courrier reçu dans un fichier. Ce dernier est nécessaire pour un nullmailer.Il n'y a pas de fichier de configuration pour configurer smtp-sink. Tout se fait via les options de ligne de commande.
Examinons de plus près chaque paramètre.
Vous pouvez trouver plus d'informations dans la page de manuel de smtp-sink, mais ce sont les plus importantes pour exécuter un spamtrap fourre-tout. Dans cette configuration, le programme accepte tout courrier de n'importe quelle taille, de n'importe quel expéditeur à n'importe quel destinataire avec IPv4 et IPv6. Les seules restrictions sont qu'il n'y a que 256 connexions simultanées possibles avec 1024 connexions en file d'attente et le programme est marqué expérimental. N'utilisez donc pas smtp-sink dans un environnement de production.
L'option -B n'est valide que dans les versions plus récentes de Postfix. En 2.7.1, il manque. En 2.8.2, il est présent. Quelque part entre les deux, il a été introduit.
la source