具有对Microsoft托管的电子邮件服务的两因素身份验证的Alpine电子邮件客户端

问题描述

我将Alpine用作在Ubuntu OS上运行的电子邮件客户端。我的雇主使用Microsoft的电子邮件服务,刚开始要求两要素身份验证(2FA)来发送电子邮件。 我无法再发送电子邮件了。 我已按照他们的指示(https://mcgill.service-now.com/itportal?id=kb_article&sysparm_article=KB0011664)在桌面上设置authy应用。因此,现在我已通过Microsoft服务器的天网认证。 现在有什么方法可以继续使用Alpine?我怀疑答案是通过某种方式(使Alpine中的插件)与该authy应用进行对话。

当前/以前,我的设置中有SMTPSERVER=smtp.office365.com:587/tls/user=my.name@mcgill.ca 不再起作用; Alpine提示我输入密码,但失败。

更新: 我尝试将/submit/auth=xoauth2附加到SMTP字符串,如http://alpine.x10host.com/alpine/alpine-info/misc/SettingXOAUTH2Outlook.html所述,但这没有该页面上描述的行为。相反,当我尝试发送Alpine时说:

  [>Error sending: Client does not support AUTH=xoauth2 authenticator<]

解决方法

对于我们这些与开放标准和开放源代码软件有关的人,我有个好消息。您通过Authy应用设置的两因素身份验证基于rfc6238。在设置的下一步中,保存在Authy应用中的秘密就是生成2FA代码所需的全部:

enter image description here

Authy应用程序的好处在于,您可以使用它来存储密钥,生成2FA代码,加密和备份密钥,从而使密钥更难丢失。虽然您的IT文档建议Authy作为他们将尝试支持的唯一其他应用程序,但是您可以选择使用任何实现rfc6238的开源身份验证器应用程序。

另一方面,您的邮件客户端Alpine将需要能够处理来自邮件服务器的2FA请求。我对构建Linux邮件客户端一无所知,但是好像可以使用Evolution,with the evolution-ews plugin,supports 2FA with Office365。不过,您可能需要与Alpine维护人员联系。