Ubuntu

中繼訪問被拒絕(回复 RCPT TO 命令)後綴問題

  • February 12, 2018

我正在嘗試將我的伺服器配置為使用此連結引用的電子郵件:SMTP Relaying Outgoing Mail in Postfix - using Webmin。在我的案例中,我使用了Mandrill smtp 伺服器。在配置主伺服器之前,我還配置了一個 vagrent 實例。但是,當我嘗試使用以下方式從伺服器(流浪者和主伺服器)發送電子郵件時:

sendemail -f registration@example.com -t <myemail>@gmail.com -m "Message Body" -u "Message Subject"

消息在後綴中排隊,永遠不會到達目的地。

/var/log/mail.log文件顯示:

precise64 postfix/smtpd[16542]: connect from localhost[127.0.0.1]
precise64 postfix/smtpd[16542]: 116033A4253: client=localhost[127.0.0.1]
precise64 postfix/cleanup[16545]: 116033A4253: message-id=<621108.689435886-sendEmail@precise64>
precise64 postfix/qmgr[12672]: 116033A4253: from=<registration@example.com>, size=916, nrcpt=1 (queue active)
precise64 postfix/smtpd[16542]: disconnect from localhost[127.0.0.1]
precise64 postfix/smtp[16546]: Untrusted TLS connection established to smtp.mandrillapp.com[54.195.231.78]:587: TLSv1.1 with cipher AECDH-AES256-SHA (256/256 bits)
precise64 postfix/smtp[16546]: 116033A4253: host smtp.mandrillapp.com[54.195.231.78] said: 454 4.7.1 <myemail@gmail.com>: Relay access denied (in reply to RCPT TO command)
precise64 postfix/smtp[16546]: Untrusted TLS connection established to smtp.mandrillapp.com[54.247.27.189]:587: TLSv1.1 with cipher AECDH-AES256-SHA (256/256 bits)
precise64 postfix/smtp[16546]: 116033A4253: to=<myemail@gmail.com>, relay=smtp.mandrillapp.com[54.247.27.189]:587, delay=4.3, delays=0.06/0.01/4/0.28, dsn=4.7.1, status=deferred (host smtp.mandrillapp.com[54.247.27.189] said: 454 4.7.1 <myemail@gmail.com>: Relay access denied (in reply to RCPT TO command))

/etc/postfix/main.cf文件:

# See /usr/share/postfix/main.cf.dist for a commented, more complete version


# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

readme_directory = no

# TLS parameters
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

myhostname = precise64
# myhostname = example.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mydestination = precise64, localhost.localdomain, , localhost
relayhost = smtp.mandrillapp.com:587
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
# mynetworks = example.com
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
smtpd_sasl_auth_enable = yes
smtpd_recipient_restrictions = permit_mynetworks reject_unauth_destination
virtual_alias_maps = hash:/etc/postfix/generic

smtp_tls_loglevel = 1
smtp_tls_security_level = encrypt
smtp_sasl_security_options = noanonymous
smtp_generic_maps = hash:/etc/postfix/generic

需要一些建議。這裡出了什麼問題?我是郵件伺服器配置的新手。如果有愚蠢的錯誤,請原諒我。

這裡的問題是您配置了伺服器,以便它將任何出站電子郵件中繼到伺服器,即smtp.mandrillapp.com. 反過來,該伺服器不接受中繼您的郵件。

我不知道這家公司,但我猜他們只轉發來自經過身份驗證的客戶的郵件,而你沒有登錄。

您可能應該在 main.cf 的某處有類似以下行的內容

smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/remote_passwords
smtp_sasl_security_options = noplaintext,noanonymous
smtp_sasl_tls_security_options = noanonymous

該文件/etc/postfix/remote_passwords應該看起來像

smtp.mandrillapp.com:587 login:password

使用 mandrillapp 的登錄名/密碼。

另外,我在您的配置文件中看到 a smtpd_sasl_auth_enable(注意 smtp 末尾的“d”),僅當您希望客戶端登錄到您的伺服器時才相關,而且我沒有看到足夠的配置。你應該確保它是必要的。

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