Domain-Name-System

用於發送和接收的同一電子郵件伺服器的不同電子郵件地址

  • February 12, 2021

在配置電子郵件伺服器方面,我實際上是一個新手。最近,我按照以下指南在 AWS EC2 centos 伺服器上配置了一個結合 dovecot 和 squirrelmail 的 Postfix 電子郵件伺服器:

如何配置電子郵件伺服器

我面臨的問題是,當我使用在 Outlook、gmail 等外部電子郵件上配置的郵件伺服器發送電子郵件時,使用以下電子郵件地址發送

noreply@example.app.

但是,我無法使用 Outlook 或 gmail 向上述地址發送電子郵件,因為發件人向我顯示此錯誤: Gmail 錯誤說明

但是一旦我將上述電子郵件地址修改為以下內容後發送電子郵件: noreply@mail.example.app,我會在我配置的電子郵件伺服器上收到一封電子郵件。我想要的是發件人和收件人的電子郵件地址都應該是:noreply@example.app 這是我的域 DNS 記錄: DNS

下面是我的 Postfix Master.cf 文件:’''

smtp      inet  n       -       n       -       -       smtpd
587      inet  n       -       n       -       -       smtpd
submission inet n       -       n       -       -       smtpd
 -o syslog_name=postfix/submission
 -o smtpd_sasl_auth_enable=yes
 -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
 -o milter_macro_daemon_name=ORIGINATING
smtps     inet  n       -       n       -       -       smtpd
 -o syslog_name=postfix/smtps
 -o smtpd_sasl_auth_enable=yes
 -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
 -o milter_macro_daemon_name=ORIGINATING
pickup    unix  n       -       n       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup
qmgr      unix  n       -       n       300     1       qmgr
tlsmgr    unix  -       -       n       1000?   1       tlsmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
trace     unix  -       -       n       -       0       bounce
verify    unix  -       -       n       -       1       verify
flush     unix  n       -       n       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
proxywrite unix -       -       n       -       1       proxymap
smtp      unix  -       -       n       -       -       smtp
relay     unix  -       -       n       -       -       smtp
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
retry     unix  -       -       n       -       -       error
discard   unix  -       -       n       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       n       -       1       anvil
scache    unix  -       -       n       -       1       scache

下面是我的 Postfix Main.cf

queue_directory = /var/spool/postfix

command_directory = /usr/sbin

daemon_directory = /usr/libexec/postfix

data_directory = /var/lib/postfix

mail_owner = postfix

unknown_local_recipient_reject_code = 550

alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases

debug_peer_level = 2

debugger_command =
    PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
    ddd $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.10.1/samples

readme_directory = /usr/share/doc/postfix-2.10.1/README_FILES
myhostname = mail.example.app
mydomain = example.app
myorigin = $mydomain
inet_interfaces = all
inet_protocols = all
mydestination = $myhostname, localhost, $mydomain
mynetworks = 127.0.0.0/8
relay_domains = $mydestination
home_mailbox = Maildir/

這是一個 DNS 問題。您的 MX 記錄有誤,即您的域example.app沒有 MX 記錄(mail.example.app有 MX 記錄,但它不需要它)。因此,Gmail 會嘗試將郵件定向到 A 記錄(作為備份)。

example.app將以下記錄添加到區域中:

example.app. MX 10 mail.example.app.

(並刪除mail.example.app MX,它沒有害處,但它不需要)

這將告訴全世界郵件example.app域是在 mail.example.app 處理的,並且在明顯的負 DNS 記憶體超時後,Gmail 和其他人會將郵件傳遞到您的郵件伺服器。

引用自:https://serverfault.com/questions/1049931