Email Spam Tester

Email Spam Tester › Email Spam Tester para cPanel y WHM

Email Spam Tester para cPanel y WHM

Un plugin para proveedores de hosting. Sus clientes lo encuentran en cPanel, en Email, envían un email real desde uno de sus buzones y obtienen una lista de lo que deben corregir, con el registro DNS exacto o el botón de cPanel junto a cada problema detectado.

Versión 0.1.1, 30 de septiembre de 2026. Descargar (94 KB), SHA-256 4909ff8402b3244711bc13bac96cfc22810ee33d48f80885f87e44809572cdd0. Los pasos de instalación están al final de esta página, y el mismo texto se encuentra en INSTALL.md dentro del archivo. El código fuente, las pruebas y las versiones están en GitHub.

Para quién es

Empresas que administran servidores cPanel & WHM para terceros. Lo instalas una vez como root y aparece en cPanel » Email para los paquetes que elijas. Hasta que lo actives en Feature Manager, los clientes no verán nada nuevo.

Sin esta extensión, un cliente que quiera saber por qué sus emails llegan a spam tiene que buscar una herramienta de prueba, abrir un cliente de correo y enviar un email manualmente. Con ella, la prueba es un botón junto a sus buzones, y el email sale realmente de tu servidor, con su IP, su nombre HELO, su firma DKIM y cualquier relay por el que pase.

Qué obtienen los clientes en cPanel

Prueba

El cliente elige un buzón y envía el email de prueba estándar (un email personal breve en inglés, con una parte de texto y otra en HTML) o su propio mensaje. Para enviar su propio mensaje, pega un asunto, el HTML y una versión opcional en texto sin formato, y se envía exactamente como lo ha pegado. Exim lo envía como cualquier otro email de esa cuenta. Aproximadamente un minuto después, el informe aparece en la misma página con las 42 comprobaciones: SPF, DKIM, DMARC y alineación, DNS inverso y HELO, TLS, listas de bloqueo de IP, SpamAssassin y Rspamd, los requisitos para remitentes publicados por Gmail y Yahoo, y el contenido. Hay dos puntuaciones, una técnica sobre 100 y la clásica de 0 a 10.

«Comprobar la carpeta en los proveedores de correo» está marcado de forma predeterminada. Con esta opción, también se envía una copia del email a cada uno de nuestros buzones de prueba, unos 30 emails en 14 proveedores, incluidos Gmail, Outlook, Yahoo, GMX y Proton. En Gmail son buzones de prueba públicos, donde cualquiera puede ver el asunto, el nombre del remitente y la carpeta. La tabla se va completando durante un máximo de 30 minutos y muestra Bandeja de entrada, Spam o Promociones para cada proveedor. Si un proveedor rechaza el email directamente, la tabla lo indica y muestra la respuesta de su servidor, incluido el código SMTP, tomada del registro de Exim en tu servidor.

Debajo de las puntuaciones aparece Qué corregir. Si el DNS del dominio está en tu servidor, cPanel puede corregir DKIM, SPF y DMARC con un botón. El plugin muestra el registro tal como está ahora y cómo quedará, y pide confirmación antes de cambiarlo. Si el DNS está alojado en otro lugar, el cliente obtiene el registro exacto que debe copiar, con su nombre, tipo y valor. El DNS inverso y el registro A del propio servidor aparecen en un grupo separado dirigido al administrador del servidor, con los valores ya rellenados. Unos minutos después de las comprobaciones aparece un plan escrito de Email Spam Tester, y «Comprobar de nuevo» envía un email nuevo una vez añadidos los registros.

Historial

Todas las pruebas que ha enviado la cuenta, empezando por la más reciente, con la fecha, el buzón, qué email se envió, ambas puntuaciones y el recuento de carpetas. Un gráfico muestra la puntuación de una prueba a otra. Cada prueba incluye las comprobaciones que han cambiado desde la prueba anterior del mismo dominio, por lo que una comprobación de DKIM que haya pasado de fallar a superarse después de una corrección aparece directamente en la fila. Al abrir una prueba se muestra su informe y, para cada proveedor, la respuesta de los servidores receptores. Las últimas 200 pruebas de cada cuenta se guardan en tu servidor.

