envelope-FROM を書き換える事により、「SPF判定」を「OK」にしたいと思います。
転送時の心配
[SPF」が整備されているメールサーバーから
@yachoo.co.jp宛てなどにメールをすると、
SPFが、OKとなるが、
転送設定をしていた場合、「SPF」は、OKとはならない。
第三者のメールアドレス test1@example.com
↓
転送設定済みメールアドレス test2@example.net
↓
@yahoo.co.jpに転送
この場合、SPFは、「pass」とは、ならず、、
Received-SPF: softfail
となる。
これを「Envelope From」を、Postfixのサーバーで、変更することで、解決したいと思います。
Envelope fromとは
Envelope とは、「封書」のこと。
このように、封書と、中身の宛先とが別々で管理されている。
と考えると比較的、わかりやすいかと・・・
転送時もSPFをOKにして迷惑メールには、ならないように・・・
「転送をした場合でも、SPFが、「pass」となるようにしたい」
ここで、
Envelope fromを書き換える。
つまり、転送した場合でも、メールは、
転送したメールサーバーが、送信した事にする。
実際のメールは、転送元の第三者のメールアドレスとなる。
受け取った人には、見た目は、何も影響がない。
Postfix で、Envelope fromを書き換える
# vi /etc/postfix/main.cf sender_canonical_classes = envelope_sender sender_canonical_maps = regexp:/etc/postfix/sender_canonical.regexp local_header_rewrite_clients = static:all
1行目
sender_canonical_classes = envelope_sender
のところの左側の指定は、
canonical_classes sender_canonical_classes recipient_canonical_classes
の3つが指定できる。
1行目
sender_canonical_classes = envelope_sender
の右側は、書き換え対象を指定する。
envelope_sender ... 封書の差出人(実際の差出人) envelope_recipient ... 封書の宛先(実際の宛先) header_sender ... 中身の差出人 (見た目の差出人)と、envelopeの方も対象 header_recipient ... 中身の宛先 (見た目の宛先)と、envelopeの方も対象
2行目
sender_canonical_maps = regexp:/etc/postfix/sender_canonical.regexp
の左側、「sender_canonical_maps」は、変更ファイル形式を指定する。
canonical_maps sender_canonical_maps recipient_canonical_maps
が指定できる。
canonical_maps
は、送信/受信の両方のルールを指定。
sender_canonical_maps
は、送信のルールファイルを指定。
recipient_canonical_maps
は、受信のルールファイルを指定。
# vi /etc/postfix/sender_canonical.regexp /(.*+)@(.+)$/ $1@(自サーバードメイン)
上記のように設定をすると、
test1@example.com
から送られてきたメールは
自サーバーで、
test1@example.com
に書き換えられて、@yahooo.co.jp宛てに届きます。
@yahoo.co.jp側では、「SPF」がOKとなります。
envelope-FROM 書き換え、宛先不明の場合・・・
実際には、宛先のメールアドレスが、envelope-FROM になって欲しい。
もしくは、「Return-Path」だけは、変更しないようにしたい・・・
つまり、転送先が、宛先不明だった場合、「宛先不明」を通知するメールアドレス(Return-Path)が、「届く」ところがいい。
試行錯誤中・・・