(IT) docomoドメインへのML配信エラー対応

いくつかのドメインのメールサーバーをAWS上で運用している。
どのドメインもSPFのみならず、DKIMやDMARCにも対応させて
一応なんとか運用している。
しかし、4月の中旬くらいからどうやらdocomo.ne.jpのメールサーバーの
仕様が変わったらしく、Mailmanを使ったMLの配信でbounceが発生する
ようになった。

/var/log/mailman/bouce の例としてはこんな。

date (ID) processing 3 queued bounces
date (ID) ml_name: aaa@docomo.ne.jp current bounce score: 2.0
date (ID) ml_name: bbb@docomo.ne.jp current bounce score: 2.0
date (ID) ml_name: ccc@docomo.ne.jp current bounce score: 2.0
date (ID) processing 3 queued bounces
date (ID) ml_name: aaa@docomo.ne.jp already scored a bounce for date 23-May-2018
date (ID) ml_name: bbb@docomo.ne.jp already scored a bounce for date 23-May-2018
date (ID) ml_name : ccc@docomo.ne.jp already scored a bounce for date 23-May-2018

これ、全部のメールがbounceしているわけではなくて、
i.softbank.jpから発信されて、当該ドメインのメールサーバーで
ML宛に配信されたメールがbounceするのだった。
正確にはaaa,bbb,cccの3人への配信がbnounceしていると書いてあるが、
実は、bbbとcccには実は届いていて、aaaにだけ届いていない。

同じタイミングの/var/log/maillogはこんな。

date server_name postfix/smtp[PID]: ID: to=<ccc@docomo.ne.jp>, relay=mfsmax.docomo.ne.jp[203.138.180.112]:25, delay=0.24, delays=0.09/0.01/0.03/0.11, dsn=5.0.0, status=bounced (host mfsmax.docomo.ne.jp[203.138.180.112] said: 550 Unknown user aaa@docomo.ne.jp (in reply to end of DATA command))
date server_name postfix/smtp[PID]: ID: to=<bbb@docomo.ne.jp>, relay=mfsmax.docomo.ne.jp[203.138.180.112]:25, delay=0.24, delays=0.09/0.01/0.03/0.11, dsn=5.0.0, status=bounced (host mfsmax.docomo.ne.jp[203.138.180.112] said: 550 Unknown user aaa@docomo.ne.jp (in reply to end of DATA command))
date server_name postfix/smtp[PID]: ID: to=<aaa@docomo.ne.jp>, relay=mfsmax.docomo.ne.jp[203.138.180.112]:25, delay=0.24, delays=0.09/0.01/0.03/0.11, dsn=5.0.0, status=bounced (host mfsmax.docomo.ne.jp[203.138.180.112] said: 550 Unknown user aaa@docomo.ne.jp (in reply to end of DATA command))

maillogではaaaで拒否しているからbbbにもcccにも届いてないよ、って
ログだから、bounceファイルでもbounce処理していることが載っている
のだが、前述の通り実際にはbbbとcccには配信されている。

よって、bbbとcccをaaaの影響から外すために、全てのメールを
個別配信する設定に変更した。Mailmanはデフォルトでは同一
ドメインには、一度のセッションで複数のアドレスへ送っている
ようで、それが今回の問題の原因のようだった。

/etc/mailman/mm_cfg.py の最終行に以下の記述を追記。

VERP_PROBES = Yes
VERP_PASSWORD_REMINDERS = Yes
VERP_PERSONALIZED_DELIVERIES = Yes
OWNERS_CAN_ENABLE_PERSONALIZATION = Yes

これで管理コンソールの「普通配送」のところに個別配信の
メニューが追加され「いいえ・はい・完全個人別配信」が選択できる。
完全個人別配信とすると、本文に名前を入れるなどのカスタマイズが
できるが、今回はそこまでしないので、「はい」を選択。

結果として、maillog上でもmailman/bounce上でも配信エラーは
aaaだけとなった。
aaaに配信されていないという根本原因は不明なままだが、とりあえず
他のメンバーがバウンス回数が多くて配信停止になるというリスクは
回避できたはずだ。

参考ページ:Mailman日本語情報「サイト管理の手引」