Qué hacer si tu servidor envía spam

EximLinux

Si tu servidor ha comenzado a enviar Spam es probable que tu proveedor de hosting te haya enviado un mensaje y que además te hayan bloqueado un puerto, que posiblemente será el 25. Sabemos que es desesperante, en espacial si otras personas dependen de ti a la hora de usar su correo electrónico. Esta solución es válida tanto si utilizas tu servidor sin ningún panel de gestión de Hosting como si tu panel de Hosting es CPanel, VestaCP, Plesk y muchos otros.  Lo primero que debes hacer es calmarte. ¿Hecho? Pues bien, ahora vamos a ver cómo solucionarlo

Comprobar la cola de salida del servidor de correo

En el caso de que tu servidor utilice exim como servidor de correo, tendrás que ejecutar el siguiente comando:

exim -bp

El resultado será algo así como lo siguente:

[root@server]# exim -bp
40h 20K 1bef1u-0006bT-BX <direccion@spam.com>
 usuario1@dominio.com
 usuario2@dominio.com
 usuario3@dominio.es
 ..............
 usuarioN@dominio.net
40h 59K 1bef4c-0006kk-0l <direccicon@conocida.com>
 usuario1@dominio.com
 usuario2@dominio.com
37h 447K 1behiS-0003xU-5k <direccion@aconocida.com>
 usuario@dominio.com

Mediante este comando verás los emails que están en la cola de salida pero que aún no se han enviado. Es aquí en donde podrás comprobar que existen cientos de emails de Spam esperando a ser enviados. Lo que tenemos que averiguar es qué o quién los está enviando.

En cada elemento de la cola podrás ver el identificador del email, la dirección desde la que se envía el correo y, justo debajo, las direcciones que recibirán el email. Seguramente podrás ver que existe una o muchas direcciones que están enviando emails a una larga lista de direcciones.  Esta dirección no tiene por qué ser conocida, sino que puede ser una de tu servidor o una cuyo domino no conoces o que ni siquiera existe. Esto ocurre porque un servidor prácticamente puede enviar mensajes desde cualquier dirección que quiera, aunque obviamente, seguramente lleguen como Spam. Ésto ocurre gracias a los registros SPF cuando la IP del servidor de envío no es la definida en los registros SPF del dominio.

Puede que los emails se estén enviando desde una cuenta de email que haya sido hackeada o puede que se estén enviando desde un Script que haya sido hackeado en el servidor. En todo caso debemos fijarnos en el identificador del email que en el primer caso del ejemplo sería 1bef1u-0006bT.

Comprobar datos adicionales de los mensajes sospechosos

Para ver datos adicionales del email debemos utilizar los comandos exim -Mvb y exim -Mvh seguidos del identificador del email. Por ejemplo:

exim -Mvb 1bef1u-0006bT
exim -Mvh 1bef1u-0006bT

Podremos ver el contenido del mensaje para comprobar que, en efecto, se trata de un mensaje de Spam. También podremos ver la dirección real que ha enviado el mensaje de Spam desde nuestro servidor o en su defecto, el script de nuestro servidor que lo ha enviado.

Un posible resultado será el siguiente:

180P Received: from admin by dominio.com with local (Exim 4.71)
         (envelope-from <spameador@dominio.com>)
         id 1bef1u-0006bT
         for usuario@victima.com; Mon, 23 Jan 2016 14:35:22 +0300
022T To: usuario@victima.com
035  Subject: 1 TeVoyASpamear Message
065  X-PHP-Originating-Script: 502:aqui_esta.php(1487) : eval()'d code
037  Date: Mon, 23 Jan 2016 14:35:22 +0000
046F From: Usuario Spameador <spameador@dominio.com>
059I Message-ID: <aas6d5astdasguydsa6dtsa8@dominio.com>
014  X-Priority: 2
068  X-Mailer: PHPMailer 5.3.2
018  MIME-Version: 1.0
085  Content-Type: multipart/alternative;
         boundary="b2_aas6d5astdasguydsa6dtsa8"
032  Content-Transfer-Encoding: 8bit

En este ejemplo podemos ver la siguiente línea:

065  X-PHP-Originating-Script: 502:aqui_esta.php(1487) : eval()'d code

¿Intereante, verdad? Nos están diciendo que el origen del mensaje es un Script de PHP y que su nombre es aqui_esta.php. Además, el email se envía desde la línea 1487 del archivo. Si el email hubiese sido enviado desde una dirección de email hackeada, veríamos al dirección de envío en lugar del nombre del script que envía el correo.

Eliminar el origen del problema

Vamos a proporcionar una solución para los casos en los que el Spam se esté enviando desde una cuenta de correo de nuestro servidor y para los casos en los que se envíe desde un Script.

Si el Spam se está enviando desde una cuenta de email

La solución es muy sencilla. En este caso tendríamos que suspender la cuenta o sencillamente cambiar la contraseña de la cuenta de email para evitar que se siga enviando Spam. Arreglado.

Si el spam se está enviando desde un Script

Siguiendo con el ejemplo anterior, tenemos que buscar el script aqui_esta.php en nuestro servidor. Podemos utilizar el comando grep:

find /home -type f -name "aqui_esta.php"

Una vez encontrado, podemos borrar el script o en caso de que haya sido modificado, sustituirlo por una versión anterior. De todos modos, encontrarnos ésto no será nada bueno, así que es recomendable  asegurarnos de que nuestro servidor no ha sido hackeado al completo.


Avatar de Edu Lazaro

Edu Lázaro: Ingeniero técnico en informática, actualmente trabajo como desarrollador web y programador de videojuegos.

👋 Hola! Soy Edu, me encanta crear cosas y he redactado esta guía. Si te ha resultado útil, el mayor favor que me podrías hacer es el de compatirla en Twitter 😊

Si quieres conocer mis proyectos, sígueme en Twitter.

3 comentarios en “Qué hacer si tu servidor envía spam

  1. amigo buenas tardes mi servidor dice asi por ejemplo

    Received: from nobody by sIP.secureserver.net with local (Exim 4.92)
    (envelope-from )
    id 1hc7XH-0005It-AI
    for chrisnowell69@talktalk.net; Sat, 15 Jun 2019 05:12:04 -0700
    en los logs y tengo confirgurado en cpanel no permitir correos desde nobody pero los sigue enviando

    me llamo la atencion esto
    Received: from nobody (HELO nobody)

    31h 9.4K 1hdDku-0000lc-0x
    nobody@sIP.secureserver.net

    31h 9.8K 1hdDku-0000mX-A9
    nobody@sIP.secureserver.net

  2. Buenas tardes. En mi caso tenemos mas de 200 cuentas de correo en el mismo dominio. Desde una o dos cuentas semanalmente envían información al resto de las cuentas, ya que se trata de una ong. El problema es que quedan retenidos en el servidor, en la cola de salida… pero, no salen… Qué puedo hacer para solucionar este problema? Muchas gracias.

  3. Buenos días estimado, tengo un problema con mi dirección de correo.
    aparentemente me envían mail y no los recibo o a veces a ellos le llega un mail de rechazo.
    es mi casilla de correo de hace 7 años y este problema me esta perjudicando ya que es al mail al que envían solicitud de cotizaciones.
    realice el reclamo al hosting pero puede que mi dirección este en una lista negra

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

“- Hey, Doc. No tenemos suficiente carretera para ir a 140/h km. - ¿Carretera? A donde vamos, no necesitaremos carreteras.”