Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
奥が深いメールのシステム / The depth of Email system
Search
linyows
June 26, 2024
Programming
4
640
奥が深いメールのシステム / The depth of Email system
さくらインターネット Labラジ 2024-06-26 での資料
linyows
June 26, 2024
Tweet
Share
More Decks by linyows
See All by linyows
Protocol Buffersの型を超えて拡張性を得る / Beyond Protocol Buffers Types Achieving Extensibility
linyows
0
120
研究開発と実装OSSと プロダクトの好循環 / A virtuous cycle of research and development implementation OSS and products
linyows
1
570
コードジェネレーターで 効率的な開発をする / Efficient development with code generators
linyows
0
350
研究を支える拡張性の高い ワークフローツールの提案 / Proposal of highly expandable workflow tools to support research
linyows
0
480
非コンテナ環境において宣言的Deploymentを手軽に実現する / Declarative deployment in non-container environments
linyows
0
280
メール送信サーバの集約における透過型SMTP プロキシの定量評価 / Quantitative Evaluation of Transparent SMTP Proxy in Email Sending Server Aggregation
linyows
0
1k
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
520
研究の再現性を高める 仕組みをGoでつくる / Creating a system to improve the reproducibility of research using go
linyows
1
270
IaCにおけるテスト考察 / Tests in IaC
linyows
2
780
Other Decks in Programming
See All in Programming
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
190
Go言語の特性を活かした公式MCP SDKの設計
hond0413
1
230
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
220
そのpreloadは必要?見過ごされたpreloadが技術的負債として爆発した日
mugitti9
2
3.3k
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
2
810
理論と実務のギャップを超える
eycjur
0
130
Six and a half ridiculous things to do with Quarkus
hollycummins
0
160
NixOS + Kubernetesで構築する自宅サーバーのすべて
ichi_h3
0
600
クラシルを支える技術と組織
rakutek
0
200
kiroとCodexで最高のSpec駆動開発を!!数時間で web3ネイティブなミニゲームを作ってみたよ!
mashharuki
0
120
Go Conference 2025: Goで体感するMultipath TCP ― Go 1.24 時代の MPTCP Listener を理解する
takehaya
9
1.6k
「ちょっと古いから」って避けてた技術書、今だからこそ読もう
mottyzzz
10
6.6k
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
232
18k
Docker and Python
trallard
46
3.6k
How to Think Like a Performance Engineer
csswizardry
27
2k
Music & Morning Musume
bryan
46
6.8k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.7k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Documentation Writing (for coders)
carmenintech
75
5k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.3k
Transcript
@2024-06-26 さくらインターネット Labラジ 奥が深いメールのシステム
小 田 知央 / Tomohisa Oda @linyows • 福岡市在住 •
Fukuoka.go 主催 • 趣味は筋トレとテニス • OSS: Octopass, Dewy, Rotion, Warp… • https://tomohisaoda.com • https://x.com/linyows
プライベートのメールアドレスどうしてる? • Gmail, Yahooメール, あるいはOutlookを使っている • メールホスティングを利 用 している •
自 分でメールサーバーをたてて管理している プライベートだと、おそらくSaaSを無料の範囲で使っている 人 がほとんどでは ないでしょうか
InstagramやLineがある中でまだメールなの? • プラットフォーム依存のメッセージングツールは多くある • 標準化され、名前で送れ、ファイル添付可能なメッセージングツールで普及 しているのはメールのみ • Webサービスの認証をメールに依存していたり(パスワード再設定なども) • ほかにも、Webサービスからの通知や案内、E-commerceの取引内容など
• インターネットの重要なインフラの 一 つ
メールサーバが難しいのはなぜか? • 送信受信はSMTP、メールのファイル操作はPOP/IMAP、複数のプロトコル から成り 立 つ • メールシステムは分散システムの 一 つ
• メールはネットワークが常時接続じゃない頃からありその時代で動くように 設計され進化してきた • 最近ようやく送信ドメイン認証が強制されセキュリティを強化するながれ
SMTPのおさらい SMTPコマンド 普段ここを 見 SMTPコマンド
SMTPのおさらい Envelope Mail 2つのFrom
送信ドメイン認証とは? • SPF, DKIM, DMARC を使って送信ドメインを認証する • 送信元が正しいこと、なりすまし改ざんされてないこと、それらがMail From と
一 致していること • SPF: Envelop FromのSPFレコードの 比 較 • DKIM: DKIMレコードで署名の復号 • DMARC: Header FromとEnvelop From、Header FromとDKIM署名元の 比 較
メールの転送時、SPFはどうなる? • 転送は第三者に送信するので、受信する第三者から 見 ると送信元はSPFのそれ とは異なるためFailする • そのため、Envelope Fromを元の情報をエンコードして書き換える仕組み、 Sender
Rewriting Scheme(SRS)をする
メールの転送時、DKIMはどうなる? • 転送はヘッダーや本 文 が変更される ため、受信する第三者から 見 ると送 信元の署名と異なるためFailする •
そのため、転送サーバでARC (Authenticated Received Chain)という仕組みで再署名し認 証の連鎖を 行 う
DMARCレポート問題 • DMARCでは、受信者が送信ドメイン認証に よって判断した結果をレポートとして受け 取れる • レポートはXMLファイルの添付で集計が 大 変
送信ドメイン認証の次は? • 平 文 前提のSMTPに経路暗号化(STARTTLS)を必須とするMTA-STSやDANE • Lookalikeドメイン(appie.com, applё.comのようなやつEnvelope From)によるフィッシングメール対策としてBIMI(Brand Indicators
for Message Identi fi cation)をつかったアイコン表 示 • ちなみにBIMIは認証局に登録が必要 コレ
メールの安全性はDNSでもたらされている • SPF, DKIM, DMARC, MTA-STS, DANE, BIMI… すべてDNSに依存している •
DNSが正しい前提になるのでDNSも対策が必要 • つまり、DNSSEC…(DANEはそもそもDNSSEC利 用 前提) • メールを安全にするためのメールサーバ構築はやるべきことが多い
メールを便利につかう 方 はどうだろうか? • オープンなメッセージングツールなので、メルマガを頻繁に配信されたり、記憶にない広告 メールがどんどんくる経験はあるだろう • 正直、スパムのせいでメールシステム全体の信頼性が低下していると思う • 日
々、メールインボックスからアーカイブする or 削除する をやり続けるのは体験として悪い • GmailやOutlookなどは アルゴリズムや機械学習を使って 自 動でメールを管理する Smart Inbox 機能が提供されている • そもそも、インボックスを 高 速に検索できるようにもしなければならず、優秀なメールクラ イアントの提供はハードルが 高 い
メールのシステムは奥が深い • 安全なメールサーバ構築は 大 変で、メールクライアントを便性にするにはハードルが 高 い • それら両 方
の提供はSaaSだけが実現できており、メールシェアの多くを占める • 最近のメールセキュリティ向上はSaaS主導で牽引している • SaaSといえどメールはビジネスや個 人 の 生 活を 支 えるインターネットインフラの 一 つ • Public Cloudと同様、メガクラウドのSaaSに頼っていると次第に技術 力 は失われ、 コントロールされ、ひいては国 力 低下にもつながると危惧している