【Fortimail】bounce対策:受信者検証

メーカー製品

外部公開メールサーバを運用し、かつ、内部メールサーバと分けて運用している場合、フロントの外部公開メールサーバで、受信者がいるかどうかの応答を返していますか。この設定をしているかしていないかで、インターネット上のメールサーバとしての評価が大きく変わる可能性があります。

本記事では、何故評価が大きく変わるのかと、Fortimailを利用した場合の対策設定を紹介します。

環境補足

設定の説明に入る前に、もう少し補足情報を加えておきます。
運用されている環境によって様々なので参考程度にしてください。

うちの環境は、下記で紹介しています。

受信者検証有無による評価の変化について

受信者検証とは

メールを送信した際に「User Unknown」で、エラーメールが返ってきたことは無いでしょうか。「User Unknown」は文字通りですが、「宛先アドレスのユーザーが存在しません」という内容です。

メールサーバはSMTP通信を受けた際に、受け取るべきメールかどうかを判断します。その判断材料の一つとして、存在するユーザーなのかどうかをチェックします。存在すればメールを受け取り、存在しなければメールを受け取らずに拒否する。という設定が一般的になります。

この「存在するユーザーかどうかをチェックする機能」のことを、Fortimailでは「受信者検証」という名称になっています。

メールサーバとしての評価とは

端的に言うと、スパムなどのメールを送信しているサーバでは無いかの評価となります。何故その評価と受信者検証が紐づくかを説明します。

「User Unknown」によるエラーメールが、どのメールサーバから送信されているのかが重要なポイントとなります。

  • 外部公開メールサーバで受信者検証を行っていない場合
    • 外部公開メールサーバはドメインが合っていれば全てのメールを一旦受け取り、内部メールサーバへリレーします。このとき、内部メールサーバはユーザーを管理しているので、存在しないユーザーは「User Unknwon」というエラーを出し、受け取りを拒否します。リレーできずに拒否されたため、外部公開メールサーバは、エラーメールをfromアドレスに返します
  • 外部公開メールサーバで受信者検証を行っている場合
    • 外部公開メールサーバはメールを受け取る前に存在するユーザーかどうかを内部メールサーバなどに確認します。存在しないユーザーと判明した場合、「User Unknwon」というエラーを出し、受け取りを拒否します。よって、外部公開メールサーバからエラーメールを返すことはありません

正常なメールに対しての「User Unknown」は、ごく当たり前の処理なのですが、正常なメールよりスパムメールの方が多いのが実状で、ランダムな文字列からユーザー名を生成し、手あたり次第メール送信してくるサーバも存在します。そのようなメールを受け取り、ことごとく存在しないユーザーだった場合、「User Unknown」のエラーメールを大量に世界中にばらまいてしまう可能性があります。このような不必要なメールを運用しているメールサーバから大量に出してしまうと、評価が下がりスパム送信メールサーバとして判定されてしまうこともあるのです。

よって、フロントの外部公開メールサーバで受信者検証を実施し、存在しないユーザーの場合はそもそもメールを受け取らず拒否し、評価を守ろう。ということに繋がります。

設定内容

受信者アドレス検証設定

「ドメイン&ユーザー」-「ドメイン」で対象のドメインを編集してください。

  • LDAPサーバーに問い合わせをする場合は、先にLDAPプロファイルを作成してください。
  • 静的配送先のSMTPサーバがuser情報を返してくれる場合は、「SMTPサーバー」を選択するのみでOKです。多段構成やSMTP/POPを分けてuser情報を返してくない場合などは、「代替サーバを使用」することで設定が可能になります。

GUI設定参考

左図:LDAPパターン / 右図:SMTPパターン

CLI設定参考

  • LDAPサーバー パターン
config domain
  edit piteki.com
    config  domain-setting
      set recipient-verification ldap
      set recipient-verification-profile common-ldap
    end
  next
end
  • SMTPサーバー パターン
config domain
  edit piteki.com
    config  domain-setting
      set recipient-verification smtp
    end
  next
end

コメント