maildrop(.mailfilter)で拒否リストのメールに対して 550 user unknown を返す

maildrop(.mailfilter)で拒否リストのメールに対して 550 user unknown を返す
(さくらのレンタルサーバーで maildrop が使用されている)

注意
  • MTAに大きな負荷がかかる可能性があります
  • 550 user unknown は return-path に返るので、差出人に返るとは限りません
  • spam等が return-path でアカウントの存在をチェックしている場合、有効な処理である可能性があります

maildrop(.mailfilter)の user unknown は EXITCODE=67 を用います
EXITCODE意味SMTP ステータス
0正常処理250
64コマンドライン使用エラー554
65データフォーマットエラー554
67ユーザー不明550
69サービス利用不可(ポリシー拒否など)550/554


拒否リストにマッチした場合 user unknown を返す
if ( /^From:\s*(.*)/ && lookup( $MATCH1, ".blockaddr" ) )
{
	EXITCODE=67
	exit
}

拒否リストにマッチした場合 user unknown を返して、ゴミ箱へ保存
if ( /^From:\s*(.*)/ && lookup( $MATCH1, ".blockaddr" ) )
{
	EXITCODE=67
	to "maildir/.Trash/"
}

送信元に下記のようなお決まりのメッセージが返る
5.1.1 なので宛先不明



コメント