ベンチマーク時には、smtpd_client_event_limit_exceptionsを

同一クライアントからのメール送信を制限しようと、smtpd_client_message_rate_limitとanvil_rate_time_unitを設定し、メールのベンチマークツールpostalを利用して、
動作確認を行っていたが、いっこうに制限がかからない、、、、main.cfに追加した設定は以下のとおり。

# 単位時間あたりの送信数制限
smtpd_client_message_rate_limit = 5
# 単位時間の設定
anvil_rate_time_unit = 60s

上記設定をすれば、同一クライアントからは1分間に5通しか送信できなくなるはず。。。
で、原因はpostfixを起動している端末でベンチマークを実行していたというよくある話であった。
接続カウントや接続速度、SMTP要求速度の制限から除外されるクライアンを設定する、smtpd_client_event_limit_exceptionsの
デフォルトは、$mynetworksである。これを以下のようにブランクにしてあげれば、動作確認を行うことが出来る。

# 単位時間あたりの送信数制限
smtpd_client_message_rate_limit = 5
# 単位時間の設定
anvil_rate_time_unit = 60s
# 接続カウントや接続速度、SMTP要求速度の制限から除外されるクライアント
smtpd_client_event_limit_exceptions =

postalで、この制限を破ると以下のような出力となる

$postal -M 1 -m 1 -t 1 -r 20 localhost userlist
time,messages,data(K),errors,connections,SSL connections
Server error:450 4.7.1 Error: too much mail from 127.0.0.1
.
Server error:450 4.7.1 Error: too much mail from 127.0.0.1
.

maillogは、以下のような出力となる

Sep 6 14:29:28 oos-h-671 postfix/smtpd[20641]: > localhost[127.0.0.1]: 450 4.7.1 Error: too much mail from 127.0.0.1
Sep 6 14:29:28 oos-h-671 postfix/smtpd[20641]: warning: Message delivery request rate limit exceeded: 7 from localhost[127.0.0.1] for service smtp