Kann postfix alle ausgehenden E-Mails an einen Relayhost weiterleiten, ausgenommen lokale E-Mails von Benutzer zu Benutzer?

3949
DanB

In meiner Ubuntu-Box zu Hause ist Postfix so konfiguriert, dass alle ausgehenden E-Mails weitergeleitet werden outgoing.verizon.net. Leider beinhaltet dies lokale E-Mail-Nachrichten von Benutzer zu Benutzer (z. B. von lokalen Cron-Jobs zu mir oder von mir zu mir), die nicht außerhalb der Maschine reisen müssen. Gibt es eine Möglichkeit, meine Konfiguration zu optimieren (unten), so dass lokale E-Mails zugestellt werden, ohne den Computer zu verlassen?

Hinweis: Ich verwende keinen Mail-Server (an Port 25), sondern führe alle fünf Minuten fetchmail aus, um von einem IMAP-Server herunterzuladen.

main.cf:

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination myhostname = mycomputer.example.com masquerade_domains = example.com alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases myorigin = /etc/mailname mydestination = $myhostname, localhost.localdomain, localhost relayhost = [outgoing.verizon.net]:587 mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 mailbox_command = procmail -a "$EXTENSION" mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all smtp_sasl_auth_enable = yes smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_sasl_security_options = smtpd_sasl_auth_enable = no 
1

1 Antwort auf die Frage

0
clement

Postfix wird nur non-local mailsan den Host weitergeleitet, der im angegeben ist relayhost. So betrachten Sie eine Domäne als lokal; Die Domäne muss unter mydestinationParameter angegeben werden. Die Auflistung example.comunter mydestinationsollte Ihnen helfen, dieses Problem zu beheben.

#/etc/postfix/main.cf #... mydestination = $myhostname, localhost.localdomain, localhost, example.com #... 

Ref: Postfix-Dokumente

relayhost (default: empty)  The next-hop destination of non-local mail; overrides non-local domains in  recipient addresses. This information is overruled with relay_transport,  sender_dependent_default_transport_maps, default_transport,  sender_dependent_relayhost_maps and with the transport(5) table.  
Hmm ... Mit meiner geposteten Konfiguration wird Benutzername @ localhost an den Relayhost weitergeleitet. Wenn Ihre Analyse korrekt ist, sollte Benutzername @ localhost nicht vollständig lokal behandelt werden, da "localhost" in mydestination aufgeführt ist. DanB vor 10 Jahren 0
Kannst du den von postfix generierten Mailing für eine solche Mail posten? clement vor 10 Jahren 0
Ah, ich war falsch. Benutzername @ localhost wird tatsächlich lokal geliefert. Eine E-Mail an "username" (z. B. "echo foo | / usr / bin / mail-Benutzername") wird jedoch so zugestellt, als hätte ich eine E-Mail an username@blazemonger.com gesendet. DanB vor 10 Jahren 0
Dann denke ich, dass "myorigin" "blazemonger.com" hat. Fügen Sie "blazemonger.com" zur Mydestination hinzu, um es lokal zu behandeln. clement vor 10 Jahren 0
Es klappt! Danke danke danke. DanB vor 10 Jahren 0