带有Office365的Msmtprc SMTP

时间:2018-10-18 20:56:34

标签: smtp msmtp

我正在将msmtprc smtp配置为发送出站电子邮件,并遇到office365的问题。 Gmail帐户可以正常使用,但是Office 365出现以下错误。

msmtp: authentication failed (method LOGIN) msmtp: server message: 535 5.7.3 Authentication unsuccessful [BN6PR13CA0016.namprd13.prod.outlook.com] msmtp: could not send mail (account default from /etc/msmtprc)

/var/log/msmtp.log

Authentication unsuccessful [BN6PR13CA0016.namprd13.prod.outlook.com]' errormsg='authentication failed (method LOGIN)' exitcode=EX_NOPERM

/ etc / msmtprc

defaults auth on logfile /var/log/msmtp.log account office host smtp.office365.com port 587 protocol smtp from support@example.net user support@example.net password ******* tls on tls_starttls on tls_trust_file /etc/pki/tls/certs/ca-bundle.crt

有人可以在Office365中成功使用Msmtprc吗?

谢谢。

1 个答案:

答案 0 :(得分:0)

使用以下设置(在CentOS 7机器上),但我已经成功使用msmtp fine了一段时间,但是在$HOME/.msmtprc中使用了配置,因为它仅适用于我的用户而不是全局用户:

account          default
host             smtp.office365.com
port             587
tls              on
tls_starttls     on
tls_trust_file   /etc/ssl/certs/ca-bundle.crt
tls_certcheck    on
auth             on
user             username@example.com
passwordeval     pass office365.com
from             username@example.com
logfile          ~/.msmtp.d/msmtp.log

.. so这与您的99%相同,只是我没有在文件中输入密码,而是使用passwordeval通过给定命令的输出提供密码。

password和密码本身之间是否存在多个空格,导致空格被添加到密码的开头?

您还可以尝试运行msmtp,使其具有控制终端(即像systemctl一样从shell运行而不是通过服务管理器运行),以测试是否以这种方式提供密码符合预期?