Wie ALLE auch lokale Adressen nach draußen vermitteln?

multiplexor

New Member
Hallo,

auf meiner domain example.com läuft eine PHP-Seite, die Emails versendet. Der Email-Server ist aber auf einem völlig anderen Server.

Wenn die PHP-Seite eine email an support@example.com verschickt, kommt sie nicht an. Im mail.log wird klar, dass die Email gar nicht den Server verlässt. Dort heißt es: bounced weil Nutzer "support" unbekannt.

Wie kann ich dafür sorgen, dass ALLE emails nach draußen vermittelt werden?

Ein Trick funktioniert bereits: in main.cf habe ich die folgende Zeile hinzugefügt:
virtual_transport = relay

Standardeinstellung für virtual_transport ist laut Doku: virtual.
Doch das scheint eher ein work-around zu sein. Wie kann ich das richtiger machen? In welcher Variable müsste ich die Domain example.com eintragen?
 
Ganz klar, lege auf deinem Mail Server den Benutzer an und auf deiner PHP Seite nutzt du für den Versand den SMTP Login/Server
 
Wenn auf dem Server keine Mails empfangen werden müssen, reicht ein einfacher Mailserver wie ssmtp aus.
 
Sage mal, auf deinem Server 1 wo example.com drauf ist.. ist darauf auch Postfix installiert? Diesem musst Du nur erklären das er nicht für example.com verantwortlich ist. Wenn das nicht geht, guck Dir mal phpmailer an.

Das Problem / Phänomen was Du beschreibst habe ich sehr oft gehabt und immer wenn ich es irgendwo erklärt hatte, haben die meisten Personen nicht verstanden was ich eigentlich wollte :D

Gruß, Domi

Nachtrag: @Spinx, wenn er auf Server 1 wo seine Domain drauf liegt support@example.com anlegt, muss er die Email auch von dort abholen. Er hat aber separat einen Email-Server (Server 2) der für Emails von example.com zuständig ist... und er möchte ja gerne, dass sein PHP Skript die Email an support@example.com (Server 2) sendet :)
 
Last edited by a moderator:
Ganz klar, lege auf deinem Mail Server den Benutzer an und auf deiner PHP Seite nutzt du für den Versand den SMTP Login/Server

Nachtrag: @Spinx, wenn er auf Server 1 wo seine Domain drauf liegt support@example.com anlegt, muss er die Email auch von dort abholen. Er hat aber separat einen Email-Server (Server 2) der für Emails von example.com zuständig ist... und er möchte ja gerne, dass sein PHP Skript die Email an support@example.com (Server 2) sendet :)

genau, Server 2 = Mail Server und Server 1 = Server für die PHP Seite wo er in die PHP File die SMTP Daten des 2 Server einträgt, schrieb ich doch oben!?
 
Vielen Dank schon mal für die rege Beteiligung.
Ich habe ganz vergessen zu erwähnen, dass es - wie schon erkannt wurde - um Postfix-Konfiguration geht.

Es geht um die Konfigurationsdatei /etc/postfix/main.cf auf dem Server 1 mit der PHP-Seite. Zitat:

Ein Trick funktioniert bereits: in main.cf habe ich die folgende Zeile hinzugefügt:
virtual_transport = relay

Standardeinstellung für virtual_transport ist laut Doku: virtual.
Doch das scheint eher ein work-around zu sein. Wie kann ich das richtiger machen? In welcher Variable müsste ich die Domain example.com eintragen?​

Es bringt nichts Server 2 (Email-Server) zu konfigurieren, da die Emails bis dahin gar nicht erst kommen. Server 1 soll ausschließlich versenden können, nichts empfangen können.

In /var/log/mail.log ist klar nachvollziehbar, dass lokale adressen wie support@example.com den Server nicht verlassen sondern dem lokalen Email-Benutzer "support" zugestellt werden.

Das große Problem, warum die o. g. Konfiguration nicht dauerhaft funktioniert, ist dass Plesk 11 (welches auf dem Server 1 läuft) hin und wieder die main.cf neu generiert und die o. g. Einstellung mit:
virtual_transport = plesk_virtual
überschreibt.

