qmail limita el número de correos electrónicos enviados por usuario o dominio por hora

qmail limita el número de correos electrónicos enviados por usuario o dominio por hora

Estoy alojando un servidor de correo para un par de dominios diferentes. Recientemente, la contraseña de uno de los usuarios fue adivinada/pirateada y la cuenta se usó para enviar un par de cientos de miles de mensajes antes de que me diera cuenta y pudiera cerrarla, lo que puso a todo el servidor en la lista negra.

Me gustaría poner un límite en qmail para limitar la velocidad del correo electrónico saliente por usuario/dominio/tiempo, pero hasta ahora no he podido encontrar ninguna funcionalidad integrada para eso.

Cualquier técnica que conozcas sería útil. Una opción que he encontrado es enviar correo electrónico saliente a través de SpamAssassin, pero me preocupa bloquear mensajes legítimos.

Respuesta1

Hay una especie deparche del aceleradordisponible para Qmail que se ajuste a su descripción. Dudo que haya una funcionalidad integrada sin parchear Qmail, ya que Qmail está, ejem, perfectamente codificado tal como está.

Por favor echa un vistazo aesta discusión sobre varios MTA, particularmente la nota sobre Qmail. Tengan en cuenta que esta discusión es de hace 6 años, y lo que se dijo entonces sobre Qmail es aún más cierto. Quizás esto no esté en su planificación a corto o mediano plazo, pero migrar desde Qmail debería ser algo a considerar, particularmente si tiene que aplicar una serie de parches aleatorios para que haga lo que usted desea.

Hmm, la discusión sobre cómo hacer algo similar en Postfix es usar elpolíticadoAñadir. Un vistazo a ese proyecto sugiere que se puede utilizar con diferentes MTA, por lo que posiblemente puedas convencer a Qmail para que lo utilice.

Respuesta2

Funcionó excelente, ¡gracias!

También debes incluir la siguiente línea después del primer grep:

grep "$(fecha +"%b %d")" /var/log/maillog| envío grep:| awk -Féxito {'imprimir $2'} |awk -F: {'imprimir $1'} | ordenar | único -c | ordenar -n | grep -v (desconocido) | awk {'imprimir $1"|"$2'}

Por lo tanto, también puede bloquear envíos SMTP simples sin cifrar.

¡Saludos!

Respuesta3

También puede monitorear el correo saliente con swatch, cuando swatch detecta qmail-send al máximo (como: remoto 30/30) le envía una alerta.

Puede utilizar el parche de límites de tcpserver: le da a tcpserver la capacidad de rechazar conexiones cuando el promedio de carga del servidor está por encima de un cierto número, cuando se reciben más de un cierto número de conexiones desde la misma dirección IP o cuando más de un cierto número de las conexiones se reciben de máquinas en el mismo bloque de clase C (es decir, los "tres primeros números" en sus direcciones IP son los mismos. "1.2.3.4" y "1.2.3.100" están en el mismo bloque de clase C).https://qmail.jms1.net/ucspi-tcp/

Respuesta4

Agregue también esta línea para proteger su servidor de usuarios 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'}

¡Saludos!

información relacionada