Consulta SMTP throttling



  • Hola amigos. Tengo el siguiente problema. Dentro de la red tengo varios servidores, uno de ellos es un servidor con una aplicacion que se dedica a enviar semanalmente correos a nuestros clientes (NO SPAM aclaro). Son aproximadamente 35.000 correos. La cuestion es que algunos proveedores de correo como Hotmail, Yahoo, Gmail muchas veces veo en el log que le contestan al servidor de mail con mensajes "temporarily deferred".

    El servidor tiene sus entradas SPF en orden, tiene la inversa de la IP correcta, etc. Por lo que estuve leyendo puede ser tambien porque mande demasiados correos en muy poco tiempo a un mismo dominio.

    Analizando los listados de mails, veo que tengo por ejemplo 5000 correos de hotmail y 3000 de yahoo aprox. por lo cual como la aplicacion en cuestion genera un correo personalizado por usuario, el sendmail inicia una conexion por cada mail, transmite el mail y despues corta.
    Si el sendmail agarra de la cola de mails en una pasada muchos mails para enviar al mismo dominio, abre todas las conexiones a la vez y ahi sucede lo del "temporarily deferred".

    Como quiero seguir algunas reglas de etiqueta, estoy pensando en limitar el numero de conexiones salientes simultaneas a cada uno de los MX de estos grandes (yahoo, hotmail, gmail). En un principio pense en hacerlo desde sendmail, pero la verdad que no encontre nada al respecto, todo lo que hay de limitar conexiones habla de conexiones entrantes para evitar ataques.

    Fue asi que pense en limitar al servidor desde el firewall, es decir creando alguna regla en la LAN para la IP del servidor que no le permita abrir mas de 15  conexiones simultaneas a unas serie de servidores (usare un alias para cada uno de los grupos de MX de Hotmail, yahoo, etc).
    Por lo que entiendo la regla seria:
    Action: PASS
    Interface: LAN
    Protocol: TCP
    Source: Single Host (ip interna del servidor)
    Destination: Single Host or Alias (Alias de cada grupo de MX)
    Destination Port: SMTP
    Y aqui viene el problema, en la seccion Advanced.
    Simultaneous client connection limit: supongo que es 15??
    Maximum state entries per host: Supongo que es 1?
    Maximum new connections / per second: No lo se
    State Timeout in seconds: No lo tengo claro tampoco. Necesito que no sea mucho tiempo, ya que si el sendmail intenta abrir una conexion más, quiero que como maximo a los 20 segundos desista lo devuelva a la cola, y tome otro mail para mandar a otro dominio.
    Este state timeout, se refiere a cuando la conexion queda inactiva?

    Y mi ultima duda, es si debo crear abajo de esta regla una igual sin las entradas en advanced que haga reject o block para cuando se completan las 15 conexiones que indica la regla superior.

    Bueno desde ya si alguien tiene algun comentaro se lo agradeceria muchisimo.

    Saludos!


Log in to reply