我想从 linux 命令发送电子邮件。我在ubuntu ssmtp中安装,然后在/etc/ssmtp/ssmtp.conf中配置:
root=mymail@gmail.com
mailhub=smtp.gmail.com:587
rewriteDomain=gmail.com
FromLineOverride=YES
AuthUser=mymail@gmail.com
AuthPass=xxxxxxxxx
UseTLS=YES
UseSTARTTLS=YES
然后我尝试这样发送电子邮件:
ssmtp receiver_mail@gmail.com < msg.txt
但我得到了这个错误:
ssmtp: Authorization failed (535 5.7.8 https://support.google.com/mail/?p=BadCredentials t187sm393455wmt.25 - gsmtp)
然后我尝试使用 sendmail 命令:
echo -n 'Subject: test\n\nTesting ssmtp' | sendmail -v receiver_mail@gmail.com
但我得到了同样的错误:
[<-] 220 smtp.gmail.com ESMTP a22sm418259wmd.20 - gsmtp
[->] EHLO omar-X550LC
[<-] 250 SMTPUTF8
[->] STARTTLS
[<-] 220 2.0.0 Ready to start TLS
[->] EHLO omar-X550LC
[<-] 250 SMTPUTF8
[->] AUTH LOGIN
[<-] 334 VXNlcm5hbWU6
[->] b21hci5rYWxsZWwzQGdtYWlsLmNvbQ==
[<-] 334 UGFzc3dvcmQ6
[<-] 535 5.7.8 https://support.google.com/mail/?p=BadCredentials a22sm418259wmd.20 - gsmtp
sendmail: Authorization failed (535 5.7.8 https://support.google.com/mail/?p=BadCredentials a22sm418259wmd.20 - gsmtp)
似乎 ssmtp 配置中有问题或缺失。有什么建议可以解决这个问题吗?