todas las guías

// cómo solucionarlo

"530 5.7.0 Must issue a STARTTLS command first" (y "451 5.7.3 STARTTLS is required"): cómo solucionarlo

El servidor exige una conexión cifrada antes de aceptar tu email. Activa TLS en tu app, impresora o servidor y usa el puerto correcto.

Qué significa

Tu app, tu web, tu impresora o tu servidor de correo ha intentado enviar un email sin cifrar antes la conexión, y el servidor lo ha rechazado. El mensaje suele tener este aspecto:

530 5.7.0 Must issue a STARTTLS command first

Microsoft 365 (Exchange Online) muestra un error parecido:

451 5.7.3 STARTTLS is required to send mail

STARTTLS es el comando que convierte una conexión de email normal en una conexión cifrada (TLS). La mayoría de los servidores que aceptan emails de usuarios y aplicaciones, y cada vez más servidores en general, se niegan a continuar hasta que se ha hecho. Sin él, tu contraseña y tu mensaje viajarían en texto plano.

Por qué ocurre

  • TLS está desactivado en la configuración de envío: «Cifrado: ninguno», «Usar SSL/TLS: no» o una opción parecida.
  • Puerto incorrecto. El puerto y la opción de seguridad no coinciden (ver más abajo).
  • Dispositivo o software antiguo. Impresoras, escáneres, sistemas de alarma, plugins de CMS antiguos y librerías viejas pueden conocer solo versiones antiguas de TLS, que los servidores recientes ya no aceptan, o no admitir STARTTLS en absoluto.
  • Tu propio servidor de correo envía a otro servidor que exige TLS, mientras que en tu lado TLS está desactivado o mal configurado.
  • Algo intermedio, como algunos cortafuegos o antivirus, elimina la oferta de STARTTLS de la conexión.

Los tres puertos, en pocas palabras

  • Puerto 587: para apps y usuarios que envían a través de su proveedor. Se conecta sin cifrar, luego STARTTLS y luego se inicia sesión. Elige «STARTTLS» o «TLS» en la configuración.
  • Puerto 465: el mismo uso, pero cifrado desde el primer segundo (a menudo llamado «SSL» o «TLS implícito» en la configuración). Elige «SSL/TLS».
  • Puerto 25: para servidores que hablan con otros servidores. Normalmente las apps no deberían usarlo para enviar a través de un proveedor, y muchos proveedores de internet y cloud lo bloquean.

Un error frecuente es elegir el puerto 465 con «STARTTLS», o el puerto 587 con «SSL». La conexión entonces falla o vuelve a texto plano.

Cómo comprobarlo

  1. Revisa tu configuración de envío: nombre del servidor, puerto, opción de cifrado e inicio de sesión.
  2. Prueba el servidor desde la línea de comandos:
    openssl s_client -starttls smtp -connect smtp.example.com:587
    Si ves un certificado y una respuesta 250, el servidor admite STARTTLS en ese puerto.
  3. Haz una prueba con Delivmail. Cuando tu app vuelva a enviar, envía un email a la dirección única de la página de inicio (/). El informe confirma que el email ha llegado, muestra la IP y el servidor de envío, y comprueba SPF, DKIM y DMARC para esa app.

Cómo solucionarlo

  1. Activa el cifrado en tu app, plugin o dispositivo: selecciona «STARTTLS» (o «TLS») con el puerto 587, o «SSL/TLS» con el puerto 465.
  2. Usa el nombre de servidor exacto que indica tu proveedor (por ejemplo smtp.office365.com para Microsoft 365), para que el certificado coincida.
  3. Actualiza el software antiguo. Actualiza el firmware de la impresora, el plugin del CMS o la librería. Si el dispositivo no admite un TLS moderno, envía a través de un pequeño relay que sí lo admita, o usa una opción de escaneo a carpeta.
  4. En tu propio servidor de correo, activa TLS de salida. En Postfix, configura smtp_tls_security_level = may y asegúrate de tener instalada una versión reciente de OpenSSL.
  5. Revisa los cortafuegos y antivirus que analizan el correo: desactiva su inspección SMTP si rompen STARTTLS.

Nota sobre Microsoft 365

Microsoft 365 también exige que el inicio de sesión (SMTP AUTH) esté permitido para el buzón, y solo acepta versiones recientes de TLS. Si TLS está activado y sigue fallando, comprueba en el centro de administración que SMTP AUTH está habilitado para esa cuenta.

Comprueba que está solucionado

Envía una prueba desde la app o el dispositivo, y luego una prueba de Delivmail a la dirección de la página de inicio. Si llega y el informe está bien, vuelve a enviar los emails que fallaron. Si tu app muestra un error de certificado, revisa una vez más el nombre del servidor y el puerto.

Comprueba que está solucionado

Un cambio de DNS puede tardar de unos minutos a unas horas. Después, envía un nuevo email de prueba o vuelve a escanear tu dominio.

Guías relacionadas