Über Postfix verschickte Mails kommen nicht an

Pendergast

Erfahrenes Mitglied
Servus,

in einem PHP-Skript verwende ich die mail()-Funktion, um dynamisch generierte Mails zu versenden. Das funktioniert natürlich erstmal problemlos.

Neu für mich ist jetzt, dass dies zu Testzwecken auch auf meinem localhost funktionieren soll, weshalb ich mir soeben Postfix installiert und auch ein wenig konfiguriert habe. Nach einigem Biegen und Brechen gibt mir oben genannte PHP-Funktion nun endlich die Rückmeldung, dass die E-Mail vom MTA akzeptiert wurde. Diese kommt allerdings beim Empfänger (also bei mir) nicht an. Ein Blick in /var/log/maillog liefert folgende Informationen:

Mar 27 15:49:54 ***** postfix/pickup[5531]: AD0FC3A453: uid=2 from=<daemon>
Mar 27 15:49:54 ***** postfix/cleanup[5533]: AD0FC3A453: message-id=<20060327134954.AD0FC3A453@*****>
Mar 27 15:49:54 ***** postfix/qmgr[5532]: AD0FC3A453: from=<daemon@*****>, size=315, nrcpt=1 (queue active)
Mar 27 15:49:54 ***** postfix/smtp[5535]: AD0FC3A453: to=<*****@*****.de>, relay=mailout.lrz-muenchen.de[129.187.254.111], delay=0, status=sent (250 Message received and queued)
Mar 27 15:49:54 ***** postfix/qmgr[5532]: AD0FC3A453: removed

Ich als Postfix-Neuling denke mir jetzt beim Lesen dieses Logs, dass mein Part (PHP-Skript und Postfix-Konfiguration) funktioniert. Oder interpretiere ich das Log falsch?
 
Die Sau... ;) Die Mails landen in meinem Haupt-Account nicht einmal im Spam-Ordner, sondern werden anscheinend komplett als Spam verworfen. Bei den üblichen Verdächtigen wie web.de kommen die Mails tatsächlich sofort an.

Da bleiben mir jetzt zwei mögliche Baustellen über:

Erstens: Ein reines PHP-Problem, das Skript muss einfach "wohlgeformte Mails" generieren, die nicht als Spam verworfen werden.

Zweitens: Mein Mail-Account wird durch Greylisting geschützt. Sprich: Der erste Zustellversuch wird generell geblockt und beim nächsten Versuch geht die Mail dann tatsächlich durch. Wenn das der Grund ist, warum die Mails nicht angekommen sind: Wäre das jetzt mein Konfigurationsproblem, weil Postfix da besser konfiguriert werden muss, oder ist das die Sache des SMTP-Servers, über den die Mails verbreitet werden?
 
Werden die Mails von Dir daheim verschickt oder einem Server im Internet?
Der Server sollte sich mit einem Hostnamen identifizieren, und der sollte auch zu der versendenden IP aufloesbar sein. Falls Du also von daheim verschickst waere ein DynDNS-Hostname nicht schlecht. Und mit diesem Namen sollte sich dann auch Dein Server identifizieren. Weiterhin sollte TCP-Port 25 (SMTP) von aussen erreichbar sein. Ich hab die Erfahrung gemacht, dass das wohl einige SMTP-Server haben wollen.
Ansonsten koenntest Du auch PHP nutzen um Dich mit einem Mail-Server zu verbinden, Dich dort einzuloggen und darueber die Mails zu verschicken.
 
Uh, jetzt kann ich dir nicht ganz folgen... Also der SMTP-Server, über den die Mails letztendlich verschickt werden, steht irgendwo im Rechenzentrum - mit dem hab ich nichts am Hut. Mein localhost hat im Intranet natürlich einen festen Hostnamen, den der SMTP-Server wohl auch erkennt, weil er (denke ich jedenfalls) kaum von x-beliebigen Leuten Mails weiterleiten würde (die bei z.B. web.de ja auch ankommen). Authorisationsprobleme will ich damit eigentlich ausschließen.

Die Frage die sich mir stellt ist nun, ob ich nur noch ein PHP-Problem habe, oder Postfix selbst für eventuelle Spam-Gegenmaßnahmen wie Greylisting konfiguriert werden muss.
 
Kommt darauf an, welchen Server du meinst. Meinen Webserver auf dem Postfix läuft kann ich natürlich administrieren. Der SMTP-Server, über den mein Postfix die Mails letztlich verschickt, ist für mich tabu.
 
Hmm, unguenstig, denn letzteren meinte ich.
Waere es denn eine Alternative Deine Mails ueber einen Account bei irgendeinem Mail-Provider zu versenden?
 
Also ich vertrau dem LRZ soweit, dass der SMTP-Server absolut professionell konfiguriert ist, und mein anscheinend vorliegendes Spam-Problem von mir gelöst werden kann. Allerdings kenn ich mich mit Postfix nicht aus um sagen zu können, diese und jene Konfiguration muss ich ändern, um mein Problem zu beseitigen.

Ich kann meinen Inbox-Admin befragen, ob Mails an mich gesendet wurden, die wegen zu hoher Spamwahrscheinlichkeit nicht zugestellt worden sind. Wenn die Testmails da drin sind, weiß ich wenigstens, dass die Lösung auf jeden Fall in PHP zu suchen ist.

Ein Mail-Versand über extern kommt für mich übrigens eher nicht in Frage.

Aber wenn du nicht direkt sagen kannst ich müsste mein Postfix hier und da noch nachkonfigurieren, um generell weniger Spamverdacht zu erzeugen und auf eventuelle Gegenmaßnahmen reagieren zu können, dann erklär ich das Thema für erledigt, in anderen Mailboxen kommen die Mails ja an. Und ich danke selbstverständlich einmal mehr für die wie immer prompten Antworten. :)
 
Die Rücksprache mit meinem Inbox-Admin hat ergeben, dass meine Testmails von einer Firewall geblockt worden sind. Diese versucht wohl, bei jeder ankommenden Mail den Server der Return-Address aus dem Mailheader zu kontaktieren und verwirft die Mail bei Misserfolg. Die Return-Address bestand standardmäßig aus meinem lokalen Benutzernamen und meinem Host und ist für andere natürlich nicht zu erreichen. ;)

Nachdem ich jetzt in der php.ini die sendmail-Option -r mail@me.com gesetzt hab, funktioniert nun alles einwandfrei.
 
Zurück