「エンベロープFrom」と「ヘッダFrom」の違いとは?
はじめに
メールソフト上でメールを開いたときに表示される「差出人(From)」を、そのまま「送信元」として理解している方が少なくありません。メールソフトでメール作成画面を開くと、自分のアドレスが自動的に「差出人(From)」に入力されるため、こうした理解が広まったのだと考えられます。確かに間違いではないのですが、この「差出人(From)」は必ずしも実際の送信元と一致しているとは限らないのです。
ここではメールに存在する2種類の差出人、「エンベロープFrom」と「ヘッダFrom」について詳しく解説します。
「エンベロープ」と「ヘッダ」とは
まず、メールソフト上で表示される「差出人」がイコール「送信元」とは限らないというのはどういうことなのか、メール送信の仕組みから解説します。
メール送信の仕組み
メール送信を郵便になぞらえて考えるとわかりやすいです。手紙は便箋が封筒に入った状態で配達されるように、普段メールを利用していて意識することはないと思いますが、実はメールにもエンベロープ(=封筒)というものが存在しています。
手紙を郵送するとき、配達員はあくまでも封筒に記載された情報をもとに配送を行いますよね。配送時にわざわざ封筒を開けて手紙の内容までは参照しません。同じようにメール送信時には、送信プロトコルであるSMTP(配達員)が、エンベロープ情報(=封筒に記載された宛先、差出人などの情報)のみを使ってメールの配送を行います。メール本文のヘッダ情報(=便箋に書かれた宛先・差出人)はチェックされないのです。
また、仮にメールが送信できなかった場合は、エンベローブ情報内のエンベロープFrom(=封筒に記載された差出人)にエラーメールを返します。郵便配達員が、宛先不明の手紙を封筒記載の差出人に返すときと同じ流れです。
○ エンベロープTo(Envelope-To)
郵便では封筒に書かれる宛先にあたるものです。メールでは送信先のアドレスにあたります。メールの配送にあたっては、この宛先が正しく存在してさえいれば送信することができます。
○ エンベロープFrom(Envelope-From)
郵便では封筒に書かれる差出人にあたるものです。メールでは実際に送信した差出人(送信元)にあたります。エンベロープFromは、配送が問題なく完了した場合はとくに参照されることはありません。何らかの原因でメールが宛先に届かなかった場合に、エンベロープFromのアドレス宛にエラーが戻ります。
○ ヘッダTo(Header-To)
郵便では便箋に書かれる宛先にあたるものです。メールではメールソフト上で確認できる宛先にあたります。「To」および「CC」の欄に入るアドレスです。
○ ヘッダFrom(Header-From)
郵便では便箋に書かれる差出人にあたるものです。メールではメールソフト上で表示される差出人(Fromアドレス)にあたります。
受信メールボックス上で表示されているため、私たちが「差出人」だと思っているのはこのヘッダFromに記載されているアドレスです。しかし、ヘッダFromはメールの仕様上送信者が自由に記載できるため、実際の送信者とは異なる情報を表示させることも可能です。
エンベロープとヘッダが分かれているメリット・デメリット
そもそも何故エンベロープとヘッダという2つのTo/Fromアドレスが存在しているのでしょうか? ここではエンベロープとヘッダが分かれていることによるメリットとデメリットを解説します。
メリット①:BCC機能が使える
ヘッダToとエンベロープToが分かれていることで、BCC機能が利用できます。
BCCの仕組みは、BCCで送信する宛先をエンベロープToのみに設定し、ヘッダToには設定しないことで、受信者に他の宛先を見せずに送信することができるのです。
メリット②:転送や代理送信など、柔軟なメール配信が可能になる
ヘッダFromとエンベロープFromが分かれていることで、メールを転送したり、外部のメール送信サービスなどを利用したりといった柔軟なメール配信が可能になります。
例えば、ECサイトAさんが顧客に対して「セールのお知らせ」というメルマガを送る際、大量の顧客に一斉送信するために自社のメールサーバではなく外部のメルマガ配信サービスを利用するとします。この時、実際の送信元はメルマガ配信サービスになるわけですが、メルマガ配信サービスが差出人のメルマガが送られてきても受信者は混乱してしまいます。しかし、ヘッダFromとエンベロープFromが分かれていることによって、顧客に見せたい差出人をヘッダFromに設定してわかりやすくすることができるのです。
デメリット:なりすまし
ヘッダFromとエンベロープFromの情報が異なっていてもメールを送ることができる仕組みを悪用したのが「なりすましメール」です。
前述したように、メールの配送処理にメール本文のヘッダFromの情報は使用されないため、ヘッダFromを偽装し送信してしまえば、簡単に送信元を偽ることができるわけです。
なりすましメールは、標的型攻撃やフィッシング詐欺などに利用されており、大きな問題となっています。なりすましメールの仕組みと、対策としての「送信ドメイン認証」については以下の記事で詳しく解説しています。
参考:なりすましメール対策「SPF」「DKIM」の具体的な確認方法
エンベロープ From の確認方法
では、エンベロープFromはどのような方法で確認できるのでしょうか。実際に受信したメールの中を探してみても、「エンベロープFromがどこにもない」ことに気が付くでしょう。また、「自分が送信しているメールのエンベロープFromがどこになっているか知りたい」という場合もあるでしょう。ここではエンベロープFromが設定される仕組みと、確認方法を紹介します。
エンベロープの情報はどこで設定されるのか
私たちがメールを作成時に設定する宛先・差出人の情報は、ヘッダTo・ヘッダFromとして設定されます。ですが、それ以外に別途エンベロープTo・エンベロープFromを設定するようなことはありませんよね。では、エンベロープ情報はどこで設定されているのかというと、メールの転送を担うMTA(Message Transfer Agent)が、メールサーバ上で自動的に付加しているのです。そのため、通常メール作成者が勝手にエンベロープ情報を設定できないようになっています。
メール作成時にヘッダに設定された情報をそのままエンベロープにコピーするというのが一般的な動きですが、エンベロープにどのように情報を記載するかはメールサーバのプログラム次第なので、自分が送信しているメールサーバがどこにあり、どのような設定になっているのか調べる必要があります。
手っ取り早い方法としては、実際にメールを送信し、受信者に確認してもらうという手があります。
エンベロープFrom=Return-Path
受信したメールからエンベロープFromを調べる場合は、メールヘッダから「Return-Path」を確認してください。SMTPを用いて、メールが転送されている間はエンベロープFromの情報も一緒に転送されますが、宛先メールサーバへメール配送が完了した段階で「エンベロープFrom」が破棄され、その内容が「Return-Path」へと変換されてメールヘッダ内に記載されます。つまり、エンベロープFromを知りたい場合は「Return-Path」に記載されたメールアドレスを調べれば良いのです。
Return-Pathと混同されやすいものとして「Reply-To」がありますが、これはメール受信者がそのメールに対し「返信」をする場合に返信先となるアドレスのことです。Reply-Toも自由に設定することができますが、一般的にはヘッダFromに設定した差出人とイコールのことが多いでしょう。
メールソフトでの確認方法
それでは、メジャーなメールソフトでの具体的なエンベロープFrom(=Return-Path)の確認方法を記載しますので、参考にしてみてください。
● Gmail
1. 受信したメールをクリック
2. メール本文右上の3点マークから「メッセージのソースを表示」をクリック
3. 「元のメッセージ」という画面を下にスクロールし「Return-Path」を確認する
● Outlook(Windows版)
1. 受信メール一覧から確認したいメールを選択してダブルクリック
2. メール本文がポップアップで表示されたら左上の「ファイル」をクリック
3. 「プロパティ」をクリック
4. プロパティ画面下部の「メールヘッダ」枠内に「Return-Path」があることを確認
参考:Outlook でインターネット メッセージヘッダーを表示する
まとめ
本稿では、エンベロープFromとヘッダFromの違い、具体的な確認方法などを解説してきました。Eメールを正しく運用するためには、これらメール送信時の仕組みを理解し、メール送る側、受け取る側の双方が安心できる環境が必要です。自分の送信したメールが届かないといったお悩みなどがあれば、お気軽にベアメールまでご相談ください。
The post 「エンベロープFrom」と「ヘッダFrom」の違いとは? first appeared on ベアメールブログ.