neomutt oauthが動作を停止しました。

neomutt oauthが動作を停止しました。

先週からoauth2が動作を停止しました。しばらく前に起こったことで、神秘的に自然に癒されました。ここで何が起こっているのか知りたいです。参考のためにThunderbirdをインストールしましたが、動作しています。 oauth2 を使用すると、メールを送受信できます。

MS Officeアカウントがあり、認証が構成されています。mutt_oauth2.pyスクリプトは次の場所にリンクされています。文書次の手順に従ってください。閲覧ファイル

スクリプトを実行すると、トークンが手動で生成されます。テストの結果、imapとsmtp間の通信は基本的に正常であることがわかりました(スクリプト私の考えが正しいとログインが成功したようです。)

/home/me/bin/mutt_oauth2.py /home/me/.neomutt/token --provider microsoft --verbose --test
[…]
IMAP authentication succeeded
POP authentication succeeded
SMTP authentication succeeded

ネオマートも働いていましたが、数日前に停止しました。ログは私たちに教えてくれます

[2023-06-18 10:35:17]<2> mutt_socket_write_d() 4> c0000 CAPABILITY
[2023-06-18 10:35:17]<5> mutt_socket_readln_d() 4< * CAPABILITY IMAP4 IMAP4rev1 AUTH=PLAIN AUTH=XOAUTH2 SASL-IR UIDPLUS ID UNSELECT CHILDREN IDLE NAMESPACE LITERAL+
[2023-06-18 10:35:17]<3> cmd_parse_capability() Handling CAPABILITY
[2023-06-18 10:35:17]<3> cmd_parse_capability()  Found capability "IMAP4": 0
[2023-06-18 10:35:17]<3> cmd_parse_capability()  Found capability "IMAP4rev1": 1
[2023-06-18 10:35:17]<3> cmd_parse_capability()  Found capability "AUTH=XOAUTH2": 9
[2023-06-18 10:35:17]<3> cmd_parse_capability()  Found capability "SASL-IR": 13
[2023-06-18 10:35:17]<3> cmd_parse_capability()  Found capability "IDLE": 12
[2023-06-18 10:35:17]<3> cmd_parse_capability()  Found capability "NAMESPACE": 4
[2023-06-18 10:35:17]<5> mutt_socket_readln_d() 4< c0000 OK CAPABILITY completed.
[2023-06-18 10:35:17]<3> imap_cmd_step() IMAP queue drained
[2023-06-18 10:35:17]<2> imap_authenticate() Trying user-defined imap_authenticators
[2023-06-18 10:35:17]<2> imap_authenticate() Trying method oauthbearer
[2023-06-18 10:35:17]<2> mutt_sasl_client_new() SASL local ip: 2001:db8::1;38986, remote ip:2001:db8::2;993
[2023-06-18 10:35:17]<2> mutt_sasl_client_new() External SSF: 256
[2023-06-18 10:35:17]<2> mutt_sasl_cb_log() SASL: No worthy mechs found
[2023-06-18 10:35:17]<2> imap_auth_sasl() oauthbearer unavailable
[2023-06-18 10:35:17]<2> imap_authenticate() Trying method xoauth2
[2023-06-18 10:35:17]<M> imap_auth_oauth_xoauth2() Authenticating (XOAUTH2)...
[2023-06-18 10:35:17]<5> msgwin_recalc() recalc done, request WA_REPAINT
[2023-06-18 10:35:17]<5> msgwin_repaint() repaint done
[2023-06-18 10:35:17]<5> ibar_recalc() recalc done, request WA_REPAINT
[2023-06-18 10:35:17]<5> helpbar_repaint() repaint done
[2023-06-18 10:35:17]<5> menu_repaint() repaint done
[2023-06-18 10:35:17]<5> ibar_repaint() repaint done
[2023-06-18 10:35:17]<E> mutt_account_getoauthbearer() OAUTH token is too big: 2304
[2023-06-18 10:35:17]<5> msgwin_recalc() recalc done, request WA_REPAINT
[2023-06-18 10:35:17]<5> msgwin_repaint() repaint done
[2023-06-18 10:35:17]<2> mutt_sasl_client_new() SASL local ip: 2001:db8::1;38986, remote ip:2001:db8::2;993
[2023-06-18 10:35:17]<2> mutt_sasl_client_new() External SSF: 256
[2023-06-18 10:35:17]<2> mutt_sasl_client_new() External authentication name: [email protected]
[2023-06-18 10:35:17]<2> mutt_sasl_cb_authname() getting authname for outlook.office365.com:993
[2023-06-18 10:35:17]<2> imap_auth_sasl() xoauth2 unavailable
[2023-06-18 10:35:17]<E> imap_authenticate() No authenticators available or wrong credentials

  • libsasl2関連パッケージは3月に最後に更新されたため、変更はありません。
  • 私のネオマートの設定やパスワードにはありません。
  • このOAUTH token is too big: 2304ニュースは知られており、過去には何の影響もありませんでした。

この問題をさらにデバッグする方法と、これに対処するためのヒントがありますか?

答え1

私は同じ設定とMicrosoftアカウントを持ってneomuttいますmutt_oauth2.py。今日も同じ問題を発見し、最新バージョンneomutt(バージョン20230517)にアップグレードしました。これで問題が解決しました。

最新バージョンにアップグレードするには、次の作業が必要になる場合があります。neomuttソースからビルド; Unix / Linuxディストリビューションは以前のバージョンをパッケージ化する傾向があります。

答え2

@yb1さん、ありがとうございます。 Ubuntu 22.04の場合、指示は以下で確認できます。どのオプションを設定するかについてのヒントを得るために、リポジトリでインストールを見ました。

私はシステムをきれいに保つためにDockerコンテナを使用しています。ダウンロード後源泉そしてcd私が実行したbloatフォルダに-ing

docker run --rm -it -v $PWD:/wrk ubuntu

cd /wrk
apt update
apt install build-essential gettext libncursesw5-dev pkg-config libidn2-dev libgpgme-dev libsasl2-dev liblua5.4-dev libnotmuch-dev libsqlite3-dev libgnutls28-dev libtokyocabinet-dev libkrb5-dev

./configure --build=x86_64-linux-gnu --prefix=/usr {--includedir=${prefix}/include} {--mandir=${prefix}/share/man} {--infodir=${prefix}/share/info} --sysconfdir=/etc --localstatedir=/var --disable-option-checking --disable-silent-rules {--libdir=${prefix}/lib/x86_64-linux-gnu} --runstatedir=/run --disable-maintainer-mode --disable-dependency-tracking --mandir=/usr/share/man --libexecdir=/usr/libexec --with-mailpath=/var/mail --gpgme --lua --notmuch  --gnutls --gss  --mixmaster --sasl --tokyocabinet --sqlite --autocrypt --disable-doc
make

関連情報