如何解决“发送邮件:授权失败534 5.7.14”

我正在尝试在ssh root login上创build电子邮件提醒,所以我不得不安装ssmtp邮件工具。

然后我configurationssmtp.conf文件如下:

# 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 = rootuser@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=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. 采取前面提到的步骤。 login到您的谷歌电子邮件帐户,然后转到此链接: https : //www.google.com/settings/security/lesssecureapps并将“访问不太安全的应用程序”设置为ON。 testing以确定您的问题是否已解决。 如果没有解决,因为它不是我,继续步骤#2。

  2. 转到https://support.google.com/accounts/answer/6009563 (标题:“密码错误”)。 此页面显示“使用第三方应用程序loginGoogle时,出现”密码不正确“错误(也称为534-5.7.14)有几个原因, 在某些情况下,即使正确input密码也是如此。 这个页面给出4个build议要尝试的东西。

对我来说,第一个build议起到了作用:

  • 从以前用于访问您的Google帐户的其他设备转到https://g.co/allowaccess ,然后按照说明进行操作。
  • 尝试再次从被封锁的应用程序login。

在步骤#2中给出的页面还有三个build议,但是我没有尝试,因为在进入编辑链接并遵循指示之后,一切都开始按照它应该的那样工作。

这对我有效。

1)login到您的Gmail帐户。

2)转到https://www.google.com/settings/security/lesssecureapps并开启此function&#x3002;

3)转到https://accounts.google.com/DisplayUnlockCaptcha并点击继续&#x3002;

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

编辑:在我的情况下,它有助于写smtp.gmail.com而不是smtp.gmail.com:587。

我也有同样的问题,请务必查看您的Gmail帐户安全设置,并从www.google.com/settings/security启用“访问安全性较低的应用程序”。

它会神奇地开始工作。

要解决这个问题,你需要:

1)使用networking浏览器login到您的Gmail帐户。

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

3)点击继续button完成该步骤。

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

发生这种情况的原因是,Google最近实施了一项政策更改,用他们自己的话来说,这是一系列加强电子邮件身份validation的更改,并终止了Google产品违反身份validation的任何做法。

有很多selectbuild议,如更改SMTP服务器的端口,以启用“允许安全设置”选项卡中的“允许不太安全的应用程序”选项等。

其中一个解决scheme是启用Gmail的AuthUser两步validation,生成应用专用密码,并在设置“发送邮件为”选项时将此密码用作Gmail密码。 一旦你创build一个应用程序唯一的密码,并在/etc/ssmtp/ssmtp.conf使用它,在AuthPass= ,你可以禁用两步validation,而不需要撤销两步validation。

你是否按照提供的链接阅读说明? 这是如何解决它。

我敢打赌,你input了错误的用户名或密码。

如果它们确实是正确的,请确认您使用相同的端口。 在你指定的587以上,而在你指定的25以下。

那么指定UseTLSUseSTARTTLS可能不行。 在端口587上使用UseTLS,端口25使用UseSTARTTLS。

最后你的主机名是likeley而不是“mailserver”。 使用FQDN。