Ich möchte eine Staging-Kopie eines Produktionsservers in einer lokalen Umgebung ausführen. Das System führt eine PHP-Anwendung aus, die in verschiedenen Szenarien E-Mails an Kunden sendet. Ich möchte sicherstellen, dass niemals E-Mails aus der Staging-Umgebung gesendet werden.
Ich kann den Code so anpassen, dass er einen Dummy-E-Mail-Absender verwendet, aber ich möchte genau den gleichen Code wie die Produktionsumgebung ausführen. Ich kann einen anderen MTA verwenden (Postfix ist genau das, was wir in der Produktion verwenden), aber ich möchte etwas, das unter Debian / Ubuntu einfach einzurichten ist :)
Daher möchte ich die lokale Postfix-Installation so einrichten, dass alle E-Mails in (einer oder mehreren) Dateien gespeichert werden, anstatt sie weiterzuleiten. Eigentlich ist es mir egal, wie es gespeichert wird, solange es möglich ist, die gesendete E-Mail zu überprüfen. Sogar eine Einrichtungsoption, die postfix anweist, die E-Mail in der E-Mail-Warteschlange zu belassen, würde funktionieren (ich kann die Warteschlange löschen, wenn ich den Staging-Server mit einer Kopie aus der Produktion neu lade).
Ich weiß, dass dies möglich ist. Ich habe online einfach keine gute Lösung für ein scheinbar recht häufiges Bedürfnis gefunden.
Vielen Dank!
quelle
local_recipient_maps =
. Es ist in dem von Ihnen angegebenen Link beschrieben, aber ich denke, es sollte auch in der Antwort erwähnt werden.versuchen Sie (in main.cf):
Sie können dann die Warteschlange anzeigen
postqueue -p
und Inhalte mit ansehenpostcat
quelle
Abhängig von Ihrer Distribution können Sie sich "nullmailer" ansehen. Dies ist ein Weiterleitungs-MTA, der an ein anderes SMTP in Ihrem Netzwerk oder auf Ihrem Remote weitergeleitet wird. Dies könnte sehr gut ein ungültiges SMTP sein, und in diesem Fall würde es wahrscheinlich nur in eine Warteschlange in einem Ordner auf dem Computer gestellt.
Unter Debian und Ubuntu ist dies als Ersatz-MTA für Ihr System verfügbar.
quelle
Dies wurde von meinem Blog http://blog.malowa.de/2011/04/postfix-as-spam-trap-server.html kopiert und leicht modifiziert :
Sie müssen Postfix nicht einmal so konfigurieren, dass es als Nullmailer fungiert. Postfix wird mit einem netten Tool ausgeliefert,
smtp-sink
das den Trick erledigt. smtp-sink soll hauptsächlich als Testwerkzeug für SMTP-Clients dienen, die einen Server zum Spielen benötigen. Sie können es also so konfigurieren, dass die gesamte Konversation protokolliert oder sogar jede empfangene E-Mail in eine Datei geschrieben wird. Letzteres wird für einen Nullmailer benötigt.Es gibt keine Konfigurationsdatei zum Konfigurieren von smtp-sink. Alles erfolgt über Befehlszeilenoptionen.
Schauen wir uns jeden Parameter genauer an.
Weitere Informationen finden Sie in der Manpage von smtp-sink, aber dies sind die wichtigsten, um eine Sammel-Spamfalle auszuführen. In dieser Konfiguration akzeptiert das Programm alle E-Mails beliebiger Größe von jedem Absender an jeden Empfänger mit IPv4 und IPv6. Die einzigen Einschränkungen bestehen darin, dass mit 1024 Verbindungen in der Warteschlange nur 256 gleichzeitige Verbindungen möglich sind und das Programm als experimentell gekennzeichnet ist. Verwenden Sie smtp-sink daher nicht in einer Produktionsumgebung.
Die Option -B ist nur in neueren Versionen von Postfix gültig. In 2.7.1 fehlt es. In 2.8.2 ist es vorhanden. Irgendwo dazwischen wurde es eingeführt.
quelle