44 自分の環境更新の記録: Davmail&Mew を試してみる

(工事中。前置きが長いよ。)

これまで、 お仕事マシン、WWWサーバー、メール保存・送信マシンを1台のマシンでやっていた。 そういう運用になったのは歴史的な経緯で、 良い面がないわけでもないけれど (例えば普段仕事に使っているマシンについては色々なことに気づくよね)、 複数のものが絡むと更新しにくいとか、色々と問題がある。 今回、色々障害が発生して、やむを得ず環境更新を始めたけれど、 今のところ順調に行っている。 そろそろ記録をした方が良いだろう、というわけで書き始める。 ここはメールの話。


メールは随分長いこと使ってきた。 使っているメーラーは、 普通の UNIX mail (mbox に保存するやつ), mh-e, Mew とソフトを移り変わって、データはずっと残してきた。 大学のメールアカウントは、サーバーが Exchange になって、 多要素認証が導入されて、 2020年4月からは POP, IMAP のサポートも公式には打ち切られて、 今は多分「この人まだ IMAP でアクセスしているよ、仕方ないなあ」 とお目こぼしをされている段階のようだ (苦笑)。 さて、どうしよう。もしできれば、Mew を使い続けたい (それが出来ればデータ移行とかする必要がない)。


Macでのメール環境について、現在の状況を整理しておく。


(ここが自分にとって大事なところだ。)

お仕事マシンで、メールを読み書きするのは当然だけれど、 メールに関するデータをローカルにきちんと保存したい。 できればデータの形式について、過去との連続性を保って。

そのために Davmail を使ってみよう、 具体的にどうすればいいか、というのが課題で、それをどうやったか。


Davmail については、以前調査したことがある。

「古い macOS で Exchange を使う (新年度のメール生活のための調査)」

この記録に従いインストールした。 まず最新版の Davmail を入手する。 DavMail.app (2020/4/19) が現在 (2020/12/19 10:51:11) の最新みたい。 /Applications に放り込む。

起動して Exchange protocol を O365 にする (この辺のことはよく分からないが、前回それでうまく行った記録が残っている)。

まずは Thunderbird で試してみる。 これも前回やったことがあるので、それをそのまま踏襲する。 「平文のパスワード認証」を「通常のパスワード認証」と書くのはどうなんだろう (「通常」とか「新しい」という形容は時が経つと訳が分からなくなるので、 内容を具体的に示す形の説明にすべきだ。)。

さて、それで設定して、一応動いているようである。取り敢えず一安心。 忙しいので中断。


(2020/12/27追記) 冬季休暇に入って、メール環境の移行に着手。 Thunderbird では動作確認出来たので、いよいよ本番の Mew. ずっと以前 Mew で POP でアクセスする設定は書いたことがあって、 それを叩き台にして作業した。 今回の要点は、サーバーを localhost にして、 ポート番号も Davmail のデフォールト (SMTPが1025, POPが1110, IMAPが1143, ...)にする、 というだけ。 GNU PG の設定などは、今回は考えないで、以前やった 「備忘録: Mew にパスワード入力を助けてもらう」 の内容をコピーした。 それで Mew で無事にメールが読めるようになった (パスワードは暗号化されて、 一定期間 ~/Mail/.mew-passwd.gpg に保存される)。 これで届いたメールは過去から継続して保存できるようになった、らしい。

(2020/12/28追記) 送信の方は少してこずった。
ErrorSendAsDenied The user account which was used to submit this request does not have the right to send mail on behalf of the specified sending account.
のようなエラー・メッセージが出る。 ネットで検索して https://sourceforge.net/p/davmail/discussion/644057/thread/514567ff/を発見した。混迷した中、最後の最後で解決、というやり取りの記録。 真似をする。 ~/.davmail.properties の末尾に
davmail.smtpStripFrom=true
と書き込んだら解消された。 (2020/12/31追記) これは Mew の設定が悪かったせいみたいだ。 mail-domain をきちんと設定していなくて、 From がおかしくなっていた (具体的には hostname がついていた、初歩的なミス)。 mail-domain を正しく設定してからは、 davmail.smtpStripFrom=true を削除しても送信できることを確認した。


(2020/12/30追記) メッセージが途中で切れて、添付ファイルが届かない事態が発生した。 しばらくは注意深くしないといけないようだ。 … これは mew-pop-size を 0 (無制限) にしなかったせいか。 こういう設定は、セキュリティがからむせいか、 生の実例 (実際に使っている設定ファイル) が載っていないことが多い。 そのせいか、いまいち分かりにくい (プログラミング言語の説明で、各機能の説明はしてあるけれど、 プログラムの実例がないような感じ)。


(2021/1/7追記) 「一応」使えているのだけれど、自宅からリモート・ログインして読む場合に、 Mew を起動して、POP で読みに行くけど反応が返って来ない、 ところが VPN接続して Davmail が動いているマシンに画面共有でアクセスすると、 Mew にPOPの反応が返って来て色々読める、 そういう状況になっている。 Davmail はこちらがリモート・ログインしても目が覚めないが、 画面共有してアクセスすると目が覚めるということだろうか? うーん、server mode というのにすれば良いのかな (あまり気が進まないけれど)。 …試してみる。 ~/.davmail.propertiesdavmail.server=true としたら、反応が返って来るようである (しばらく試験走行)。 こちらの希望としては、server mode を使わず、 リモート・ログインした時点で davmail に目を覚ますようになって欲しい。 それにしても、情報がまとまっていない感じである。 サーバー・モードで運用する場合は、 OS の起動時に自動起動するようにしたいけれど、 macOS のパッケージにはスクリプトとか同梱されていない。 ソース・コードのパッケージの中にそれらしきものを発見したけれど、 Linux 用みたい。


(2021/9/11追記) 「Davmail 更新」 というのを書きました。



桂田 祐史