配置Postfix relayhost

时间:2012-03-20 09:39:10

标签: postfix-mta smtpd

我正在尝试使用/etc/postfix/main.cf中的以下内容配置使用中继主机的postfix:

relayhost = [mailtrap.io]:2525
smtp_sasl_auth_enable = yes
smtp_sasl_mechanism_filter = plain
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd

通过telnet localhost 25 postfix日志发送电子邮件后说:

Mar 20 10:49:52 hydra postfix/smtpd[19898]: connect from localhost[127.0.0.1]
Mar 20 10:49:52 hydra postfix/smtpd[19898]: improper command pipelining after MAIL from localhost[127.0.0.1]
Mar 20 10:49:52 hydra postfix/smtpd[19898]: 5F9BC2C30A1: client=localhost[127.0.0.1]
Mar 20 10:49:52 hydra postfix/cleanup[19902]: 5F9BC2C30A1: message-id=<20120320084952.5F9BC2C30A1@hydra>
Mar 20 10:49:52 hydra postfix/qmgr[19890]: 5F9BC2C30A1: from=<a@b.com>, size=290, nrcpt=1 (queue active)
Mar 20 10:49:52 hydra postfix/smtp[19904]: warning: SASL authentication failure: No worthy mechs found
Mar 20 10:49:52 hydra postfix/smtp[19904]: 5F9BC2C30A1: to=<c@d.com>, relay=mailtrap.io[176.9.59.220]:2525, delay=0.32, delays=0.19/0.01/0.13/0, dsn=4.7.0, status=deferred (SASL authentication failed; cannot authenticate to server mailtrap.io[176.9.59.220]: no mechanism available)

SMTP服务器(relayhost)日志:

>>> EHLO hydra
250-Ok Helo 213.160.145.74, Mailtrap SMTP Server
250-AUTH PLAIN
250-NO-SOLICITING
250 SIZE 20000000
>>> QUIT
221 Ok

任何想法如何解决?

操作系统:ubuntu。

2 个答案:

答案 0 :(得分:5)

问题是由于默认的后缀SMTP安全选项不允许使用未加密的密码。

Postfix doc about this issue

在这种情况下,正确的配置是:

relayhost = [mailtrap.io]:2525
smtp_sasl_auth_enable = yes
smtp_sasl_mechanism_filter = plain
smtp_sasl_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd

答案 1 :(得分:3)

在配置文件中,您可能需要设置smtp_use_tls = yes  (参考http://mhawthorne.net/posts/postfix-configuring-gmail-as-relay.html中的配置)

除了上述内容之外,我还必须确保已安装libsasl2-modules

运行以下命令:

  

apt-get install libsasl2-modules

     

/etc/init.d/postfix restart