12.04 – 如何配置Postfix以通过我的Gmail帐户发送所有电子邮件?
作者:互联网
我正在尝试从我的localhost通过Google发送电子邮件.
(通过PHP5.3)
但谷歌继续阻止我的请求.
我尝试按照几个类似问题给出的解决方案,但由于某种原因它们不起作用.
我按照这些说明进行配置 – http://www.dnsexit.com/support/mailrelay/postfix.html
现在为配置数据:
>我的main.cf文件看起来像这样:
relayhost = [smtp.gmail.com]:587
smtp_fallback_relay = [relay.google.com]
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options =
>我的sasl_passwd看起来像那样:
[smtp.gmail.com]:587 mygmailuser@gmail.com:password
>这就是mail.log行的样子:
Dec 14 10:24:50 COMP-NAME postfix/pickup[5185]: 1C3987E0EDD: uid=33 from=
Dec 14 10:24:50 COMP-NAME postfix/cleanup[5499]: 1C3987E0EDD: message-id=<20121214082450.1C3987E0EDD@COMP-NAME.localdomain>
Dec 14 10:24:50 COMP-NAME postfix/qmgr[5186]: 1C3987E0EDD: from=, size=483, nrcpt=1 (queue active)
Dec 14 10:24:50 COMP-NAME postfix/smtp[5501]: 1C3987E0EDD: to=, relay=smtp.gmail.com[173.194.70.109]:587, delay=0.61, delays=0.19/0/0.32/0.1, dsn=5.7.0, status=bounced (host smtp.gmail.com[173.194.70.109] said: 530 5.7.0 Must issue a STARTTLS command first. w3sm8024250eel.17 (in reply to MAIL FROM command))
Dec 14 10:24:50 COMP-NAME postfix/cleanup[5499]: C20677E0EDE: message-id=<20121214082450.C20677E0EDE@COMP-NAME.localdomain>
Dec 14 10:24:50 COMP-NAME postfix/bounce[5502]: 1C3987E0EDD: sender non-delivery notification: C20677E0EDE
Dec 14 10:24:50 COMP-NAME postfix/qmgr[5186]: C20677E0EDE: from=<>, size=2532, nrcpt=1 (queue active)
Dec 14 10:24:50 COMP-NAME postfix/qmgr[5186]: 1C3987E0EDD: removed
解决方法:
您需要在Postfix的SMTP客户端中启用TLS,因为Google需要它.这在“必须发出STARTTLS命令”消息中由它们表示.
在/etc/postfix/main.cf中,你想要这样的东西:
smtp_tls_policy_maps = hash:/etc/postfix/tls_policy
然后在/ etc / postfix / tls_policy中:
[smtp.gmail.com]:587 encrypt
tls_policy中的左侧必须与main.cf中的relayhost条目完全相同.
请记住在根据需要创建或更改后在/ etc / postfix / tls_policy上运行postmap.
您可以在Postfix’s TLS documentation找到更多详细信息.
标签:php,12-04,mail,postfix 来源: https://codeday.me/bug/20190808/1619096.html