![无法从命令行发送邮件,sasl 身份验证错误](https://linux22.com/image/910031/%E6%97%A0%E6%B3%95%E4%BB%8E%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%8F%91%E9%80%81%E9%82%AE%E4%BB%B6%EF%BC%8Csasl%20%E8%BA%AB%E4%BB%BD%E9%AA%8C%E8%AF%81%E9%94%99%E8%AF%AF.png)
我按照这里的说明进行操作如何使用命令行发送电子邮件?,但它不起作用。当我测试向某人发送邮件时,它返回:
(SASL authentication failed; server smtp.gmail.com[74.125.130.109] said: 535-5.7.8 Username and Password not accepted.
我已按照答案的建议解锁验证码,但仍然不起作用。
答案1
您需要“允许不太安全的应用程序”,设置位于 Google 帐户设置中 - 要启用设置,请访问此链接https://myaccount.google.com/lesssecureapps。
然后,尝试再次发送电子邮件,它应该可以工作,您也可以通过键入以下内容检查最近的邮件日志:
tail -f /var/log/mail.log
通常电子邮件成功消息与此行一起出现。
hostname postfix/smtp[2875]: F5182534OUA: to=<[email protected]>, relay=smtp.gmail.com[74.125.130.109]:587, delay=2.8, delays=0.07/0/1.6/1.1, dsn=2.0.0, status=sent
如果您对允许“不太安全的应用程序”感到不安,您可以使用应用程序密码——您可以在其中为 Postfix 本身生成独立密码。但它需要设置两步验证,请参阅此链接了解更多详细信息。