Postfix-Konfiguration - verschiedene Server für Subdomains und Domain

Postfix-Konfiguration - verschiedene Server für Subdomains und Domain

Ich habe folgendes Setup: 1 Postfix-Server: a.example.comder alle E-Mails für alle Subdomänen auf example.com () annehmen *@*.example.comund an das Mailman-Konto übermitteln muss und auch E-Mails an alle E-Mail-Konten (Gmail, Yahoo usw.) senden muss, einschließlich *@example.com. 1 gehosteter Exchange: exch11.hosted.comfür E-Mails von example.com ( *@example.com).

In diesem Setup funktioniert alles, außer das Senden von E-Mails von a.example.com an *@example.com( exch11.hosted.com). Wenn ich example.comdie Datei mydomains.db habe, a.example.comwerden keine *@example.comE-Mails versendet und lokal zugestellt. Wenn ich es ändere, werden E-Mails an *.example.comgesendet , aber jetzt werden keine E-Mails mehr angenommen und es wird ein Fehler angezeigt, dass Relay nicht zulässig ist (es sollte nicht an das lokale Maildir-Konto weitergeleitet und zugestellt werden).*@example.comexch11.hosted.com*@subdomain.example.com

Die Hauptanforderung besteht darin, dass a.example.com E-Mails für alle Subdomains akzeptiert und E-Mails für die Hauptdomain an exch11.hosted.com sendet. Kann mir bitte jemand helfen oder mir den richtigen Weg weisen?

Jede Hilfe ist willkommen.

Danke.

main.cf:

command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
mydestination = hash:/etc/postfix/mydomains
unknown_local_recipient_reject_code = 550
alias_maps = hash:/etc/aliases
home_mailbox = Maildir/
smtpd_banner = mail.example.com

debug_peer_level = 2
debugger_command =
     PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
     xxgdb $daemon_directory/$process_name $process_id & sleep 5

sendmail_path = /usr/sbin/sendmail.postfix
newaliases_path = /usr/bin/newaliases.postfix
mailq_path = /usr/bin/mailq.postfix
setgid_group = postdrop
html_directory = no
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/postfix-2.3.3/samples
readme_directory = /usr/share/doc/postfix-2.3.3/README_FILES
virtual_alias_maps = hash:/etc/postfix/virtual, pcre:/etc/postfix/virtual.pcre
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtp_sasl_security_options = noplaintext
#smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/sender-access
smtpd_recipient_restrictions = check_recipient_access hash:/etc/postfix/inbound-access,permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
mailbox_size_limit = 25600000
transport_maps = hash:/etc/postfix/transport
message_size_limit = 20240000

virtual.pcre und virtual:

/(.*)@[^.]*\.example\.com$/ mailman

Transport:

# demo
.demo.example.com   smtp:192.168.100.161:25
# demo mail
demo.example.com    smtp:192.168.100.161
# Demo2
.demo2.example.com  smtp:192.168.100.221:25
# demo2 domain
demo2.example.com   smtp:192.168.100.221

meine Domains:

localhost       OK
mail.local  OK
example.com     OK

Antwort1

Zunächst einmal bin ich nicht sicher, ob das funktioniert, aber ich hoffe, es hilft Ihnen beim Einstieg:

  1. Entfernen Sie example.com aus meinen Domains, da diese Postfix-Instanz die E-Mails dafür nicht direkt verarbeitet.
  2. Das Hinzufügen virtual_alias_domains = .example.comsollte Ihr Subdomain-Problem lösen
  3. Fügen Sie relay_domains = example.comeinen expliziten Transport für example.com hinzu und geben Sie ihn an, zB:example.com :[exch11.hosted.com]

verwandte Informationen