El diagnóstico de los servidores de correo desempeña un papel fundamental para garantizar el correcto funcionamiento del correo electrónico. Permite identificar y resolver problemas relacionados con el envío, la recepción y el procesamiento de mensajes de correo electrónico. Uno de los factores clave del diagnóstico es el uso de filtros en los servidores de correo, que ofrecen protección contra spam, virus y otras amenazas de seguridad.
Este artículo analizará tanto los servicios externos que ayudan a verificar el funcionamiento del servidor de correo de forma remota, como las herramientas internas que permiten realizar diagnósticos directamente en el servidor. Todas las acciones, a modo de ejemplo, se realizarán en un servidor privado con sistema operativo Ubuntu 20.04.6 y una solución configurada con Postfix y Dovecot; sin embargo, los métodos presentados son aplicables a casi cualquier sistema operativo y cliente de correo.
Servicios en línea para la comprobación del servidor de correo
El primer y más importante paso es la verificación mediante servicios externos en línea. De esta forma, puede comprobar el servidor de correo para detectar exposiciones, la configuración de SPF, DKIM y DMARC, y también la reputación de las direcciones IP desde las que se envían los correos electrónicos. En la mayoría de los casos, usar solo estas herramientas puede dar los resultados deseados.
Consideremos en detalle los principales servicios de verificación y su funcionalidad:
MxToolBox nos permite comprobar casi todos los parámetros de los servidores de correo disponibles. El servicio proporciona herramientas para comprobar todos los registros de dominio, la disponibilidad general del dominio, los certificados SSL, el estado de la dirección IP y mucho más. Para realizar un diagnóstico, debe ir a la página del servicio , introducir la dirección IP o el dominio, seleccionar la herramienta necesaria y ejecutar la comprobación.
En la captura de pantalla se muestra una lista detallada de todas las herramientas disponibles:
Como se vio anteriormente, el sitio web también verifica si una IP o dominio está en listas negras. Se verifican todas las fuentes principales: Spamhaus, Barracuda, SURBL y muchas otras. Si la dirección está en alguna base de datos, el servicio proporcionará información sobre los motivos de su inclusión en la lista negra. De esta manera, podrá tomar medidas para corregir el problema.
MailTester es la segunda herramienta más popular para comprobar servidores de correo. Este servicio permite a los usuarios enviar un correo de prueba a una dirección única y recibir un informe detallado sobre la calidad del mensaje enviado. A diferencia de MxToolBox, este recurso se centra más en la mejora del servicio que en el diagnóstico del servidor. Sin embargo, esto no significa que no pueda realizar un análisis completo del servidor del remitente. Prueba la entrega de correo, realiza investigaciones y ofrece recomendaciones para mejorar el servicio de correo en general.
Para completar la verificación, simplemente visite el sitio web del recurso y obtenga una dirección de correo electrónico única a la que desea enviar un correo. Después de enviarlo, debe seleccionar "Verificar evaluación" y esperar a que la página se actualice. Un buen resultado se ve así:
En caso de cualquier problema o recomendación, el servicio lo reportará en la sección correspondiente del informe.
Los servicios mencionados son suficientes para una comprobación completa del servidor de correo. Le permiten identificar posibles problemas con la entrega de correo electrónico, verificar su configuración de seguridad y recibir recomendaciones para solucionar posibles errores. A continuación, realizaremos pruebas en el servidor.
Comprobación de la configuración del servidor de correo
Comprobando registros DNS
Uno de los problemas más comunes en el servidor de correo es la configuración incorrecta de los registros DNS. Puede verificar su corrección mediante los servicios de terceros mencionados anteriormente. Sin embargo, en algunos casos, el correo electrónico simplemente no se entregará a un buzón de correo de terceros. En este caso, debe verificar manualmente todas las entradas. Para ello, vaya al editor DNS e inicie la verificación. Como ejemplo, tomemos los siguientes datos de origen: dominio profit.com, dirección IP 11.22.33.44, donde @ puede usarse como nombre de dominio, si el registrador no permite completar este formulario. No olvide cambiar los valores por los suyos.
Los registros A definen las direcciones IP de los servidores de correo. En pocas palabras, dirigen el dominio a la dirección del servidor de correo. Debería verse así:
| Tipo | Maestro | Valor | TTL |
| A | @ | 11.22.33.44 | 1 min |
Los registros MX son fundamentales para un servidor de correo, ya que determinan la ruta de entrega del correo. En otras palabras, dirigen el correo a un buzón.
| Tipo | Maestro | Valor | TTL |
| MX | @ | correo.profit.com | 1 min |
Los registros SPF apuntan a servidores que pueden enviar correos electrónicos desde un dominio específico . Tenga en cuenta que se publican en formato TXT. Solo se indica uno de los valores posibles.
| Tipo | Maestro | Valor | TTL |
| TXT | @ | v=spf1 ip4:11.22.33.44 -all | 1 min |
Un registro DKIM se utiliza para verificar la autenticidad de un correo electrónico. Debe contener la clave pública generada . Asimismo, solo se indica una de las opciones de valor.
| Tipo | Maestro | Valor | TTL |
| TXT | s1._domainkey.profit.com | v=DKIM1; k=rsa; p=QWIOJNDSLUB… | 1 min |
El registro DMARC es la siguiente y última etapa de protección. Se aplica a los correos electrónicos que no han superado las comprobaciones SPF y DKIM.
| Tipo | Maestro | Valor | TTL |
| TXT | _dmarc.profit.com | v=DMARC1; p=ninguno; pct=100; rua=mailto:[email protected] | 1 min |
Además, uno de los registros más importantes para un servidor de correo es el registro PTR . Se podría decir que funciona de forma inversa al registro A , es decir, asocia una dirección IP con un dominio. Este tipo de registro solo se puede añadir mediante una solicitud al soporte técnico del proveedor de hosting y se puede verificar con el comando: nslookup IP , donde IP es la dirección de su servidor. La respuesta debería mostrar el dominio asociado.
Comprobación del puerto
Los problemas con los puertos cerrados también pueden provocar un fallo total del servidor de correo. En primer lugar, es necesario consultar con el proveedor si existen restricciones en los puertos necesarios. Nosotros no limitamos a nuestros clientes el número de puertos abiertos en ningún servidor dedicado o virtual . Sin embargo, muchos proveedores de alojamiento web actúan de forma diferente.
Puedes comprobar los puertos abiertos utilizando la utilidad netstat preinstalada . Basta con introducir el comando:
netstat – nat
Con el servidor SMTP/IMAP/POP3 instalado y configurado, veremos los puertos abiertos correspondientes:
Como podemos ver en la captura de pantalla, los principales puertos del cliente de correo están abiertos: SMTP (25) / IMAPS (143, 993) / POP3S (110, 995). También puede comprobar el servicio de correo en cada puerto individualmente. La herramienta telnet le ayudará con esto. Veamos el ejemplo de POP3, es decir, el puerto 110:
telnet mail.yourdomain.com 110
Salimos de la herramienta con el comando `exit` y verificamos los puertos necesarios restantes siguiendo el mismo principio. Cabe destacar que esta herramienta también permite probar el envío de correos electrónicos sin usar una interfaz adicional. Esto puede ser útil cuando el usuario solo necesita configurar el servidor y planea enviar correos localmente.
En caso de dificultades al abrir puertos, debe prestar atención al cortafuegos instalado. La mayoría de las distribuciones vienen con Iptables/Firewalld preinstalado.
Para iptables utilizamos los siguientes comandos:
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -A INPUT -p tcp --dport 995 -j ACCEPT
iptables -A INPUT -p tcp --dport 143 -j ACCEPT
iptables -A INPUT -p tcp --dport 993 -j ACCEPT
Para firewalld:
firewall-cmd --permanent --add-port=25/tcp
firewall-cmd --permanent --add-port=110/tcp
firewall-cmd --permanent --add-port=995/tcp
firewall-cmd --permanent --add-port=143/tcp
firewall-cmd --permanent --add-port=993/tcp
En algunos casos, el servicio SMTP también requiere que se abran los puertos 465 y 587 para su correcto funcionamiento. La apertura de estos puertos se realiza de la misma manera. Reinicie el servicio de firewall después de agregar nuevas reglas.
Comprobación de los certificados SSL/TLS del servidor de correo
Los certificados SSL/TLS se utilizan en el servidor de correo para garantizar la transferencia segura de datos entre el cliente y el servidor, y también confirman la autenticidad del servidor del remitente, eliminando así la posibilidad de ataques de intermediario. Sin embargo, también pueden causar problemas al enviar o recibir correos. Para iniciar el diagnóstico, es necesario comprobar si hay certificados instalados en el servidor. Comprobemos la presencia del certificado con el siguiente comando:
openssl s_client -showcerts -server mail.profit.com -connect IP:port
En este comando, debes reemplazar los valores con los tuyos: " mail.profit.com " es la dirección del servidor de correo; IP:puerto son los datos del servidor. A modo de ejemplo, comprobemos el puerto 993 , que pertenece al protocolo IMAP . Los demás protocolos se comprueban de la misma manera.
En respuesta, el servidor debe enviar los datos del certificado:
La mayoría de los clientes de correo electrónico instalan los certificados automáticamente. Sin embargo, en algunos casos, es necesario liberarlos manualmente y agregarlos a un cliente específico. Las distintas plataformas pueden requerir una instalación y configuración individual, por lo que recomendamos consultar las instrucciones para cada solución. Recomendamos usar Let's Encrypt como certificado y Certbot como herramienta auxiliar para su instalación y configuración.
Comprobación de registros
Finalmente, hemos encontrado una solución que ayuda en la mayoría de los casos, si es que existe alguno: revisar los registros del servidor de correo. La mayoría de los usuarios se engañan a sí mismos, pensando que no hay solución para su problema. Sin embargo, los clientes de correo modernos almacenan una gran cantidad de información en los registros:
- Fecha y hora de envío y recepción de correos.
- Dirección del remitente y del destinatario.
- Filtrar resultados para spam y virus.
- El estado de la cola para enviar y recibir correos.
- Acciones de administradores y usuarios relacionadas con el servidor de correo (por ejemplo, crear, eliminar buzones de correo, cambiar configuraciones).
- Errores y problemas que surgieron durante el procesamiento y entrega de correos electrónicos.
El directorio estándar donde se almacenan los registros de la mayoría de los comandos se encuentra en: / var/log/. Dependiendo de la solución utilizada, el nombre del archivo de registro específico puede variar. Por ejemplo, el archivo mail.log se encuentra en el mismo directorio para Postfix. Le recomendamos que ignore este método de diagnóstico y que utilice los registros tan pronto como aparezcan los primeros indicios de un rendimiento deficiente del cliente de correo. Consulte nuestro manual sobre cómo leer los registros de Linux.
Entendiendo cómo verificar el servidor de correo
Realizamos un diagnóstico detallado del servidor de correo. Durante las pruebas, se vieron afectadas tanto las herramientas en línea para la investigación detallada como las soluciones locales para detectar posibles problemas. Tras realizar todas las pruebas necesarias, se obtuvo una visión completa del estado actual del servidor de correo, así como recomendaciones para solucionar posibles problemas.