如何修复“发送邮件:授权失败 534 5.7.14”

如何修复“发送邮件:授权失败 534 5.7.14”

我正在尝试在 ssh root 登录时创建电子邮件警报,因此我必须安装邮件传输协议邮件公用事业。

然后我配置ssmtp配置文件文件如下:

# Config file for sSMTP sendmail
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
        #root=postmaster
        #Adding  email id to receive system information
root = [email protected]
# 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=mail

mailhub = smtp.gmail.com:587

[email protected]
AuthPass=plaintext password
UseTLS=YES
UseSTARTTLS=YES

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

# The full hostname

hostname = mailserver
# 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

以及如下的重新别名:

# Format:       local_account:outgoing_address:mailhub
# Example: root:[email protected]:mailhub.your.domain[:port]

root:[email protected]:smtp.gmail.com:25

我收到了这个错误:

send-mail: Authorization failed (534 5.7.14 https://support.google.com/mail/bin/answer.py?answer=78754 ni5sm3908366pbc.83 - gsmtp)
Can't send mail: sendmail process failed with error code 1

但没用。请帮我解决这个问题

答案1

修复此问题可能需要多个步骤

  1. 采取前面提到的步骤。登录您的 Google 电子邮件帐户,然后转到此链接:https://www.google.com/settings/security/lesssecureapps并将“访问安全性较低的应用程序”设置为 ON。测试您的问题是否已解决。如果没有解决(对我来说没有解决),请继续执行步骤 #2。

  2. https://support.google.com/accounts/answer/6009563(标题:“密码错误”)。此页面显示“使用第三方应用登录 Google 时,您可能会看到“密码错误”错误(又名 534-5.7.14)的原因有多种。在某些情况下,即使您正确输入了密码。” 本页给出了 4 项值得尝试的建议。

对我来说,第一个建议有效:

  • https://g.co/allowaccess从您之前用来访问 Google 帐户的其他设备并按照说明进行操作。
  • 尝试从被阻止的应用程序再次登录。

步骤#2 中给出的页面上还有另外三个建议,但我没有尝试,因为在转到编辑后的链接并按照说明操作后,一切都开始正常运转。

答案2

这对我有用。

1)登录您的 Gmail 帐户。

2)前往https://www.google.com/settings/security/lesssecureapps并开启此功能。

3) 前往https://accounts.google.com/DisplayUnlockCaptcha并点击继续。

然后您可以从您的 Gmail 帐户验证您的附加电子邮件地址。

编辑:就我而言,写 smtp.gmail.com 而不是 smtp.gmail.com:587 会有所帮助。

答案3

要解决此问题,您需要:

1)使用网络浏览器登录您的 Gmail 帐户。

2)单击此链接以允许应用程序访问您的帐户:https://accounts.google.com/b/0/DisplayUnlockCaptcha

3)单击“继续”按钮完成该步骤。

4) 现在再次尝试从 PHP 脚本发送电子邮件。它应该可以正常工作。

答案4

发生这种情况的原因是谷歌最近实施了一项政策变化,用他们自己的话说,这是一系列加强电子邮件身份验证的变化之一,并终止谷歌产品任何破坏身份验证的做法。

建议的选项有很多,例如更改 smtp 服务器的端口、在“安全设置”选项卡中启用“允许安全性较低的应用程序”选项等。

一个可行的解决方案是启用 Gmail 的 AuthUser 两步验证,生成一个应用程序专用密码,并在设置“以...身份发送邮件”选项时使用此密码作为 Gmail 密码。创建应用程序专用密码并在 中使用它后/etc/ssmtp/ssmtp.confAuthPass=您可以在不撤销两步验证的情况下禁用两步验证。

相关内容