MagnusBilling
Operations

Cómo probar un servidor SMTP antes de configurarlo en MagnusBilling

Prueba puertos SMTP, TLS, autenticación y entrega desde el servidor MagnusBilling antes de guardar las credenciales del proveedor.

ENPTES

Cuando el envío de correo se bloquea o falla, la causa suele estar en la ruta entre el servidor MagnusBilling y el proveedor SMTP externo. Prueba DNS, TCP, TLS y autenticación desde el servidor para separar restricciones de red de errores de credenciales o de la aplicación.

1. Comprueba si el puerto SMTP está abierto

Confirma el hostname y el modo de cifrado con el proveedor. Los puertos habituales son 465 para TLS implícito, 587 para STARTTLS y, cuando el proveedor lo ofrece, 2525 como alternativa.

Una conexión TCP correcta confirma que el host y el puerto son accesibles. Un timeout suele indicar enrutamiento o firewall; una conexión rechazada significa que el destino respondió, pero ningún servicio aceptó la conexión.
  • 465 — SSL/TLS
  • 587 — STARTTLS
  • 2525 — provider-specific alternative
nc -vz -w5 smtp.your-domain.example 465
nc -vz -w5 smtp.your-domain.example 587
nc -vz -w5 smtp.your-domain.example 2525

2. Prueba el handshake TLS

El puerto 465 comienza dentro de TLS. El 587 comienza en texto claro y se actualiza mediante STARTTLS, por lo que los comandos OpenSSL son distintos.

  • Busca un banner SMTP que comience por 220.
  • Comprueba el hostname y la cadena del certificado.
  • Verify return code: 0 (ok) indica que OpenSSL aceptó la cadena en ese servidor.
# Port 465: implicit TLS
openssl s_client -connect smtp.your-domain.example:465 -servername smtp.your-domain.example -crlf -quiet

# Port 587: STARTTLS
openssl s_client -starttls smtp -connect smtp.your-domain.example:587 -servername smtp.your-domain.example -crlf -quiet

3. Realiza una prueba completa de autenticación con Swaks

Swaks prueba DNS, TCP, TLS, SMTP AUTH y el envío en una sola transacción. Sustituye todos los valores de ejemplo y utiliza un destinatario de prueba. --tls-on-connect corresponde al TLS implícito del puerto 465; usa --tls en el puerto 587.

apt update
apt install swaks -y

# Port 465
swaks --server smtp.your-domain.example --port 465 \
  --to recipient@example.net --from sender@your-domain.example \
  --auth LOGIN --auth-user sender@your-domain.example \
  --auth-password 'APPLICATION_PASSWORD' --tls-on-connect \
  --header 'Subject: MagnusBilling SMTP test' \
  --body 'SMTP test from the MagnusBilling server'

# For port 587, replace --tls-on-connect with --tls

4. Diagnostica problemas habituales

  • SMTP saliente bloqueado: solicita al centro de datos que permita el destino y puerto exactos o usa una alternativa ofrecida por el proveedor, como 2525.
  • Fallo TLS: verifica la hora del sistema, DNS, hostname SNI y el paquete de certificados CA.
  • Autenticación rechazada: comprueba el usuario completo, la contraseña o contraseña de aplicación y si el remitente debe coincidir con la cuenta autenticada.
  • Mensaje aceptado pero no entregado: revisa la respuesta SMTP, el registro del proveedor, la política antispam, SPF, DKIM y DMARC.
timedatectl status
apt update
apt install ca-certificates -y
update-ca-certificates

5. Configura MagnusBilling solamente después de las pruebas

Guarda el mismo hostname, puerto, cifrado, usuario e identidad de remitente que funcionaron en la prueba por línea de comandos. Envía un mensaje de prueba desde MagnusBilling y comprueba el registro de la aplicación y el buzón de destino.

Seguridad de credenciales y pruebas

  • No pegues contraseñas SMTP reales en tickets, capturas de pantalla ni en el historial del shell.
  • Prefiere una contraseña de aplicación o una cuenta SMTP dedicada.
  • Elimina los mensajes de prueba y cambia cualquier credencial expuesta durante el diagnóstico.
  • No confundas un puerto accesible con una entrega autenticada; completa la prueba con Swaks.

Artículo original

Esta edición restaura el flujo completo de conectividad, TLS, Swaks, diagnóstico y configuración de MagnusBilling de la guía archivada.

Leer el artículo original archivado