Monitorización continua

Una prueba desde un buzón muestra cómo sale el correo de ese buzón. El problema clásico de cPanel está en otro lugar. Un sitio de WordPress o un formulario de contacto envía con el remitente del sobre user@hostname, la alineación de SPF se rompe y ninguna prueba desde un buzón lo mostrará jamás. La monitorización sí lo hace.

La copia invisible que crea la monitorización sale de tu servidor por la misma ruta que el email, desde la misma IP, con el mismo HELO y la misma firma DKIM. Exim la crea para cada email enviado por un dominio monitorizado y la entrega a una dirección privada que pertenece al dominio, por lo que su informe describe la ruta real, mientras que el email llega a sus destinatarios sin cambios.

La pestaña Monitorización muestra los emails del dominio como un flujo. Cada uno incluye el dominio del destinatario, nunca la dirección, su origen y qué ha fallado. Los orígenes son el webmail, un cliente de correo, PHP o WordPress, y los scripts que llaman a sendmail. Encima del flujo aparecen un resumen de una línea de las últimas 24 horas y las alertas: DKIM ha dejado de superarse, SPF o DMARC fallan para un origen, la IP de envío está en una lista de bloqueo o los servidores receptores rechazan emails. Al abrir cualquier email se muestra un informe técnico de sus comprobaciones, sin incluir las cabeceras del email, y el cliente puede solicitar un plan generado por AI.

La monitorización permanece desactivada hasta que el administrador la autoriza en el servidor. Después, cada cliente la activa para sus propios dominios.

Qué obtienes en WHM

WHM » Plugins » Email Spam Tester es una sola página.

Precio

Gratis por ahora, con monitorización incluida. No hay que crear ninguna cuenta en email-spam-tester.com ni pagar nada en este momento. Si eso cambia alguna vez, se anunciará primero en el registro de cambios.

Datos y privacidad

Qué sale de su servidor:

Un informe de prueba funciona igual que en el sitio: permanece disponible en su enlace y cualquiera que tenga el enlace puede abrirlo, incluidos el asunto y el remitente. El propio email se elimina una hora después de llegar, una vez realizadas las comprobaciones, y hasta entonces cualquiera que tenga el enlace puede leerlo completo. La parte de Gmail de la comprobación de carpetas también es pública, como se describe arriba, por lo que es mejor probar los emails confidenciales sin ella.

Las copias de supervisión son correspondencia real y sus informes son privados. Solo el plugin de su servidor puede abrirlos mediante la clave de instalación, y no existe ningún enlace público. Cada copia se elimina dos días después de llegar y su informe, después de 90 días. El historial y el registro de supervisión permanecen en su servidor.

La página de privacidad contiene la política completa.

Preguntas que hacen los proveedores de hosting

¿Modifica el DNS por sí solo?

No. Un registro solo cambia cuando el cliente pulsa el botón situado junto a un problema detectado y confirma el antes y el después, y únicamente cuando tu servidor aloja el DNS del dominio. Los botones de SPF y DMARC solo crean un registro si falta. Si ya existe uno, se muestra combinado para que el cliente lo copie manualmente, y el botón nunca lo sustituye. El botón de DKIM puede sustituir un registro que no coincida con la clave del servidor, pero solo si hay exactamente uno. Cada cambio se guarda en el registro de actividad de la cuenta y en otro ubicado en /var/cpanel/email_spam_tester/, que solo root puede editar, junto con el registro DNS que se proporcionaba antes del cambio.

Mi servidor retransmite el correo saliente mediante un smarthost. ¿Sigue funcionando?

