shell 错误=>错误=>SMTP验证:smtp.gmail.com的身份验证:587失败

xdyibdwo  于 2023-01-02  发布在  Shell
关注(0)|答案(3)|浏览(308)

我尝试使用以下命令发送电子邮件,但收到以下错误:

Command executed:
/usr/bin/sendemail -v -f "mymail@gmail.com" -u "Re : Alerts Script" \
   -t "$EMAILS" -s "smtp.gmail.com:587" -o tls=yes -xu "my@gmail.com" \
   -xp "Password" -m "$Msg"

我尝试与端口25,仍然相同的错误获取。如果我使用465端口获取以下错误
ERROR =〉smtp.gmail.com:465返回了一个零字节的查询响应。

/usr/bin/sendemail -v -f "mymail@gmail.com" -u "Re : Alerts Script" \
  -t "$EMAILS" -s "smtp.gmail.com:587" -o tls=yes -xu "my@gmail.com" \
  -xp "Password" -m "$Msg"

电子邮件应发送给给定的电子邮件ID

7ajki6be

7ajki6be1#

我也遇到过同样的问题,可以解决它。你可以使用tls auto,587 port命令。能够成功地使用gmail smtp发送电子邮件。

/usr/bin/sendemail -f "mymail@gmail.com" -u "Re : Alerts Script" -t "$EMAILS" -s "smtp.gmail.com:587" -o tls=auto -xu "mymail@gmail.com" -xp "Password" -m "$Msg"

此外,你必须在Gmail中应用几个设置。
1.启用IMAP
1.允许不太安全的应用程序
1.检查可疑活动并标记"是我"以允许通信。

wwtsj6pe

wwtsj6pe2#

同样在windows中,您需要将sendEmail添加到防火墙中。

6rqinv9w

6rqinv9w3#

为了在Windows中为我解决这个错误(应该在任何操作系统中工作),我不得不进入我在网络上的Gmail帐户/安全/应用程序密码,并为应用程序:“邮件”和设备:“Windows电脑”(你也可以创建一个自定义设备)生成一个16位数的密码,以便对我运行SendEmail的设备给予特殊访问。
根据谷歌:“应用程序密码可以让你从不支持两步验证的设备上的应用程序登录到你的谷歌帐户。”
然后我在SendEmail中使用了那个16位数的密码,而不是我的Gmail密码,它终于通过了。

c:\sendemail\sendemail -o tls=yes -t recipient@email.*** -m Title HELLO -f [myaccount]@gmail.com -s smtp.gmail.com:587 -xu [myaccount]@gmail.com -xp **************** -l C:\sendemail\logfile.txt

相关问题