sSMTP不再有效 - '响应无效:501 5.5.4 HELO/EHLO参数MYEMAILADDRESS@gmail.com无效,关闭连接.'

Ton*_*sek 9 php linux email ssmtp

正如标题/标签所说,我在Linux上为PHP服务器运行sSMTP.

每当我尝试发送电子邮件时,我都会收到这些错误(不会出现在PHP中,只会出现在日志/'sudo服务sendmail状态'或'sudo service php5-fpm status')

来自/var/log/mail.log

Mar 31 03:34:34 ip-172-31-22-38 sSMTP[2004]: Creating SSL connection to host
Mar 31 03:34:34 ip-172-31-22-38 sSMTP[2004]: Invalid response: 501 5.5.4 HELO/ELO argument MYEMAILADDRESS@gmail.com invalid, closing connection. v74sm9147441pfa.7- gsmtp (MYEMAILADDRESS@gmail.com)
Mar 31 03:34:34 ip-172-31-22-38 sSMTP[2004]: SSL connection using (null)
Mar 31 03:34:34 ip-172-31-22-38 sSMTP[2004]: Cannot open smtp.gmail.com:587
Run Code Online (Sandbox Code Playgroud)

来自/var/log/mail.err和mail.warn

Mar 31 03:34:10 ip-172-31-22-38 sSMTP[1997]: Cannot open smtp.gmail.com:587
Mar 31 03:34:34 ip-172-31-22-38 sSMTP[2004]: Invalid response: 501 5.5.4 HELO/EHLO argument MYEMAILADDRESS@gmail.com invalid, closing connection. v74sm9147441pfa.7 - gsmtp (MYEMAILADDRESS@gmail.com)
Mar 31 03:34:34 ip-172-31-22-38 sSMTP[2004]: Cannot open smtp.gmail.com:587
Run Code Online (Sandbox Code Playgroud)

我的/etc/ssmtp/ssmtp.conf

#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=MYEMAILADDRESS@gmail.com

# The place where the mail goes. The actual machine name is required no
# MX records are consulted. Commonly mailhosts are named mail.domain.com
mailhub=smtp.gmail.com:587

# Where will the mail seem to come from?
#rewriteDomain=

# The full hostname
hostname=MYEMAILADDRESS@gmail.com

AuthUser=MYEMAILADDRESS@gmail.com
AuthPass=[removed]
UseSTARTTLS=YES
# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
FromLineOverride=YES
Run Code Online (Sandbox Code Playgroud)

我的重估

root:MYEMAILADDRESS@gmail.com:smtp.gmail.com:587
localusername:MYEMAILADDRESS@gmail.com:smtp.gmail.com:587
Run Code Online (Sandbox Code Playgroud)

小智 17

包括我的ssmtp.confhostname=xxx@gmail.com,我把它改成了,hostname=localhost问题解决了.


Ton*_*sek 7

在拔掉我的头发多年后,我终于束缚了并复制了Arch Linux的wiki文章中的配置,用于Gmail和SSMTP,最终工作!伙计们,请务必三重检查你的配置!

# The user that gets all the mails (UID < 1000, usually the admin)
root=username@gmail.com

# The mail server (where the mail is sent to), both port 465 or 587 should be acceptable
# See also http://mail.google.com/support/bin/answer.py?answer=78799
mailhub=smtp.gmail.com:587

# The address where the mail appears to come from for user authentication.
rewriteDomain=gmail.com

# The full hostname
hostname=localhost

# Use SSL/TLS before starting negotiation
UseTLS=Yes
UseSTARTTLS=Yes

# Username/Password
AuthUser=username
AuthPass=password

# Email 'From header's can override the default domain?
FromLineOverride=yes
Run Code Online (Sandbox Code Playgroud)