![見出し画像](https://assets.st-note.com/production/uploads/images/137820608/rectangle_large_type_2_3c67e939df5b9a2bf6a744e1d753a69e.png?width=1200)
メーリングリストのメールが届かない
先日渋谷の某所で水越さんからこんなことを言われた↓
ミーティング開催のメールが届かなくて、おかしいな、と思って問い合わせたらやっぱり、ミーティングがあった、てなことがあったんだよ。
あやうくミーティングをすっとばすところだったんだよ。
最近、Office365とか、Gmailの迷惑メール対策がきびしくなって、こういうことで困ってる人が多いんじゃないかな。
でもほら、大っぴらに言うと、なんか、マイクロソフトとかGoogleに喧嘩を売るみたいになっちゃって言いにくいじゃん。
だからさ、代わりに、なんか note に書いてよ。
無茶振りだよねー。
でもまあ、きっといういう無茶振りをするために中野のワインバーで奢ってくれたんだよなあ。
タダ飯ほど怖いものはないな。
まあ仕方がないのでなんか書くよ。
その日は点棒も沢山貰ったしね。
どういうことが起きているのか?
迷惑メールを防ぐための仕組みはいろいろある。
その中で、メールを送る側で、このメールは信用できますよ、というようなお墨付きをあたえるやり方がある。
昨年ぐらいまでは、その仕組みを使わない、お墨付きなしのメールも、わりと寛容に受けとられてきたんだけど、最近は、大手メール事業者が、お墨付きがないメールを迷惑メールとして扱うようになってきた。
神奈川県の高校入試の件でニュースにもなっていたけど、いろいろなところで影響は出ている。
そしてメーリングリストでも、この仕組みに対応できていないところも、それなりに影響も受けていて、メールが届かない、ということが良く聞かれるようになってきてるんだよね。
迷惑メールを防ぐ仕組み
今回の話で関係しそうな仕組みは以下の4つ。
第三者中継の禁止
SPF
DKIM
DMARC
図に書いてみた。
![](https://assets.st-note.com/img/1713523489016-rH17b5eLPp.png?width=1200)
仕組みを箇条書きにするとこんな感じ。
送信者側のサーバ管理者が
自分のドメイン(メールアドレスの@マークより後ろの部分)からのメール送信について
不正に使えないようにして(第三者中継の禁止)
送信元のサーバを登録して(SPF)
送信するメールについてお墨付き(署名)を付与して(DKIM)
どのように処理して欲しいか決めて(DMARC)
受信側のサーバが、登録された情報を元に処理する
この仕組みを使うと、これはちゃんとしたメールかどうか、ということが受信側で判断できるようになるのよね。
古典的なメーリングリストだとどうなるか?
古典的なメーリングリストは以下のように動く
メーリングリスト宛にメールを届くと
メールのボディ内のSubject等のヘッダ部分を少し修正して
登録されているメールアドレスにメールを転送する
図にするとこんな感じ。
![](https://assets.st-note.com/img/1713523546980-gF8tilHB5F.png?width=1200)
送信者は変更されないので、SPFでのチェックはそのまま有効。
でも、メールの中身をちょっといじってしまうので、DKIMは不整合になってしまうのよね。
メーリングリストでDKIMを有効にする方法
じゃあどうすれば良いのかというと、そのまま転送することをあきらめて
メーリングリストがメールを受けとったら
送信者を変更して
DKIMでの署名も改めて行なって
登録されているメールアドレスにメールを送信する
ということをすれば良い。
![](https://assets.st-note.com/img/1713523640414-zRii7H0qVV.png?width=1200)
ちゃんとしたメーリングリストはきちんとこのような設定をしている。
たとえばJANOGのメーリングリスト等はだいぶ前からちゃんと対応していて流石よね。
どうしてまだ未対応なメーリングリストがあるの?
対処方法がわかっているのに、対応していないメーリングリストはわりと多い気はする。
理由はいくつかある。
対応するのが大変
メーリングリスト側で対応させるためには
メーリングリストが動いているサーバのメールサーバ(MTA)をDKIM対応させる
メーリングリストソフトウェアをDKIM対応させる
の2つを行なわなければならない。
そもそもDKIMに対応できていないMTAを使っている場合には、MTAの交換やバージョンアップが必要にある。
メーリングリストソフトウェアも同じで、入れ替えやバージョンアップが必要になるケースも多い。
ソフトウェアを変更すると、運用のやり方が変わってしまうこともある。
今ちゃんと動いているシステムを下手に変更して失敗するとメールが届かなって、大問題になるかも、と思うと作業もしにくいよね。
メーリングリスト側でお墨付き(署名)を付与するのは気持ちが悪い
メーリングリストに届くメールがすべて信用できるものとは限らないのに、メーリングリスト側から出されるメールにはDKIM署名して信用度を上げる、というのはちょっと気持ち悪い気もするんだよね。
そのための仕組みとして、
メーリングリスト側で受け取るときにDMARC検証をする
ARCという新しい仕組みを使う
というやり方が推奨されてはいる。
ただ、さらに対応するのは面倒になっちゃう。
そもそもSPF、DKIM、DMARC対応に意味があるのか疑問
毎日沢山届く迷惑メールを眺めて見ると、正しくSPFやDKIMが設定されているメールも多いんだ。
スパムメール事業者はわりとちゃんとそのへんの設定をしてる。
ところが Gmail とかはちゃんとそんな迷惑メールも、迷惑メールフォルダに振りわけてくれている。
すごいよね。
そして、スパムじゃないメールでも、SPFやDKIMが正しくないメールも未だに結構多い。
ただそれはそれは意外とちゃんと受信箱に触りわけてくれる。
すごいよ。
あれ?SPFとかDKIMとか不要なのでは?、設定する意味ってないのでは?、とかも思っちゃうよね。
なんでもDNSにやらせるのは気持ちが悪い
SPF、DKIM、DMARCは、DNSをデータベースとして利用している。
送信側で、SPF、DKIM、DMARCの情報をDNSに登録して、
受信側で、DNSから必要な情報を取得して、検証したり判断する
という仕組み、DNSにそんなに頼りきって大丈夫なの?、とは思う。
DNSに負荷をかけすぎでは?
本来の目的外に利用してるのでは?
DNSの実装側や運用側ではテストとか大変になるのでは?
レコード長の問題とかもあるよね、SPFとかでは実際にそういう問題は時々発声してるみたいだし
ところでDNSってセキュリティ大丈夫なの?
そもそもDNSには近寄りたくないよね
そんなことを考えてしまう。
今時そんなにメールは使わないよ
25年前は電子メールとExcelが大事な仕事道具だったよ。
でも今もその2つをメインに使ってるような仕事ってあるのかしら?
もしそういう仕事をしてる人がいたら、今すぐ転職したほうが良いと思うんだ。
時代はDX(笑)だよね〜。
最近は、コミュニケーションはチャットで行なうのが普通だし、仕事で使うツールはほとんどウェブベース。
たまにメールが届かなかったり見落としたりしたとしても、そんなに困らないよね。
本当にメールでのやりとりが必要なときは、別のツールで、メール送りましたよ、と伝えるのはわりと普通。
昔FAXを送ったときに、FAX送ったので見てください、と電話してるような感じよね。
プライベートでも電子メールはそんなに使わないよ。
SNSやLINEなんかを使う。
最近プレーリーカードで名刺交換をする機会が多いんだけど、イケてる若者は名刺にメールアドレスなんてそもそも載せないよ。
そういえば、メールを捨ててチャットで仕事をしよう、みたいな発表をしたのは、もう10年前になるなあ。
自分が管理しているメーリングリストの状況
私も趣味関係のメーリングリスト等をいくつか管理している。
それはどう対応してるか、というと、実はまったく対応していない。
MTA: qmail
メーリングリストサーバ: fml
という、20年以上同じ仕組みで動かし続けている。
管理者も複数人いるので、今さら変更するのも面倒なんだ。
面倒以外の言い訳は上に書いた通りだ。
SPFレコードだけはDNSに登録してるけど、そもそも差出人の変更はしないので、それもあんまり意味はない。
ただもちろん、メールが届かない、ということはかなり昔から発生してる。
たとえば、Gmailでは、自分が送信したメールと同じメッセージIDのメールは、配信されても自分の受信箱に入らないんだ。
Gmailは、そういうものだよ、みたいな説明をしている。
現状送られてくるメールを見てみるとと、行儀が悪いメールクライアントはそれなりに多くて、SPFの対応すらできていないメールもわりと届く。
iPhone Mailというメールクライアントなんかだと、自分のとこのメールサーバを使わずに、いきなりメーリングリストサーバにメールを投げつけてくる。
SPF対応とかそもそも考えられてない実装だよなあ。
メールが届かないことも多くなってきたので、最近はメーリングリストに代わるコミュニケーション手段として、Slack等を立てて、そっちに誘導するようにしている。
そしてメーリングリストへ届いたメールはSlackのチャンネルに転送している。
Zapierとかを使えば簡単に実装できる。
代替手段があるなら、メールはもう捨てちゃって良いんじゃない?、と個人的には思っている。
メールの代替手段って何?
とはいえ、SNSやチャットツールが完全にメールの代わりになるか、というと多分まだそんなことはない。
外の組織とやりとりをするときに、共通のツールがなくて、仕方なくメールでやりとりをするようなこともあるよね。
7月のJANOG54で、メーリングリストの代わりにどんなツールを使えば良いのか、みたいなネタを、ももいさんと水越さんがセッションとか野良BoFをやるかもしれない。
聞きに行くと良いと思うよ(ステマ)
とはいえ、メールはインターネットが生まれる以前からも使われていて、沢山の人に愛されている。
なんとなく今後もなくならないんじゃないかな。
メールを支えるSMTPやIP等の技術が使われなくなったとしても、名前@組織、みたいなメール表記はずっと使われ続けるのかもしれない。
まあそのへんの与太話も7月に奈良でできるといいな(ステマ)
余談
メールとかメーリングリストに代わるツールとして、分散SNSや、分散SNSを支える技術はわりと有力な選択肢になると個人的には思ってるんだよね。
でも、分散SNSの話をすると、私とよこたんはなぜかとってもツライ気持ちになってしまうので、触れちゃ駄目だぞ。
なんとなく7年前の資料を貼っておくけど。