Debería, pero todavía no lo he probado detrás de un smarthost. El email de prueba sale del mismo modo que todo el correo de la cuenta, por lo que el informe muestra la IP y el nombre del relay, ya que eso es lo que ven los destinatarios. Corregir su DNS inverso o sacarlo de una lista de bloqueo corresponde entonces a quien administre el relay. Se pierde un dato. Los motivos que da un proveedor para rechazar un email proceden del registro de Exim de tu servidor y, cuando se usa un relay, ese registro solo contiene la respuesta del relay. Un email que el relay haya aceptado pero que un proveedor rechace después puede aparecer como "Not received". Las copias de monitorización también pasan por el relay.

¿La monitorización afecta a la entregabilidad?

El email del cliente sale como antes, sin cambios, y los destinatarios no ven nada, ya que la copia es un envío independiente a nuestra dirección. Lo que sí afecta es al límite de envíos por hora. Cada copia cuenta una vez para el límite "max emails per hour" del dominio, por lo que un dominio que esté cerca de su límite lo alcanza antes, como máximo 20 emails antes por hora con la configuración predeterminada. Una vez alcanzado ese número de copias en una hora, los emails se envían sin copia.

¿La prueba de ubicación en bandeja de entrada también cuenta para el límite por hora?

Sí, envía unos 30 emails. Antes de empezar, el plugin comprueba cuántos emails puede enviar todavía el dominio durante esa hora e informa al cliente si no son suficientes.

¿Qué se ha probado en un entorno real?

Se admite cPanel & WHM 134 o una versión posterior. Hasta ahora lo he probado en un entorno real con la versión 138 (11.138) en Ubuntu 24.04. Esto incluye la instalación y una actualización, el registro, el interruptor de la función, las pruebas con y sin la prueba de ubicación en bandeja de entrada, el historial y la monitorización de emails de los cuatro orígenes. Aún no se han probado en un entorno real los otros sistemas operativos, CloudLinux con CageFS, los botones de DKIM, SPF y DMARC (el DNS del servidor de prueba está alojado en otro lugar), un servidor que retransmita mediante un smarthost ni la desactivación de la monitorización para todo el servidor, que solo se ha probado mediante una ejecución simulada. Si ejecutas el plugin en uno de esos entornos, me gustaría saber cómo te fue.

Instalación paso a paso

Esta guía presupone que tienes acceso root al servidor y que no has usado antes plugins de WHM. Todos los comandos que aparecen a continuación están pensados para copiarlos y pegarlos tal cual.

1. Qué necesitas

Puedes comprobar ambas conexiones antes de instalar. El primer comando debe mostrar una línea que empiece por 220 y el segundo debe mostrar 200:

timeout 10 bash -c 'exec 3<>/dev/tcp/t.email-spam-tester.com/25 && head -1 <&3'
curl -s -o /dev/null -w '%{http_code}\n' https://email-spam-tester.com/health

2. Instalación

Inicia sesión por SSH como root y ejecuta estos comandos uno por uno.

Ve al directorio personal de root, donde se instalará el plugin:

cd /root

Descarga el archivo y su suma de comprobación. Si funciona, no se muestra nada:

curl -fsSLO https://email-spam-tester.com/cpanel/latest.tar.gz
curl -fsSLO https://email-spam-tester.com/cpanel/latest.tar.gz.sha256

Comprueba que la descarga esté intacta. Debes ver latest.tar.gz: OK. Si ves FAILED, vuelve a descargarla y no continúes:

sha256sum -c latest.tar.gz.sha256

Descomprímela en /root/email-spam-tester-cpanel. De nuevo, no se muestra nada:

mkdir -p email-spam-tester-cpanel
tar -xzf latest.tar.gz -C email-spam-tester-cpanel --strip-components=1

Ejecuta el instalador. Primero comprueba todos los archivos y después los copia en su lugar:

cd /root/email-spam-tester-cpanel && ./install.sh

Debes ver Checking Perl syntax…, Root module…, cPanel pages…, varias líneas del instalador de plugins de cPanel, Switching the feature off in all feature lists… y WHM page…. Las últimas líneas deben ser:

