发送邮件的后缀限制

我需要Postfix以一定的速度发送传出消息(从本地PHP)。 说,120秒内一个消息。 任何超过这个速率的消息应该排队(延迟)并在稍后交付。

Policyd不是我要找的。 我不需要限制发送的消息的总数量。 我需要在发送的任何两个消息之间暂停(120s)。

试过这个configuration,但它不工作:

initial_destination_concurrency = 1 default_destination_concurrency_limit = 1 default_destination_rate_delay = 120 default_destination_recipient_limit = 1 default_process_limit = 1 

有什么build议么?

你需要设置

 default_destination_recipient_limit = 2 

而不是1.因为如果设置为1,那么限制将只适用于相同的收件人, 而不是域。

我会使用postfwd。 我在制作速度限制服务器时使用它。

http://postfwd.org/doc.html#examples

当你说上面的configuration不工作,是不工作到相同的目的地或不同的目的地?

就一个build议来说,编写一个开启/closuresiptables规则来阻塞到端口25的外出连接是相当简单的。这将是我的下一个build议。

减慢客户端发送邮件的速度

smtpd_client_connection_rate_limit = 100

smtpd_client_message_rate_limit = 100

smtpd_client_recipient_rate_limit = 200

smtpd_client_new_tls_session_rate_limit = 100

看一下这个

也许用qmgr玩一下就可以得到一些结果。

http://www.postfix.org/qmgr.8.html