Postfix 配置 - 子域和域的不同服务器

Postfix 配置 - 子域和域的不同服务器

我有以下设置: 1 个 postfix 服务器:a.example.com需要接受 example.com ( *@*.example.com) 上任何子域的所有电子邮件,并将电子邮件发送到邮递员帐户,并将电子邮件发送到任何电子邮件帐户(gmail、yahoo 等),包括*@example.com. 1 个托管交换:exch11.hosted.com例如 example.com 电子邮件 ( *@example.com)。

除了从 a.example.com 发送电子邮件到*@example.com( exch11.hosted.com) 之外,此设置中的所有操作均正常。如果我有example.commydomains.db 文件,则a.example.com不会发送*@example.com电子邮件并在本地发送。如果我将其更改为,*.example.com那么它会发送*@example.com电子邮件,exch11.hosted.com但现在不接受*@subdomain.example.com电子邮件并显示不允许中继的错误(它不应该中继并传递到本地 maildir 帐户)。

主要要求是让 a.example.com 接受任何子域的邮件并将主域的电子邮件传送到 exch11.hosted.com。有人可以帮助我或指出我正确的方向吗?

欢迎任何帮助。

谢谢。

主要.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 和虚拟:

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

运输:

# 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

我的域名:

localhost       OK
mail.local  OK
example.com     OK

答案1

首先,我不确定这是否有效,但我希望它能帮助您入门:

  1. 从 mydomains 中删除 example.com,因为此 postfix 实例不直接处理它的邮件。
  2. 添加virtual_alias_domains = .example.com此内容应该可以解决您的子域问题
  3. 添加relay_domains = example.com并指定 example.com 的显式传输,例如:example.com :[exch11.hosted.com]

相关内容