---
title: 今さらDKIM/DMARC対応のメーリングリストを作った話
tags:  #tdnog #メール #メーリングリスト #インターネット  
author: [Ken Sasaki](https://www.docswell.com/user/sasakipochi)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/GJ89ZN5RED.jpg?width=480
description: TDNOG12.0 Meetingでの発表資料 オーケストラのメーリングリストを26年ぶりに作り直した話 DKIM/DMARC対応のツラミ等を吐き出してみた
published: November 13, 25
canonical: https://www.docswell.com/s/sasakipochi/ZX67D2-2025-11-13-093126
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/GJ89ZN5RED.jpg)

今さら
DKIM/DMARC対応の
メーリングリストを作った話
2025-11-13
TDNOG 12.0 Meeing (秋田) 資料
佐々木 健


# Page. 2

![Page Image](https://bcdn.docswell.com/page/LJLWDPY27R.jpg)

今日のアジェンダ
●
会場への質問
●
自己紹介
●
なぜいまさらDKIM/DMARC対応のMLを作ることに
なったのか
●
作り方
●
作った感想
●
もっと他の方法はないの？


# Page. 3

![Page Image](https://bcdn.docswell.com/page/47M9P4N9JW.jpg)

会場への質問(アイスブレイク)
●
秋田の温泉に行ったことある人
●
メーリングリスト使ってる人
– とても沢山使ってる人
●
メーリングリストを管理している人
●
メールサーバを自前で立ててる人
– DKIM/DMARC対応してる人
●
ChatGPT等のLLMを活用してる人
– 課金してる人


# Page. 4

![Page Image](https://bcdn.docswell.com/page/P7RG1WD9J9.jpg)

私とTDNOG
●
福島県郡山市出身、いちおう東北人
●
今住んでるのは東京
●
地方はご飯がおいしい、良い温泉も沢山
●
TDNOGとQUNOGに良く参加してる
●
TDNOGは6(帯広)から毎回参加している


# Page. 5

![Page Image](https://bcdn.docswell.com/page/PJXXYP13JX.jpg)

私と秋田県
●
高校の吹奏楽コンクール東北大会は秋田で開催
–
●
秋田で開催されたJANOG11でプログラム委員
–
●
●
秋田は美人が多い!!、秋田大学に一瞬行きたくなったけど理系の学
部は鉱山学部しかなかった、当時は理学部志望だった
2003年1月
数年前に関わっていた南の国のプロジェクトでの機器キッティ
ング場所がなぜか秋田だった
秋田の温泉にはプライベートで頻繁に通っている
–
乳頭温泉とかとても好き
–
昨日は玉川温泉に宿泊


# Page. 6

![Page Image](https://bcdn.docswell.com/page/3JKW3D2NJD.jpg)

私とオーケストラ
●
I can play the Violin.
– またまたご冗談を、と良く言われるけど、ホントだって
●
●
●
主にオーケストラで弾いている
ショスタコーヴィチばかり演奏する治安悪めの団体
の後ろのほうでこっそり弾いている
団体内の連絡用にメーリングリストを使っている
– 1999年に自宅サーバで立ちあげて、惰性で管理中
– 全体用、パート用、団内業務用、趣味用


# Page. 7

![Page Image](https://bcdn.docswell.com/page/LE31GR4Z75.jpg)

ここ数年の悩み
●
メーリングリストへのメールが届かないという声が
増えた
– スパム判定されたり
●
GMailやMicrosoft等の大手のスパム判定が厳しく
なった
– SPF/DKIM/DMARCに対応したメールじゃないとちゃん
と受けとってくれない
– 神奈川の高校入試で問題になったりしたよね


# Page. 8

![Page Image](https://bcdn.docswell.com/page/8EDX1YQ4JG.jpg)

noteにも書いた
●
https://note.com/sasakipochi/n/n29f7d1090e
f0


# Page. 9

![Page Image](https://bcdn.docswell.com/page/V7PPQ6LV78.jpg)

SPF/DKIM/DMARCとは
技術名
目的
検証対象
SPF（Sender
Policy
Framework）
送信元サーバが正 Envelope From
しいか確認する
（エンベロープ
From）
設定場所
結果の意味
ドメインのDNS
指定以外のサーバ
TXTレコード（例: から送られたメー
example.jp）
ルは「SPF=fail」
DKIM（DomainKe メールが改ざんさ メール本文＋一部 ドメインのDNS
署名が正しければ
ys Identified
れていないか確認 ヘッダ（From,
TXTレコード（例: 「DKIM=pass」、
Mail）
する
Subjectなど）
mail._domainkey. 改ざんされていれ
example.jp）
ば「DKIM=fail」
DMARC（Domain SPFとDKIMの結果 SPF・DKIMの検証 ドメインのDNS
認証失敗時に「拒
-based Message をまとめて受信側 結果とFromヘッダ TXTレコード（例: 否」「隔離」「許
Authentication, の対応を指定する のドメイン（整合 _dmarc.example.j 可」などの方針を
Reporting &amp;
性）
p）
伝える
Conformance）
（p=reject/
quarantine/
none）


# Page. 10

![Page Image](https://bcdn.docswell.com/page/2JV253QRJQ.jpg)

古典的なメーリングリストの問題
●
古典なメーリングリストではDKIMチェックに失敗
する


# Page. 11

![Page Image](https://bcdn.docswell.com/page/5EGR63W6JL.jpg)

どうすれば良いのか？
●
メーリングリストサーバでちゃんと対応させる


# Page. 12

![Page Image](https://bcdn.docswell.com/page/4JQV45327P.jpg)

他の方法
●
メーリングリストなんてオワコンな仕組みを使うのはやめ
て、Slackとか使おうよ!!
–
一般の人にとってはハードルがとても高い
–
メールやExcelを捨ててちゃんとしたツールを使おうよ、という話
を10年ぐらい前にしたなあ
●
–
●
●
2014年のJANOG34だった
でも世の中はわりとゆっくりしているよ
メーリングリストのメールをSlackに流したりしてみたけ
ど、いまいち効果はなかった
LINEとかFacebookじゃダメなの？
–
そもそもアカウント持ってない人もいる


# Page. 13

![Page Image](https://bcdn.docswell.com/page/K74MQ91PJ1.jpg)

仕方がないので頑張った
●
●
●
●
老若男女全員使えるツールは今だにメール
やらなきゃなあ、とは10年以上ずっと思ってたんだ
けどわりと面倒
SMTP、メーリングリストとかそのうち死ぬじゃ
ろ、と思ってたけど、全然死なない
仕方ないので対応してみたよ


# Page. 14

![Page Image](https://bcdn.docswell.com/page/LJ18PKGXEG.jpg)

今までのシステム
●
OS: FreeBSD
–
●
MTA: qmail
–
●
運用は楽、バージョンを上げても設定ファイルの互換性は高い
とってもシンプル
メーリングリストサーバ: fml
–
Perlで書かれた日本製
–
運用はコマンドメール
とても軽くて良いんだけど、ちょっと古めかしいよねえ


# Page. 15

![Page Image](https://bcdn.docswell.com/page/GJWZ2DKKJ2.jpg)

新環境選定
●
もはやFreeBSDを触れるのは老人しかいない
●
まあOSはUbuntuでいいよなあ
– 生活環境は2008年頃からずっとUbuntu
●
Dockerで見通し良くしとく？
– 1つの設定ファイルを見ればだいたい把握できるのは楽
– 作ったときにはどういうシステムかわかっていても、1ヶ
月後には良くわからなくなる


# Page. 16

![Page Image](https://bcdn.docswell.com/page/4EZ1DGZN73.jpg)

新Tool選定
●
Postfix と Mailman3 とかでやれば良いんだろう
けど、さすがに今はもっとナウいソフトウェアがあ
るよね？？？
●
ChatGPTと会話しつつ調査
●
なかった!!!
– 実績があって今後もちゃんとメンテされそうという視点
– Postfixは複雑化しているメール処理も、Milter等でそ
こそこ上手く対応できる


# Page. 17

![Page Image](https://bcdn.docswell.com/page/Y76L1YZ9JV.jpg)

WebUIも欲しい
●
Mailman3はちゃんとしたWebUIもあるので、それ
も使えたほうが良いよなあ
●
NginxをDockerで立てて、、、
●
CertbotでTLS証明書を取得して、、、


# Page. 18

![Page Image](https://bcdn.docswell.com/page/G7514GWDE4.jpg)

ChatGPTとひたすら会話
●
これこれこういうふうにしたいんだけど、dockercomose.yml書いて、と頼んだり
– 微妙に惜しいのが出てくるので、ひたすら修正
●
サービス間の通信や、ファイル共有がうまくいかな
いことが多発
– エラーを貼ると、こうすれば良いよ、と教えてくれるけ
ど、それも微妙に惜しかったり
●
わからない単語が出てきてそれについて聞いてると
時間が溶けていく


# Page. 19

![Page Image](https://bcdn.docswell.com/page/9J21VY2M7R.jpg)

MTA/Milter (配送・署名)
●
Postfix（受信/送信MTA）
– 役割: 受信・再配送、milter接続、Submission運用
●
OpenDKIM（署名）
– 役割: 送信直前にDKIM署名（d=ml.example.jp）


# Page. 20

![Page Image](https://bcdn.docswell.com/page/DEYZ3GYP7M.jpg)

メーリングリスト (配信制御)
●
Mailman Core（キューランナー）
–
●
●
役割: 投稿受付・購読者判定（Header From が購読者DB
にあるか）、配信キュー処理、From-munging 等
Postfix ⇄ Mailman 受け渡し
–
IN: Postfix → Mailman Core（LMTP）
–
OUT: Mailman Core → Postfix（ローカルSMTP）
方針: DMARC強化ドメイン対策として From-mungingを有効
化 → その後 OpenDKIM で再署名


# Page. 21

![Page Image](https://bcdn.docswell.com/page/VJN3VGPMJ8.jpg)

WebUI (運用・管理・アーカイブ)
●
●
●
Mailman Web（Django）
–
Postorius: リスト管理UI（作成/購読者/ポリシー設定、
DMARC対策設定のGUI）
–
HyperKitty: アーカイブ/スレッド閲覧UI
データベース/キャッシュ
–
PostgreSQL
–
Redis


# Page. 22

![Page Image](https://bcdn.docswell.com/page/YE996W3WE3.jpg)

リバースプロキシ/TLS
●
nginx（リバースプロキシ）
–
●
役割: mailman-web へのプロキシ、/static 配
信、HSTS/HTTP→HTTPSリダイレクト、管理UIの公開
Certbot（Let’s Encrypt）
–
役割: TLS証明書の取得/自動更新（cronやsystemd
timerで定期更新）


# Page. 23

![Page Image](https://bcdn.docswell.com/page/GE89ZNMR7D.jpg)

メーリングリスト配送フロー全体像


# Page. 24

![Page Image](https://bcdn.docswell.com/page/LELWDP32JR.jpg)



# Page. 25

![Page Image](https://bcdn.docswell.com/page/4JM9P4D9EW.jpg)



# Page. 26

![Page Image](https://bcdn.docswell.com/page/PJRG1W49E9.jpg)



# Page. 27

![Page Image](https://bcdn.docswell.com/page/PEXXYP23EX.jpg)



# Page. 28

![Page Image](https://bcdn.docswell.com/page/3EKW3DMNED.jpg)



# Page. 29

![Page Image](https://bcdn.docswell.com/page/L731GRYZJ5.jpg)

とても大変、、、
●
前は2つのソフトウェアだけで良かったのに、、、
●
ツラミは共有できたかしら？？？
●
前のスライドの配送フローはメール部分だけ
– Web部分も同じように連携の難しさがある
●
Dockerを使うとそれなりに大変
– 通信やファイル共有で考えることも増える
– うまくいかないことも増える


# Page. 30

![Page Image](https://bcdn.docswell.com/page/87DX1Y54EG.jpg)

これでも手抜きしている
●
メーリングリストサーバでメール受信時のチェック
はしていない
– ほんとは、チェックしたほうが良い必要
– 受信時にSPAM対策とか、Virus対策とかもしとくほうが
良い
– ARC(Authenticated Received Chain)でチェックした情
報を付与したほうが良い
●
Dockerを使うと面倒だったものは、素のdeaemon
として動かしている


# Page. 31

![Page Image](https://bcdn.docswell.com/page/VJPPQ6GVJ8.jpg)

ユーザからの反響
●
新しいメーリングリストを作ったよ
– そこそこお疲れ様の声
●
全員連絡用のメーリングリストは移行したよ
– そこそこ喜びの声
– 流量がちょっと増える
●
パート毎とか団内業務用のメーリングリストも移行
する？
– あ、それは今は別の方法で連絡してるから大丈夫!!


# Page. 32

![Page Image](https://bcdn.docswell.com/page/2EV2536REQ.jpg)

心の声(怒りの叫び)
●
SMTPとか早く滅びれば良い!!!
–
●
メールに変わるちゃんとしたコミュニケーションツールない
のー？？
–
●
もっと信頼性が高いプロトコルないの？
チャットツールに相互接続性があれば良いんじゃない？
そもそもDKIM、DMARCってスジが悪くない？
–
DNSに無茶させすぎでしょ
–
S/MIMEとか、メールの中身が検証可能にするのが本当は良いん
じゃないの？
–
信頼性の担保にVC/DIDとか新しい技術使えないの？


# Page. 33

![Page Image](https://bcdn.docswell.com/page/57GR63N6EL.jpg)

ChatGPTに怒りをぶつけた
●
まだまだ決定版になりそうな技術はない
–
●
DKIM/DMARCはわりと現実的な妥協点
–
●
S/MIMEとかは一般人にはむずかしいよ
信頼性を担保するのはそんなに簡単じゃない
–
●
実験的な実装はわりといろいろあるが、、、
ショートメールとかLINEとかSNSとかを使ってもSPAMはなくならない
つらいこと(Pain Point)があれば、それを解決する方法は出てくるはずなんだ
けどなあ、、、、
●
アプリとして実装すれば良いと思うんだけど、、、
●
だれか頑張ってーーー


# Page. 34

![Page Image](https://bcdn.docswell.com/page/4EQV45Q2JP.jpg)

(余談)メールはなくならない？
●
●
●
●
●
最初の電子メールが送受信されたのは1965年
ARPANET(インターネットの原型)の運用開始は
1969年
UNIXの誕生は1970年
name@host というような形式はSMTPが滅んで
も、DNSが滅んでも残るんじゃないかなあ？？
郵便みたいな感じ？？


# Page. 35

![Page Image](https://bcdn.docswell.com/page/KJ4MQ9NPE1.jpg)

DMARC Reportについて
●
DMARCを登録すると、そのドメインのメールの状況が大
手のメール事業者から送られてくる
–
ほとんどがGmailとMicrosoft
●
●
ユーザが多いんだろうなあ
XMLファイルのデータを圧縮してメールに添付して送られ
てくる
–
確認がとても面倒
–
一生懸命見てもそんなに面白くない
●
DMARC Reportって必要なの？、楽に見る方法ない
の？、とかChatGPTに聞きはじめると、沼に落ちる
–
GMailの最近の動き(POP3の廃止)とかの意図とかが透けてきた
り


# Page. 36

![Page Image](https://bcdn.docswell.com/page/LE18PK5X7G.jpg)

謝辞
●
ChatGPTありがとー
●
おかげで移行もできた
●
怒りもぶつけることができた
– AIの逆襲とかあったらほんとやだ
●
スライドもだいぶ作ってくれた
– シーケンス図とか表とか箇条書きとかはChatGPTが書
いてくれた
– Mermaid形式で図を書きだしてもらうとわりと便利


# Page. 37

![Page Image](https://bcdn.docswell.com/page/GEWZ2D5KE2.jpg)

おしまい
続きは懇親会で


