Qual é a maneira MAIS RÁPIDA de filtrar e-mails pós-fila por endereço IP do remetente?

Qual é a maneira MAIS RÁPIDA de filtrar e-mails pós-fila por endereço IP do remetente?

Eu mantenho um servidor de e-mail usado por centenas de clientes. De vez em quando, um cliente é infectado por um vírus e começa a enviar toneladas de e-mails de spam. Percebo isso principalmente porque preenche a fila de postagem com dezenas de milhares de e-mails pendentes, em vez de algumas centenas.

Encontrar o endereço IP do remetente de spam e bloqueá-lo é simples, mas ainda tenho dezenas de milhares de e-mails de spam na fila de e-mail, geralmente com endereços de remetentes diferentes.

Quando imprimo a fila de postagem, postqueue -pela exibe o ID do correio, o endereço de e-mail do remetente e todos os destinatários. Não exibe o IP do remetente.

Posso encontrar o IP do remetente de um e-mail executando:

postcat -q ABCDEF1234 | egrep "\\bclient_address="

Onde "ABCDEF1234" é o ID do correio.

Eu escrevi uma ferramenta que lista todos os IDs de e-mail e, em seguida, percorre-os, executando postcat -qcada um deles e filtrando aqueles que não correspondem ao ID de entrada.

Isso funciona, mas éextremamente lento. Filtrar uma fila de postagem com 441 e-mails leva de 7 a 8 segundos. Se estou tentando filtrar uma fila de postagens cheia de spam com dezenas de milhares de e-mails, essa ferramenta será inútil.

Minha esperança é que haja alguma ferramenta ou sinalizador que não conheço e que me permita filtrar pelo endereço IP do remetente.


Estou executando o Postfix 2.10

informação relacionada