Postfix 구성 - 하위 도메인 및 도메인에 대한 다른 서버

Postfix 구성 - 하위 도메인 및 도메인에 대한 다른 서버

다음 설정이 있습니다. postfix 서버 1개: a.example.comexample.com( )의 모든 하위 도메인에서 보내는 모든 이메일을 수락 *@*.example.com하고 우편 배달부 계정으로 이메일을 보내고 *@example.com1개의 호스팅 을 포함한 모든 이메일 계정(gmail, yahoo 등)으로 이메일을 보내야 합니다. 교환: exch11.hosted.comexample.com 이메일( *@example.com).

a.example.com에서 *@example.com( )로 이메일을 보내는 것을 제외하면 exch11.hosted.com이 설정의 모든 것이 잘 작동합니다 . example.commydomains.db 파일이 있으면 이메일이 a.example.com전송되지 않고 *@example.com로컬로 전송됩니다. 이를 다음으로 변경하면 이메일이 *.example.com전송되지만 이제 이메일을 수락하지 않고 릴레이가 허용되지 않는다는 오류가 표시됩니다(릴레이되어 로컬 maildir 계정으로 전달되어서는 안 됩니다).*@example.comexch11.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

우선, 이것이 효과가 있을지 확신할 수 없지만, 여러분이 시작하는 데 도움이 되기를 바랍니다.

  1. 이 postfix 인스턴스는 메일을 직접 처리하지 않으므로 mydomains에서 example.com을 제거하세요.
  2. 이를 추가하면 virtual_alias_domains = .example.com하위 도메인 문제가 해결됩니다.
  3. relay_domains = example.comexample.com에 대한 명시적 전송을 추가 하고 지정합니다. 예를 들면 다음과 같습니다.example.com :[exch11.hosted.com]

관련 정보