我正在将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吗?
谢谢。
答案 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运行而不是通过服务管理器运行),以测试是否以这种方式提供密码符合预期?