Você precisa definir
default_destination_recipient_limit = 2
em vez de 1. Como definido como 1, o limite será aplicado apenas ao mesmo destinatário, não ao domínio.
Eu preciso do Postfix para enviar mensagens de saída (do PHP local) com uma determinada taxa. Diga uma mensagem em 120 segundos. Quaisquer mensagens que excedam essa taxa devem ser enfileiradas (atrasadas) e entregues posteriormente.
Policyd não é o que estou procurando. Não preciso limitar o número geral de mensagens enviadas. Preciso de uma pausa (120s) entre quaisquer duas mensagens sendo enviadas.
Tentei essa configuração, mas não está funcionando:
initial_destination_concurrency = 1
default_destination_concurrency_limit = 1
default_destination_rate_delay = 120
default_destination_recipient_limit = 1
default_process_limit = 1
Alguma sugestão?
Você precisa definir
default_destination_recipient_limit = 2
em vez de 1. Como definido como 1, o limite será aplicado apenas ao mesmo destinatário, não ao domínio.
Eu usaria o postfwd. Eu uso isso em produção para servidores limitadores de taxa.
Quando você diz que a configuração acima não está funcionando, ela não está funcionando para o mesmo destino ou para destinos diferentes?
No que diz respeito a uma sugestão, seria bastante trivial fazer o script de uma regra on / off iptables para bloquear conexões de saída para a porta 25. Essa seria minha próxima sugestão.
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
#verifique isso
Talvez jogando um pouco com o qmgr você pode obter alguns resultados.
É muito comum que as pessoas façam isso por e-mail no yahoo. Você pode ver uma configuração de exemplo no link e ajustar os números conforme necessidade.
Você pode limitar os e-mails de saída:
default_destination_rate_delay = 1s
O postfix adicionará um atraso entre cada mensagem ao mesmo domínio de recebimento com um atraso de 1 segundo. O valor padrão é 0s.
Tags postfix rate-limiting