我想configuration我的服务器的电子邮件采取参考forms这个链接: SMTP中继传出邮件在Postfix中 – 使用Webmin 。 我使用的是Mandrill smtp服务器。 在configuration主服务器之前,我还configuration了一个vagrent实例。 但是,当我尝试从服务器(stream浪者和主要)发送电子邮件使用:
sendemail -f [email protected] -t <myemail>@gmail.com -m "Message Body" -u "Message Subject"
邮件在postfix中排队,永远不会到达目的地。
/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=<[email protected]>, 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 <[email protected]>: 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=<[email protected]>, 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 <[email protected]>: 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
需要一些build议。 这里怎么了? 我是邮件服务器configuration非常新的。 如果有愚蠢的错误,请原谅我。
这里的问题是你configuration你的服务器,所以它应该中继任何出站电子邮件到服务器,即smtp.mandrillapp.com 。 那个服务器反过来不接受中继你的邮件。
我不知道这家公司,但我的猜测是,他们只是从authentication的客户转发邮件,而你没有login。
你可能应该在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
用你的login名/密码从mandrillapp。
另外,我在你的configuration文件中看到一个smtpd_sasl_auth_enable (注意smtp结尾的'd'),只有当你希望客户端login到你的服务器时,才会有相关性,而且我没有看到足够的configuration。 你应该确保这是必要的。
你在哪里定义Mandrill API密钥? 我认为你在main.cf中缺lesssmtp_sasl_password_maps指令。 请看下面的内容:
我可以configurationPostfix通过Mandrill发送吗?