メモ > サーバ > 各論: ネットワーク > メールを送信する際、迷惑メール扱いされないための設定(送信元メールアドレス)
メールを送信する際、迷惑メール扱いされないための設定(送信元メールアドレス)
■「エンベロープFrom」と「ヘッダーFrom」
「エンベロープFrom」と「ヘッダFrom」の違いとは? - ベアメールブログ
https://baremail.jp/blog/2021/05/25/1377/
エンベロープTo ... 郵便では封筒に書かれる宛先にあたるもの。メールでは送信先のアドレスにあたる。
このアドレスが正しければ、メールを送信できる。
エンベロープFrom ... 郵便では封筒に書かれる差出人にあたるもの。メールでは実際に送信した差出人(送信元)にあたる。
メールヘッダでは「Return-Path」として記録される。
ヘッダTo ... 郵便では便箋に書かれる宛先にあたるもの。メールではメールソフト上で確認できる宛先にあたる。
BCCで送信する場合、ここに設定したメールアドレスが削除される。
ヘッダFrom ... 郵便では便箋に書かれる差出人にあたるもの。メールではメールソフト上で表示される差出人(Fromアドレス)にあたる。
容易に詐称できる。
■送信元メールアドレスの指定
メールを送信するプログラムを書く際、送信元のメールアドレスを指定できる。
送信元のメールアドレスは「ヘッダーFrom」とも呼ばれ、送信者が自由に変更できる。
例えばPHPの場合はmail関数でメールを送信できるが、第4引数でメールヘッダの内容を指定でき、ここでメールの送信元アドレスを指定できる。
具体的には以下のように記述すると、from@example.com がメールの送信元になる。
mail('to@example.com', '題名', 'メール本文', 'From: from@example.com');
さらに、PHPの場合はmail関数の第5引数でリターンパス(Return-Path)を指定できる。
リターンパスは「エンベロープFrom」とも呼ばれ、メッセージが何らかのトラブルにより届けられなかった場合の、エラーの通知先として利用される。
(それ以外に、Bccによるメール送信を可能にしている仕組みでもある。)
具体的には以下のように記述すると、system@example.com がリターンパスになる。
mail('to@example.com', '題名', 'メール本文', 'From: from@example.com', '-f system@example.com');
「エンベロープFrom」は「ヘッダーFrom」を指定しても上書きされない。
またリターンパスを指定しなかった場合「実行ユーザ名@ホスト名」となるが、サーバが複数台構成の場合に問題になることがある。
具体的には送信元が apache@web1.refirio.net や apache@web2.refirio.net となった場合、
送信元サーバが web1.refirio.net や web2.refirio.net とみなされるため、上で設定した refirio.net のDNS設定内容は参照されない。
「エンベロープFrom」と「ヘッダFrom」の違いとは? - ベアメールブログ
https://baremail.jp/blog/2021/05/25/1377/
sendmail コマンドによるメール発信 - Postfix Advent Calendar 2014
https://fumiyas.github.io/2014/12/13/sendmail.postfix-advent-calendar.html
PHP mail関数でenvelope-fromを指定する方法
http://kaworu.jpn.org/kaworu/2008-02-17-2.php
このようなことを避けるため、「-f auto@refirio.net」のようにリターンパスを常に指定しておくのが無難。
そうでなければ以下のように、それぞれのホストに対して個別に設定を行う必要がある。
-----------------------------------------------------
Name Type Value
-----------------------------------------------------
web1.refirio.net SPF "v=spf1 ip4:203.0.113.1 -all"
web1.refirio.net TXT "v=spf1 ip4:203.0.113.1 -all"
web2.refirio.net SPF "v=spf1 ip4:203.0.113.2 -all"
web2.refirio.net TXT "v=spf1 ip4:203.0.113.2 -all"
-----------------------------------------------------
■送信元メールアドレスの詐称
送信元メールアドレスで異なるサーバのメールアドレスを指定している場合、なりすましメールと判定されて届きづらくなる可能性がある。
「ヘッダーFrom」だけでなく「エンベロープFrom」もSPFやDKIMなどのチェック対象となる。
また「ヘッダーFrom」や「エンベロープFrom」い送信元サーバと異なるメールアドレスが指定されている場合、
信頼性の低い送信者とみなされることがある。
よって原則、「エンベロープFrom」と「ヘッダーFrom」は送信サーバのメールアドレスを指定しておくのが無難。
2024年2月以降Gmailに送信するための新要件とは? 新しい送信者ガイドラインへの対応策 - ベアメールブログ
https://baremail.jp/blog/2023/12/18/3640/