Envío de correo web con Microsoft 365

Microsoft ha deshabilitado la autenticación básica en SMTP AUTH para Exchange Online. Esto obliga a buscar métodos alternativos para que tus aplicaciones y CMS sigan enviando correo. Una de las opciones más sencillas y robustas es usar un conector SMTP Relay basado en IP: tu servidor con IP estática envía directamente a Office 365 sin credenciales de usuario.

Requisitos previos

  • IP pública estática de tu servidor, no compartida y fija.
  • Puerto TCP 25 abierto en el firewall.
  • TLS 1.2 o superior habilitado en el servidor.
  • Dominio aceptado en el tenant de Microsoft 365 (para remitentes).
  • Acceso de administrador al Centro de administración de Exchange (EAC).
  • Un plugin SMTP para WordPress (por ejemplo, WP Mail SMTP).

Pasos para el acceso

Verificar dominio y registros DNS (SPF)

  • Asegúrate de que tu dominio (ej. example.com) esté validado en Microsoft 365.
  • Añade o edita tu registro SPF para incluir tu IP: v=spf1 ip4:XXX.XXX.XXX.XXX include:spf.protection.outlook.com ~all
    Sustituye XXX.XXX.XXX.XXX por la IP del servidor.
  • Comprueba con Google Admin Toolbox Dig que en las entradas TXT aparece esa entrada SPF correctamente.

Crear el conector SMTP Relay en Exchange Online

  1. Entra en el Exchange Admin Center (EAC):
  2. Crea un Nuevo conector:
    • Desde: Your organization’s email server.
    • Hasta: Office 365.
  3. Configura la seguridad:
    • Activa TLS obligatorio.
    • En “Validate that the IP address…” introduce tu IP.
  4. Revisa y crea: el conector queda activo inmediatamente.

Configurar el plugin SMTP en WordPress

  • Host / Smart host: apunta al registro MX de tu tenant, algo como example-com.mail.protection.outlook.com.
    Puedes comprobarlo en tus DNS en las entradas MX con Google Admin Toolbox Dig en las entradas MX.
  • Puerto: 25 o 587 con StartTLS (recomendado esto último).
  • Autenticación: Ninguna (sin usuario ni contraseña) o vacío.
  • Encriptación: StartTLS/TLS.
  • From address: cualquier cuenta bajo tu dominio validado (no necesita buzón).

Realizar pruebas de envío

  1. En el plugin, busca “Enviar email de prueba” o crea una entrada de prueba en WordPress que dispare un correo.
  2. Confirma que el correo llega correctamente y revisa encabezados para verificar que pasó por tu conector.
  3. Si falla, revisa logs de tu servidor y del conector en Exchange (Mail flow insights).