Postfix-Problem beim Versenden von E-Mails

nate

Registered User
Hallo SSF-User!

Ich habe zu Hause einen Debian-Server auf dem u.a. Postfix für die Post zuständig ist. Dieser Server ruft via Fetchmail Mails von meinem Hoster, bei dem auch meine Domains gehostet sind, ab und versendet ebenfalls über diesen Relay. Die Domains und Mail-Adressen werden in einer MySql-Datenbank verwaltet.

Derzeit rufe ich von einer Domain 5 Mail-Konten und von einer weiteren Domain ein Mail-Konto ab. Das Empfangen und versenden (intern und extern) geht dabei einwandfrei.

Vorhin ist mir jedoch aufgefallen, dass ich keine E-Mails an Benutzer verschicken kann die auf meiner Domain liegen, jedoch nicht auf meinem Heimserver eingetragen sind.

Beispiel:

[email protected] (wird von meinem Server abgerufen und auch über selbigen versandt (Relay ist Hoster); alle Lan-User greifen auf diesen Server zu)
[email protected] (s.o.)
[email protected] (existiert bei meinem Hoster, wird jedoch direkt vom Mailserver des Hosters abgerufen und versendet)

Das Problem ist wie folgt (falls meine Erklärung oben nicht deutlich genug war):

[email protected] kann an alle E-Mail-Adressen der Welt verschicken, jedoch nicht an [email protected], da mein Heimserver erkennt, dass ihm diese Domain "zugewiesen" ist, er jedoch den User xyz nicht in seiner Datenbank findet. Dies beschert mir dann folgenden Eintrag in der /var/log/mail.log:

Feb 27 00:14:18 srv postfix/smtpd[19023]: connect from unknown[10.0.0.248]
Feb 27 00:14:18 srv postfix/smtpd[19023]: NOQUEUE: reject: RCPT from unknown[10.0.0.248]: 550 5.1.1 <[email protected]>: Recipient address rejected: User unknown in virtual mailbox table; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<[10.0.0.248]>
Feb 27 00:14:19 srv postfix/smtpd[19023]: disconnect from unknown[10.0.0.248]


Meine Frage lautet also wie folgt:

Wie kann ich meinem Mail-Server beibringen, dass er trotzdem versucht, die Mails an den Relay weiterzuleiten, auch wenn er den Empfänger nicht kennt, obwohl die Domain des Empfängers dieser zu einer "seiner" Domains gehört?

Ich hoffe Ihr versteht, was ich meine :-)
Viele Grüße

nate
 
Die Lösung ist relativ simpel: Dein Heimserver darf nicht für domain.de (und auch die anderen Domains) zuständig (-> mydestination)sein. Du kannst ja dafür einen anderen Namen nehmen (domain.local oder evtl. auch eine Subdomain home.domain.de). Für den Mailausgang kannst Du die Adressen ja bei Bedarf umschreiben (/etc/postfix/sender_canonical). Dadurch werden alle ausgehende Mails nicht lokal zugestellt, sondern erst an den Provider geschickt.
Für die Einlieferung auf dem Heimserver solltest Du entsprechend auch nur lokale Benutzernamen verwenden (das können auch Aliase sein) und die dann auf die jeweiligen Domain-Postfächer abbilden.

Viele Grüße,
LinuxAdmin
 
Ich muss diesen Thread nochmal aus der Versenkung holen.
Ich hatte das Thema vor mit hergeschoben, da diese Fälle nur auf 2 Mailadressen zutreffen, aber gestern bin ich wieder darüber gestolpert, als ich an eine der Adressen mailen wollte.

Ich habe mir die main.cf von Postfix mal angesehen und musste feststellen, dass mydestination lediglich den lokalen Hostnamen und localhost beinhaltet.

Die Fehlermeldung die beim Versenden erscheint: User unknown in virtual Mailbox Table.

Dies ist ja schon sehr eindeutig, jedoch weiß ich nicht was ich tun kann, um das zu umgehen, ohne die Mailadressen in die MySql-DB einzutragen, was ich nicht möchte.

Was kann ich ggf. noch einstellen, damit er die Mails wie in #1 beschrieben korrekt zustellt?

Vielen Dank.
 
Last edited by a moderator:
Hallo,

in welcher Konfigurationsdatei von Postfix bzw der zugehörigen Datenbank ist die betroffene Domain wo eingetragen?
 
Hallo,

wenn sie da drinsteht sieht sich Postfix als zuständig für diese Domain und versucht direkt zuzustellen.
 
Das ist mir schon klar, hilft mir jedoch nicht beim meinem Problem oder beantwortet meine Frage. Ich möchte ja gerne wissen, ob es möglich ist Postfix beizubringen Mails an [email protected] zu verschicken, selbst wenn er den User nicht in der MySql-DB hat, OBWOHL die Domain in der DB steht.

Nach dem Motto:

Gehört die Empfängeradresse zu einer meiner Domains, dann prüfe ob name (vor dem @) ebenfalls vorhanden ist. Wenn ja, direkt (lokal) zustellen, andernfalls übers Relay versenden.
 
Back
Top