从 2022 年 5 月 30 日起,我们将需要使用 OAuth2(而非普通密码)登录 Gmail 帐户。Google 的这一声明将如何影响 Thunderbird?因此,我多次尝试更改 Thunderbird 实例中的 Gmail 帐户(Kubuntu Linux 20.04 上不同时间的版本 91.7.0、91.7.1 和 91.8.1)以使用 OAuth2。
但是,当我尝试所需的步骤时:
在预期的 OAuth2 登录页面(电子邮件地址、密码、然后“Mozilla Thunderbird 电子邮件想要访问您的 Google 帐户”)之后,我收到意外的“安全连接失败”页面。
安全连接失败
这可能是服务器配置问题,也可能是有人试图冒充服务器。
如果您过去曾成功连接到此服务器,则错误可能是暂时的,您可以稍后重试。
或者您可以添加例外...
添加例外链接不会执行任何操作。除了结束对话之外没有其他办法。认证不成功。
该对话窗口的标题栏显示https://192.168.xx/?code=..。用我自己的IP地址。我不清楚为什么 OAuth2 进程需要调用本地计算机上的 Web 服务器。
恢复为“普通密码”可以使帐户在 Thunderbird 中正常工作,但这在 5 月 30 日之后就不可能了。
两年来,我一直很高兴通过 访问我的 Gmail 帐户neomutt。
我使用“两步验证”应用程序密码(使用应用程序密码登录neomutt)在本地和我的在线 Gmail 帐户之间进行同步。mbsync
使用 发送 Gmailneomutt比较棘手,因为msmtp需要来自Gmail API. 幸运的是,GitHub 用户 tenllado 提供了我能找到的唯一可行的开源解决方案,他的脚本oauth2token。我将其改编为oauth2tool.sh。其运行步骤如下:
xxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.apps.googleusercontent.comxxxxxxxxxxxxxxxxxxxxxxxxoauth2.py(代码“刷新令牌无限期持续”)。$ python2 oauth2.py --user=my@gmail.com --client_id=<myCI> --client_secret=<myCS> --generate_oauth2_token并按照说明进行操作。它看起来像这样:
1//03xxxxxxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxaccount my
auth oauthbearer
host smtp.gmail.com
port …Run Code Online (Sandbox Code Playgroud) 在新安装的 Thundirbird 上尝试使用 OAuth2 设置 Gmail 帐户时,尽管提供了正确的凭据,但我无法正确进行身份验证。
在 Thunderbird 向导的帮助下,我获得了所有服务器,并显示了一个新的 OAuth2 窗口。我登录并进行了两个两步验证,之后我会看到我将要允许 Thunderbird 接收、发送电子邮件等的信息。
单击允许后,雷鸟显示“连接到服务器 imap.gmail.com 时身份验证失败”。