Installed. Next: WHM » Plugins » Email Spam Tester » Register this server.
Customers do not see it yet: turn on email_spam_tester in WHM » Feature Manager
for the feature lists (packages) that should have it.

Conserva el directorio /root/email-spam-tester-cpanel. Las actualizaciones y uninstall.sh se ejecutan desde él.

3. Registrar el servidor en WHM

  1. Inicia sesión en WHM como root.
  2. En el menú de la izquierda, abre Plugins y haz clic en Email Spam Tester.
  3. El cuadro Registration indica "Not registered". El campo de email del administrador que aparece debajo es opcional.
  4. Haz clic en Register this server.

En la parte superior aparece una línea verde, "Registered. Installation #…", y el cuadro muestra ahora Status: Registered, junto con el número de instalación y el principio de la clave. El registro envía el hostname del servidor, la versión de cPanel, la versión del plugin, el número de cuentas y el email si proporcionaste uno. La clave se guarda en /var/cpanel/email_spam_tester/config.json y solo root puede leerla.

En la misma página puedes cambiar los límites diarios: de forma predeterminada, 20 pruebas por cuenta y 500 por servidor.

4. Activarlo para los clientes

Después de la instalación, nadie ve el plugin. Tú eliges qué paquetes lo incluyen.

  1. Averigua qué lista de funciones usan tus paquetes: WHM » Packages » Edit a Package, elige un paquete y consulta el campo Feature List. En muchos servidores es default.
  2. Abre WHM » Packages » Feature Manager.
  3. En Manage feature list, selecciona esa lista y haz clic en Edit.
  4. Busca Email Spam Tester en la lista (la función de búsqueda del navegador ayuda si la lista es larga), marca su casilla y haz clic en Save.
  5. Repite el proceso con cada lista de funciones que deba incluirlo.

Los clientes que usan esos paquetes ahora ven Email Spam Tester en cPanel, dentro de la sección Email. Recuerda marcarlo también en las listas de funciones que crees más adelante.

5. Enviar la primera prueba como cliente

Inicia sesión en cPanel como uno de esos clientes. Desde WHM puedes usar Account Information » List Accounts y el icono de cPanel situado junto a la cuenta.

  1. Abre Email » Email Spam Tester. La página tiene tres pestañas: Test, History y Monitoring.
  2. En la pestaña Test, elige un buzón. Si la cuenta no tiene ninguno, crea primero uno en Email » Email Accounts.
  3. Deja seleccionada la opción Standard test email y marcada la casilla Check the folder at email providers.
  4. Haz clic en Send test.

La página muestra lo que está haciendo: comprobar los registros DNS, enviar el email y esperar a que llegue. Aproximadamente un minuto después aparece el informe. Incluye dos puntuaciones, una técnica sobre 100 y la clásica de 0 a 10, y debajo aparece What to fix. Esa lista ofrece un botón cuando cPanel puede corregir un registro en este servidor, el registro exacto que debes copiar cuando DNS está alojado en otro lugar y los valores de DNS inverso para ti como administrador del servidor. Después aparecen todas las comprobaciones. Where the email landed se completa durante los siguientes 30 minutos con Inbox, Spam o Promotions para cada proveedor de correo, además de la respuesta del proveedor cuando rechaza el email. Unos minutos después de las comprobaciones aparece un plan por escrito.

La comprobación de carpetas envía unos 30 emails. Si el límite de envío por hora del dominio no tiene capacidad para ellos, la página lo indica antes de enviar nada.

6. Monitorización constante (opcional)

Cuando la monitorización está activada para un dominio, Exim envía una copia invisible de cada email enviado por el dominio a una dirección privada de Email Spam Tester, y el cliente ve un informe técnico de cada email. Los destinatarios no ven nada. Cada copia cuenta una vez para el límite de envío por hora del dominio, con un máximo predeterminado de 20 copias por hora.

  1. En WHM » Plugins » Email Spam Tester, busca el cuadro Constant monitoring y haz clic en Allow constant monitoring on this server. El plugin comprueba la configuración de Exim, añade su regla, recompila y reinicia Exim, y revierte todos los cambios si falla algún paso. Cuando funciona, ves "Constant monitoring is allowed on this server: the Exim rule is in, Exim was rebuilt and restarted." y el cuadro muestra la regla como Active.
  2. El cliente abre la pestaña Monitoring en cPanel, hace clic en Turn on junto a un dominio y confirma. Los emails enviados a partir de ese momento aparecen en la pestaña en uno o dos minutos.

