1
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

退職者・卒業生アカウントに対する bounce mail により、spam 送信サーバであると誤判定される

Last updated at Posted at 2020-03-10

概要

3000人程度の利用者に対するメールシステムを、かれこれ12年間、オンプレミスで運用してきたのですけれど、ついに G Suite に移転することになりました。その間に得たノウハウを、このままロストテクノロジーにするのも惜しいので、過去の作業ログの中から、ある程度汎用性がありそうなトピックを取り出して、公開しようと思います。

利用者が10人〜30人くらいまでのメールサーバであればともかく、利用者が1000人を超えるメールサーバを運用している場合、受信アドレスの正当性検査は大変重要です。一言で言えば、できる限りメールを受け取らないように努力しなければなりません

メールシステムの運用開始当時、まだ上記の認識が不十分だった筆者は、退職者・卒業生アカウントに対する bounce mail により、管理しているメールシステムが spam 送信元であると誤判定されるというトラブルに遭遇しました。

  1. spam 送信者が From: victim-notexist@yahoo.co.uk と非実在の送信者を騙って、退職者・卒業生アカウントに大量の spam を送ってくる。
  2. 当方のメールサーバは victim-nonexist@yahoo.co.uk に対して、メールボックスが存在しないという bounce mail を大量に送信する。
  3. yahoo.co.uk のメールサーバから見ると、当方のメールサーバは「非実在のメールボックスに mass mailing を行っている」「つまり、spam 送信者である」と誤判定される。
  4. alice@yahoo.co.uk にメールを転送している、現役の利用者 alice のメールが転送を拒否される.

特に、当時はまだ LDAP に慣れていなかったので、プライマリメールサーバでは LDAP を参照して、受信アドレスの正当性検査を正しく行なっていたのですが、セカンダリメールサーバでは LDAP を参照することなく、ドメインだけを検査してメールを受け取ってしまっていたのです。

対策方法

bounce mail を発生させないためには、メールを受け取らないことが肝心です。つまり、SMTP セッションで RCPT TO により受信者アドレスが指定された時点で、受信者アドレスの正当性を検査し、正当ではない受信者アドレスの場合は受取を拒否します。そのためには、local_recipient_maps パラメータを正しく設定し、かつ、smtpd_reject_unlisted_recipient パラメータをデフォルトのまま yes に設定しておけば良いです。

しかし、筆者が管理しているシステムでは、学内の他のシステムの都合もあり、単純に受け取らないという設定ができませんでした。そのため、退職者・卒業生アカウントに対するメールは、転送のみを行い、転送できない場合は破棄するように設定して対応しました。また、LDAP の登録内容がそのまま使えない場合は、任意のスクリプトを使って読み替える設定が応用できます。

利用者が増えてくると、正当な受信者アドレスのリストの管理が難しくなってくるため、どうしても bounce mail を発生させてしまうことがあります。bounce mail をまったく送信しないという設定も可能ですが、そのように設定すると正規利用者がメールアドレス誤りに気付けなくなり、それはそれで問題です。折衷案として、筆者は bounce_queue_lifetime パラメータを 0 に設定して運用しています。

/etc/postfix/main.cf
bounce_queue_lifetime = 0

このパラメータを設定すると、postfix は、bounce mail の送信を1回だけ試行して、失敗した場合はそのまま破棄します。bounce_queue_lifetime のデフォルト値は 5d (5日間)なので、失敗した場合は5日間 bounce mail の再送を試みます。そのデフォルト設定に比べて、bounce_queue_lifetime パラメータを 0 に設定しておくと、bounce mail を送信しようとする SMTP セッションは 1/100 以下になりますから、その分だけ spam 送信者と誤判定される危険性が減ります。

1
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?