다음 설정이 있습니다. postfix 서버 1개: a.example.com
example.com( )의 모든 하위 도메인에서 보내는 모든 이메일을 수락 *@*.example.com
하고 우편 배달부 계정으로 이메일을 보내고 *@example.com
1개의 호스팅 을 포함한 모든 이메일 계정(gmail, yahoo 등)으로 이메일을 보내야 합니다. 교환: exch11.hosted.com
example.com 이메일( *@example.com
).
a.example.com에서 *@example.com
( )로 이메일을 보내는 것을 제외하면 exch11.hosted.com
이 설정의 모든 것이 잘 작동합니다 . example.com
mydomains.db 파일이 있으면 이메일이 a.example.com
전송되지 않고 *@example.com
로컬로 전송됩니다. 이를 다음으로 변경하면 이메일이 *.example.com
전송되지만 이제 이메일을 수락하지 않고 릴레이가 허용되지 않는다는 오류가 표시됩니다(릴레이되어 로컬 maildir 계정으로 전달되어서는 안 됩니다).*@example.com
exch11.hosted.com
*@subdomain.example.com
주요 요구 사항은 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
우선, 이것이 효과가 있을지 확신할 수 없지만, 여러분이 시작하는 데 도움이 되기를 바랍니다.
- 이 postfix 인스턴스는 메일을 직접 처리하지 않으므로 mydomains에서 example.com을 제거하세요.
- 이를 추가하면
virtual_alias_domains = .example.com
하위 도메인 문제가 해결됩니다. relay_domains = example.com
example.com에 대한 명시적 전송을 추가 하고 지정합니다. 예를 들면 다음과 같습니다.example.com :[exch11.hosted.com]