En resumen
El mejor lugar para frenar el spam en cPanel es Exim, antes de aceptar el mensaje. En WHM › Service Configuration › Exim Configuration Manager › Basic Editor conviene activar las listas RBL de Spamhaus y SpamCop, el rechazo de fallas SPF, la protección contra ataques de diccionario, el filtro de adjuntos peligrosos y la verificación DKIM. Cada rechazo en SMTP le avisa al remitente legítimo de inmediato y ahorra a SpamAssassin el trabajo de analizar ese correo.
Por qué filtrar en Exim y no solo con SpamAssassin
Exim es el servidor de correo de cPanel. Durante la conversación SMTP, antes de recibir el mensaje completo, ya sabe la IP del remitente, el nombre que usó en el saludo (HELO), la dirección del sobre y los destinatarios. Con eso puede rechazar gran parte del spam sin leer una sola línea del contenido.
| Rechazo en Exim (SMTP) | Marca de SpamAssassin | |
|---|---|---|
| Momento | Antes de aceptar el mensaje | Después de recibirlo completo |
| Costo para el servidor | Muy bajo | Alto: analiza el contenido entero |
| Si es un falso positivo | El remitente recibe un rebote y sabe que no llegó | El correo queda en la carpeta de spam y nadie lo ve |
| Dónde termina el spam | No ocupa espacio en ningún buzón | Ocupa espacio en la carpeta de spam |
Los nombres y la ubicación de las opciones pueden variar un poco según la versión de cPanel. Si no encuentras una, usa el buscador de la parte superior del Basic Editor.
Listas RBL: rechazar IPs con mala reputación
Una RBL (lista de bloqueo por DNS) es una base de IPs que envían spam. Exim consulta la IP de cada conexión y la rechaza si aparece. En el Basic Editor, pestaña RBLs (en versiones antiguas, dentro de ACL Options):
| Opción | Valor recomendado | Comentario |
|---|---|---|
| RBL: zen.spamhaus.org | On | La lista más usada. Combina SBL, XBL y PBL. |
| RBL: bl.spamcop.net | On | Basada en denuncias de usuarios; complementa a Spamhaus. |
| Exempt servers in the same IPv4 class C / IPv6 /64 from RBL checks | On | Evita bloquear a tus propios servidores vecinos. |
| Exempt IP addresses in the Greylisting "Trusted Hosts" list | On | Respeta las excepciones que ya definiste. |
| Manage Custom RBLs | Opcional | Para agregar otras listas, como la DQS de Spamhaus. |
Para probar que la RBL responde, consulta la dirección de prueba que Spamhaus mantiene listada siempre:
# Debe devolver 127.0.0.2 y otros códigos 127.0.0.x
dig +short 2.0.0.127.zen.spamhaus.org
# Si devuelve 127.255.255.x, la consulta está siendo rechazada (resolver público o exceso de consultas)Opciones ACL que frenan spam y phishing
La pestaña ACL Options decide qué conexiones acepta Exim. Estas son las que más diferencia hacen:
| Opción | Qué hace | Recomendación |
|---|---|---|
| Dictionary attack protection | Corta conexiones que prueban muchas direcciones inexistentes | On |
| Reject SPF failures | Rechaza correos cuyo dominio declara con SPF "-all" que esa IP no puede enviar | On |
| Ratelimit suspicious SMTP servers | Limita a servidores que se comportan como spammers | On |
| Require HELO before MAIL | Exige el saludo SMTP antes de enviar | On |
| Reject remote mail sent to the server's hostname | Rechaza correo dirigido a usuario@hostname-del-servidor, un blanco típico del spam | On |
| Introduce a delay into the SMTP transaction for unknown hosts and messages detected as spam | Agrega pausas que muchos bots no esperan | On |
| Sender verification callouts | Pregunta al servidor del remitente si la dirección existe | Off: genera tráfico, retrasos y puede incluir tu IP en listas |
La opción "Reject SPF failures" solo actúa cuando el dominio remitente publica un SPF estricto. Para dominios que usan "~all" el correo pasa y lo evalúan SpamAssassin o tu filtro. Más sobre SPF en configurar SPF, DKIM y DMARC en cPanel.
Verificar DKIM y DMARC del correo entrante
En la pestaña Security (o Mail, según la versión) activa Allow DKIM verification for incoming messages. Exim agrega el resultado al encabezado Authentication-Results, que después usan SpamAssassin y los filtros de correo.
Rechazar todos los fallos de DKIM no es buena idea: los reenvíos y las listas de correo rompen firmas legítimas todo el tiempo. Es más seguro dejar que el resultado sume puntos en SpamAssassin y aplicar la política DMARC que publica cada dominio, que es justamente la forma en que el dueño del dominio dice qué hacer con los fallos.
Filtrar adjuntos peligrosos
En la pestaña Filters, la opción Attachments: Filter messages with dangerous attachments rechaza correos con ejecutables y scripts (.exe, .scr, .pif, .bat, .vbs y similares), incluidos los que vienen dentro de un ZIP sin contraseña. Actívala: casi ningún negocio legítimo envía esos formatos por correo.
El malware actual ya no viaja así. Usa HTML, ISO, archivos de OneNote, PDF con enlaces o ZIP con contraseña, que este filtro no bloquea. Lo explicamos en adjuntos maliciosos y HTML smuggling.
En la misma pestaña está System Filter File, el filtro de sistema de Exim que se aplica a todo el correo del servidor. Cómo usarlo para reglas propias: filtros de correo en cPanel.
Listas de acceso: bloquear o confiar en IPs concretas
La pestaña Access Lists guarda excepciones en archivos de texto, una entrada por línea:
| Lista | Archivo | Uso |
|---|---|---|
| Blacklisted SMTP IP addresses | /etc/spammeripblocks | IPs que nunca deben entregar correo, como un servidor que te ataca |
| Trusted SMTP IP addresses | /etc/trustedmailhosts | Servidores propios, como un escáner o una aplicación interna, que no deben pasar por RBL ni verificaciones |
| Hosts to skip SMTP checks | /etc/skipsmtpcheckhosts | Servidores conocidos que deben saltarse las verificaciones SMTP, como un reenviador que rompe SPF de forma legítima |
Cada IP de confianza se salta controles importantes. Agrega solo servidores que administras tú y revisa la lista cada pocos meses.
Cómo comprobar que funciona
Después de guardar, WHM reinicia Exim. Revisa los rechazos en el log principal durante unos días para detectar falsos positivos:
# Rechazos por RBL hoy, agrupados por lista
grep "$(date +%F)" /var/log/exim_mainlog | grep -o "is in an RBL on [^ ,]*" | sort | uniq -c
# Rechazos por SPF
grep "$(date +%F)" /var/log/exim_rejectlog | grep -ic "spf"
# Ver por qué se rechazó un remitente concreto
grep "remitente@dominio.cl" /var/log/exim_rejectlog | tailSi un cliente reclama que no le llega correo de alguien, el log de rechazos dice qué regla lo frenó. Antes de agregar excepciones, revisa si el remitente tiene un problema real, como estar en una lista negra o tener el SPF mal configurado. Si es tu propia IP la que está listada, sigue IP en lista negra: cómo saberlo y cómo salir.
Preguntas frecuentes
¿Dónde se configura Exim en cPanel?
En WHM › Service Configuration › Exim Configuration Manager. El Basic Editor tiene las opciones agrupadas por pestañas; el Advanced Editor permite editar la configuración directamente y conviene usarlo solo si sabes lo que haces.
¿Activar las RBL puede bloquear correo legítimo?
Puede pasar, sobre todo con remitentes que usan servidores mal mantenidos. Spamhaus ZEN tiene muy pocos falsos positivos. Revisa el log de rechazos la primera semana y agrega excepciones solo para remitentes verificados.
¿Exim reemplaza a SpamAssassin?
No. Exim frena por la conexión y el remitente; SpamAssassin analiza el contenido. Son capas que se complementan, y ninguna de las dos está pensada para el phishing dirigido.
¿Qué hago si cambio algo y deja de llegar el correo?
El Exim Configuration Manager guarda copias de la configuración en la pestaña Backup. Restaura la anterior y revisa /var/log/exim_paniclog y /var/log/exim_rejectlog para ver qué falló.
Antispam y antiphishing para todo tu servidor cPanel
Exim frena el spam por reputación. Clisec trabaja en la misma capa SMTP y agrega el análisis de enlaces, adjuntos y suplantación que detecta el phishing dirigido, sin cambiar registros MX.