電子メールのまとめ
はじめに
本日は「1(いい)」「2(ふ)」「3(み)」ということで、電子メールの日だそうです。
良い機会ですので、逃避してきた電子メールについてまとめてみます。

統計
まずは電子メールが世界でどれくらい送受信されているか調べてみました。
若干古い記事かもしれませんが、米IDCによると1日あたり970億通の電子メールが送信され、内400億通以上はスパムメールとのことです。
2通に1通はスパムメールという計算になります。
仕組み
電子メールの仕組みを例に例えて解説してみます。
- 手紙を書く(メールを書く)
- ポストに手紙を入れる(送信ボタンを押す)
- 郵便局(送信サーバー)が手紙を集め、相手の住所を見てどこに届けるか判断する。
- 相手の郵便局(受信サーバー)に手紙が届く。
- 相手が自分のポストから手紙を取り出す(メールアプリで読む)
実際には以下の流れになります。
- メールアプリ(GmailやOutlookなど)を使ってメッセージを書きます。
「宛先」「件名」「本文」を入力して「送信」ボタンを押します。 - メールは、まずインターネットを通じて「郵便局の役割をするサーバー」に送られます。このサーバーを「送信サーバー」(SMTPサーバー)と言います。
- 送信サーバーは、メールの宛先を見て「どの郵便局(受信サーバー)に送ればいいか」を判断します。
インターネット上でメールを届けるルートを見つけて、宛先のサーバーにメールを送ります。 - 宛先のメールサーバー(受信サーバー、POPやIMAPサーバー)が、あなたのメールを受け取ります。
- 宛先の人が、自分のメールアプリで「新しいメール」をチェックします。
メールアプリは受信サーバーからメールを取り出して、宛先の人が読めるように表示します。
電子メールは世界中を飛び回っています。そのため途中で誰かに見られてしまう可能性があります。そこで、ほとんどの場合「暗号化」されています。暗号化とは、メールの内容をパズルのように複雑にして、簡単に解読できないようにする技術です。


仕組みをもう少し詳しく・・・
技術者向けにもう少し詳しく書いてみます。
- ユーザーがメールクライアントを通じてメールを作成し、送信操作を行うと、SMTPを使って送信サーバー(MTA)にメールが渡されます。
SMTPは通常ポート25番(サブミッションポートなら587番)を使います。STARTTLSで暗号化を施すことが推奨されます。 - 送信元のMTAはDNSのMXレコードを引いて、宛先ドメインのメールサーバーを特定します。
MTA同士のやりとりもSMTPを介して行われ、場合によっては複数の中継サーバーを経由します。
メールのヘッダ情報には各サーバーの経路が記録され、トラブルシューティング時に利用されます。 - 宛先ドメインのMTAがメールを受信すると、ローカル配送エージェント(MDA)がメールボックスにメッセージを保存します。一般的なMDAにはprocmailやdovecotなどがあります。
ユーザーのMUAがPOP3(Post Office Protocol, 通常ポート110)またはIMAP(Internet Message Access Protocol, 通常ポート143または暗号化の993)を使ってサーバーにアクセスし、メールを取得します。
メールフォーマット
電子メールの構造はMIME(Multipurpose Internet Mail Extensions)に準拠しており、プレーンテキスト、HTML、添付ファイルなどのコンテンツタイプが定義されています。
メッセージヘッダには、From、To、Subject、Date、Message-IDなどのフィールドが含まれ、ルーティングやスパムフィルタリングに利用されます。
セキュリティ
メールは開発されてから、長らく平文(plain text)でやり取りされていましたし、現在も平文のやり取りを行なっていることがあります。
そのため、中間者攻撃を受けやすい特徴があります。
現在はTLS(Transport Layer Security)を用いた暗号化が一般的です。さらに最近問題となりがちな、gmailによるDKIM, SPF, DMARCといった技術も注目され、送信元ドメインの正当性確認やスパム対策が強化されています。
一方で、DKIMなどの対応が送信側で追いつかず、送信に失敗することも頻繁にあります。
メール受信時には、スパムフィルタリングが行われます。これはIPブラックリストやベイジアンフィルタリング、キーワードマッチングなどの技術を組み合わせて実施されます。
RBL(Realtime Blackhole List)は、悪意ある送信元をリアルタイムでブロックするために使用されることが多いです。
IMAPかPOPか
基本的にはIMAPで問題ないです。
POPはインターネット接続していない状態でもアクセスできるといったメリットはありますので、社内ネットワークなどによりアクセス制限を用いている場合は使用できるかもしれません。
POPはメールが自端末に保管されるため、セキュリティマネジメントが不十分であると、リスクが出てきます。
| IMAP | POP | |
| メールの保存場所 | サーバー上 | ユーザーのパソコン |
| 利用できる端末数 | 複数の端末で利用可能 | 1つの端末で利用する |
| メリット | 複数の端末で同じメールにアクセスできる | インターネット接続していない状態でもメールにアクセスできる |
終わりに
電子メールはインターネット創世記からある仕組みです。そのため、本文の内容が暗号化せずに送信が可能です。セキュリティリスクには十分留意してサービスを使っていきたいですね。