Selbst schreibrechte als root zu entziehen beeindruckt Plesk nicht. Die Datei wird trotzdem überschrieben!
Entweder muss ich also suchen wie ich Plesk umkonfiguriere, oder an einer anderen Stelle in main.cf eine Einstellung vornehme, dass scheinbar lokale Benutzer nach draußen vermittelt werden.

Irgendwelche Ideen?
 
Es bringt nichts Server 2 (Email-Server) zu konfigurieren, da die Emails bis dahin gar nicht erst kommen. Server 1 soll ausschließlich versenden können, nichts empfangen können.
Habe ich auch nicht behauptet... :)

Auch wenn sich jeder zweite hier ein Bild davon machen kann, poste mal bitte deine main.cf, ich vermute mal bei "mydestination" steht die example.com drin, und solange Server 1 sich für diese Domain verantwortlich fühlt, schickt er die Mail auch gar nicht erst weg sondern versucht sie local zuzustellen.

Nachtrag: Ahh.. Okay, vergiss was ich sagte.. den Teil mit Plesk habe ich eben noch überlesen. Da gibt es jetzt ein kleines Problem, darum habe ich mittlerweile die Finger von diesen Tools gelassen. Wenn Du mit Plesk eine Domain anlegst, wird diese in der SQL Datenbank gespeichert. Wenn diese Domain NUR für Internetseiten und nicht für Mail da sein soll, muss man das irgendwie trennen. Aber da müsste Dir jetzt jemand helfen der das wiederum weiß.

Du musst also im Plesk sagen das example.com nur für Webspace und nicht für Email zuständig ist. Aber ob das geht, weiß ich so ad-hock leider nicht.
 
Last edited by a moderator:
Es bringt nichts Server 2 (Email-Server) zu konfigurieren, da die Emails bis dahin gar nicht erst kommen. Server 1 soll ausschließlich versenden können, nichts empfangen können.

Wie ich oben schon schrieb, reicht hier das sehr einfache ssmtp aus. Deinstallier Postfix, installier dir ssmtp und bearbeite die Config-Datei per SSH.
 
@danton, wird Plesk dann nicht irgendwann rum motzen weil Postfix auf einmal weg ist? So wie es sich anhört, ist es ein vorkonfiguriertes System...
 
tja, stimmt, Plesk könnte das natürlich Probleme machen. Ich verwende es nicht, daher weiß ich es nicht. Kann man in Plesk evtl. das ganze Mail-Dedönse nicht einfach deaktivieren?
 
Also meine Idee wäre, zu erforschen ob man Plesk irgendwie sagen kann das die Domain die man dort einträgt, NICHT für Mail benutzt werden sollen. Genau die gleiche Problematik hatte ich damals mit Plesk und Confixx auch, aber eine Lösung habe ich nie gefunden.

Und wenn ich mich nicht irre, gibt es in der SQL Datenbank nur eine Tabelle für die Domains, und darauf greift der Apache und Postfix zu, wodurch eine Trennung schwierig wird... ich lasse mich aber von einem Plesk Spezi etwas besseren belehren.

Alternative wäre einen Server als Debian-Minimal neu initialisieren zu lassen und man baut sich alles selbst zusammen wie man es benötigt. So habe ich es zumindest gemacht, nachdem mich Plesk, Confixx etc. genervt haben. Und ich vermute mal, danton macht es ähnlich.

So kannst Du dem Apache und dem Postfix separat sagen für welche Domains sie verantwortlich sind :)
 
Also meine Idee wäre, zu erforschen ob man Plesk irgendwie sagen kann das die Domain die man dort einträgt, NICHT für Mail benutzt werden sollen. Genau die gleiche Problematik hatte ich damals mit Plesk und Confixx auch, aber eine Lösung habe ich nie gefunden.

Ich glaube ich weiß, was du suchst:

Abonnement in Plesk aufrufen -> "E-Mail" -> "Einstellungen ändern".

Da kannst du den Haken bei "E-Mail-Dienst auf Domain aktivieren" entfernen und schon fühlt sich dein Maildienst nicht mehr für die jeweilige Domain zuständig ;)
 
Back
Top