Para detenerla en todo el servidor, haz clic en Disable monitoring on the whole server en el mismo cuadro.

7. Actualización

Descarga y descomprime la nueva versión sobre la anterior y vuelve a ejecutar el instalador:

cd /root
curl -fsSLO https://email-spam-tester.com/cpanel/latest.tar.gz
curl -fsSLO https://email-spam-tester.com/cpanel/latest.tar.gz.sha256
sha256sum -c latest.tar.gz.sha256
tar -xzf latest.tar.gz -C email-spam-tester-cpanel --strip-components=1
cd /root/email-spam-tester-cpanel && ./install.sh

Debe terminar con "Updated. The registration, limits and feature settings are unchanged." Si la monitorización está permitida, el instalador también actualiza la regla de Exim.

8. Desinstalación

cd /root/email-spam-tester-cpanel && ./uninstall.sh

Esto elimina la regla de monitorización de Exim, desactiva la monitorización para todos los dominios y elimina el plugin de cPanel y WHM. Termina con "Removed. The key is kept in /var/cpanel/email_spam_tester (use --purge to delete it)." Ejecuta ./uninstall.sh --purge en su lugar para eliminar también la clave.

Los registros DNS nunca se modifican, incluidos los que los clientes hayan creado con los botones del plugin.

9. Si algo ha salido mal

Los clientes no ven el icono. La función está desactivada en la lista de funciones de su paquete. Repite el paso 4 y comprueba qué lista de funciones usa realmente su paquete.

La página indica "The server administrator has not activated Email Spam Tester in WHM yet". El servidor no está registrado. Completa el paso 3.

El registro falla. El mensaje rojo en la parte superior de la página de WHM indica el motivo. Lo más habitual es que el servidor no pueda acceder a email-spam-tester.com mediante HTTPS. Ejecuta la comprobación con curl del paso 1, que debe mostrar 200, y revisa las reglas del firewall para el tráfico saliente.

La prueba indica que el mensaje no ha llegado en 3 minutos. El email está atascado en la cola o ha sido rechazado. Ejecuta la comprobación del puerto 25 del paso 1. Si no muestra nada o agota el tiempo de espera, tu proveedor bloquea el puerto de salida 25. Pídele que lo abra o envía el correo mediante un relay. Para ver qué hizo Exim con el email:

grep 't.email-spam-tester.com' /var/log/exim_mainlog | tail -5

El cliente también puede consultar Email » Track Delivery para el buzón.

Las páginas en cpanel.<domain> fallan a veces con un error 502. Se trata del proxy de Apache para los subdominios de servicio de cPanel y afecta a todas las páginas de cPanel, no solo a este plugin. La dirección directa https://<domain>:2083 no se ve afectada. Para corregirlo, abre WHM » Service Configuration » Apache Configuration » Include Editor, elige Pre VirtualHost Include para todas las versiones, añade estas líneas y guarda:

<IfModule setenvif_module>
    SetEnvIfNoCase Host "^(cpanel|webmail|whm|webdisk|cpcalendars|cpcontacts)\." proxy-nokeepalive=1 proxy-initial-not-pooled=1
</IfModule>

Después, aplica el cambio:

apachectl configtest && /scripts/rebuildhttpdconf && /scripts/restartsrv_httpd

10. Soporte

Escribe a hi@email-spam-tester.com. Incluye la salida de ./install.sh si la instalación ha fallado, o el enlace al informe si una prueba parece incorrecta. Puedes consultar más información sobre el plugin en https://email-spam-tester.com/cpanel-integration/.