Estou tentando resolver o problema com alguns ataques parecidos com o blackscatter, quando o spammer envia um e-mail com uma pessoa real De ou um endereço de resposta para uma conta com uma cota excedida.
Esta situação gerou anteriormente uma mensagem de devolução do Dovecot, sendo enviada para essa pessoa (e ocasionalmente marcada como SPAM), então implementei o dovecot como um serviço de política ( check_policy_service
) que verifica se a conta no campo "Para" tem algum espaço livre para mensagens, caso contrário, retorna 550 durante a conexão SMTP.
Infelizmente, não funciona quando há um alias no campo "Para", que pode encaminhar mensagens para uma ou mais contas reais. Portanto, primeiro, a verificação retorna OK, mas depois que a mensagem foi enfileirada, quando ela for para a conta real, qual cota está cheia, haverá uma mensagem devolvida gerada novamente.
Eu posso escrever uma verificação de SQL se algum dos destinos de alias tiver uma cota excedida, mas isso poderá causar a revogação da conexão ao alias que está conectado a muitas contas, mas apenas a uma com a cota excedida.
Existe alguma boa solução para isso?