Postfixの再送設定はデフォルトだとちょっとお人よしですよ
[Postfix] 自宅メールサーバが迷惑メールサーバと思われているので、プロバイダ経由でメール配信する設定 でプロバイダ経由で送信するのはいいけど、メーリングリストのように一度に大量の相手にメールを送るときにサーバビジーとなり、メールキューが貯まる。
Mar 2 07:12:45 mail postfix/smtp[2760]: 23AAD323853: to=xxxxxxxx@xxxxx.co.jp, relay=smtp.hoge.com[xxx.xxx.xxx.xx]:587, delay=4343, delays=4281/31/0.12/30, dsn=4.0.0, status=deferred (host smtp.hoge.com[xxx.xxx.xxx.xx] said: 421 Server Busy, Please Try Later (in reply to MAIL FROM command))
時間が経てば再配送してくれるのだけれど、随分時間がかかる。
調べてみるとPostfixのデフォルトだとお人好しな設定の様子。
参考ブログ [Postfix] 再送設定 - abs(life) によると
失敗から再送までのpostfixの動きは、
送信失敗
deferredに入れる
queue_run_delay(1000秒)毎にdeferredをチェック
minimal_backoff_time(1000秒)を超えるメールがあれば送信
また失敗したらminimal_backoff_timeの倍(2000秒)の時間後に再送
またまた失敗したらminimal_backoff_timeの倍の倍(4000秒)の時間後に再送
maximal_backoff_time(4000秒)を超えるまでこれを繰り返し
maximal_backoff_timeを超えてしまったら、maximal_backoff_time間隔で再送
maximal_queue_lifetime(5日)を超えてしまったら再送をあきらめる
bounce_queue_lifetime(5日)を超えたら送信もとにエラーメール送信
とのことで、もうちょっと早めに再送して欲しい感じ。
$ sudo vi /etc/postfix/main.cf
### 設定ファイルの最後の方に追記
minimal_backoff_time = 100s
maximal_backoff_time = 600s
maximal_queue_lifetime = 24h
bounce_queue_lifetime = 24h
queue_run_delay = 100s
こんな設定に。
Postfixをリロードして設定を反映。
$ sudo /etc/init.d/postfix reload
-
前の記事
[Postfix] 自宅メールサーバが迷惑メールサーバと思われているので、プロバイダ経由でメール配信する設定 2012.03.02
-
次の記事
Gunma.web #8 でLTに初挑戦! 2012.03.05