qmail limita o número de e-mails enviados por usuário ou domínio por hora

qmail limita o número de e-mails enviados por usuário ou domínio por hora

Estou hospedando um servidor de e-mail para alguns domínios diferentes. Recentemente, a senha de um dos usuários foi adivinhada/hackeada e a conta foi usada para enviar algumas centenas de milhares de mensagens antes que eu percebesse e conseguisse desligá-la, o que colocou todo o servidor na lista negra

Eu gostaria de colocar um limite no qmail para limitar a taxa de e-mails de saída por usuário/domínio/tempo, mas até agora não consegui encontrar nenhuma funcionalidade integrada para isso.

Qualquer técnica que você conheça seria útil. Uma opção que encontrei é enviar e-mails através do SpamAssassin, mas estou preocupado em bloquear mensagens legítimas.

Responder1

Há algum tipo deremendo do aceleradordisponível para Qmail que corresponda à sua descrição. Duvido que haja funcionalidade integrada sem corrigir o Qmail, já que o Qmail é perfeitamente codificado como está.

Por favor, dê uma olhadaesta discussão de vários MTAs, particularmente a nota sobre o Qmail. Tenha em mente que esta discussão é de 6 anos atrás, e o que foi dito sobre o Qmail naquela época é ainda mais verdadeiro. Talvez isso não esteja em seu planejamento de curto ou médio prazo, mas migrar do Qmail deve ser algo a considerar, especialmente se você tiver que aplicar vários tipos de patches aleatórios para que ele faça o que você deseja.

Hmm, a discussão sobre como fazer algo semelhante no Postfix é usar opoliticamenteadicionar. Uma olhada nesse projeto sugere que ele pode ser usado com diferentes MTAs, então possivelmente você pode convencer o Qmail a usá-lo.

Responder2

Funcionou excelente, obrigado!

Você também deve incluir a próxima linha após o primeiro grep:

grep "$(data +"%b %d")" /var/log/maillog| submissão grep:| awk -Fsuccess {'imprimir $2'} |awk -F: {'imprimir $1'} | classificar | único -c | classificar -n | grep -v (desconhecido) | awk {'imprimir $1"|"$2'}

Assim, você também pode bloquear envios simples de SMTP não criptografados.

Saudações!

Responder3

Além disso, você pode monitorar e-mails de saída com amostra, quando a amostra detectar qmail-send no máximo (como: remoto 30/30) enviará um alerta.

Você pode usar o patch de limites do tcpserver: dá ao tcpserver a capacidade de rejeitar conexões quando a média de carga do servidor está acima de um certo número, quando mais de um certo número de conexões são recebidas do mesmo endereço IP ou quando mais de um certo número de conexões as conexões são recebidas de máquinas no mesmo bloco de classe C (ou seja, os "três primeiros números" em seus endereços IP são iguais. "1.2.3.4" e "1.2.3.100" estão no mesmo bloco de classe C).https://qmail.jms1.net/ucspi-tcp/

Responder4

Adicione também esta linha para proteger seu servidor de usuários autenticados localmente:

grep "$(date +"%b %_d")" /var/log/maillog |
grep auth: |
grep ALL |
grep '127.0.0.1' |
awk -Ffrom\: {'print $2'} |
awk -Fto\: {'print $1'} |
sort | uniq -c | sort -n | grep -v bounce |
awk {'print $1"|"$2'}

Saudações!

informação relacionada