2mail — SMTP relay desde infraestructura belga

SMTP para TYPO3 — correos de su web que llegan

TYPO3 envía su correo por el transporte fijado en los ajustes de la instalación. Por defecto es la función de correo local del servidor, sin autenticación y sin reputación, con lo que los envíos de formularios y los correos de recuperación acaban a menudo en spam en Gmail y Outlook.

TYPO3 puede poner ese transporte directamente en SMTP, sin ninguna extensión adicional. Indica el servidor, el puerto, el cifrado y el acceso en los ajustes MAIL de la instalación, y a partir de ahí todo lo que envía TYPO3 —incluidos los correos de formulario y de flujo de trabajo de las extensiones— pasa por su relay.

Por qué falla sin relay

TYPO3 se usa en sitios grandes y multilingües de empresas y administraciones, a menudo con formularios que ponen en marcha una solicitud real: una inscripción, una petición de presupuesto, una candidatura. Si la confirmación no llega, el solicitante llama, o vuelve a rellenar el formulario y usted acaba con expedientes duplicados. El correo sí sale, pero nada demuestra que venga de su dominio.

Configurar el SMTP en TYPO3

1

Obtener los datos

Acceda a su cuenta de 2mail y obtenga allí su servidor SMTP, su nombre de usuario y su contraseña.

2

Introducirlos en TYPO3

La configuración de correo de TYPO3 está en los ajustes de la instalación, bajo las claves MAIL. Ponga el transporte en SMTP, indique el servidor con su puerto, elija el cifrado e introduzca el usuario y la contraseña. Ponga también la dirección y el nombre de remitente por defecto en su propio dominio. La herramienta de instalación tiene un correo de prueba: envíelo a una dirección externa de un gran proveedor.

3

Autenticar el dominio

Asegúrese de que SPF, DKIM y DMARC de su dominio son correctos, para que los destinatarios puedan verificar que el correo viene de usted.

4

Probar

Envíe desde su plataforma un mensaje de prueba a una dirección de un gran proveedor y compruebe que llega a la bandeja de entrada y no a la carpeta de spam.

Los campos que pide TYPO3

Cada plataforma los llama de una manera algo distinta, pero siempre son los mismos cinco. Los valores concretos dependen de su cuenta y los encuentra en su cuenta de 2mail: cópielos de ahí para asegurarse de usar los correctos.

Campo Qué introducir
Servidor SMTP (host)El nombre del servidor de su cuenta de 2mail.
PuertoEl puerto que corresponde al cifrado elegido; su cuenta le indica cuál.
CifradoTLS. No envíe nunca sin cifrar: de lo contrario sus credenciales viajan en claro.
Nombre de usuarioEl acceso SMTP de su cuenta de 2mail.
ContraseñaLa contraseña correspondiente. No use nunca la contraseña del buzón de un empleado.

Configuración SMTP para TYPO3 en código

Ejemplos que funcionan para el puerto 587 con STARTTLS, listos para copiar. Sustituya la dirección de remitente por una dirección de su propio dominio y compruebe el nombre del servidor y el acceso en su cuenta de 2mail. La contraseña va en una variable de entorno: nunca en el código y nunca en el control de versiones.

Los ajustes MAIL en additional.php

Ponga los datos SMTP en el archivo de configuración adicional y no en settings.php: este último lo reescribe la herramienta de instalación, y una llamada a getenv() no sobrevive a eso. Así el acceso y la contraseña salen de variables de entorno del servidor y quedan fuera del control de versiones. Atención a transport_smtp_encrypt: en las versiones actuales de TYPO3 es un booleano que en el puerto 587 debe ser false; STARTTLS se aplica entonces automáticamente. Solo las versiones muy antiguas (hasta la 9 inclusive) esperaban aquí el texto tls.

<?php
// config/system/additional.php
// (older installations: typo3conf/AdditionalConfiguration.php)

$GLOBALS['TYPO3_CONF_VARS']['MAIL'] = array_replace(
    $GLOBALS['TYPO3_CONF_VARS']['MAIL'],
    [
        'transport' => 'smtp',
        'transport_smtp_server' => 'relay.2mail.eu:587',   // host AND port, in one value
        'transport_smtp_encrypt' => false,                 // false on 587 = STARTTLS; true = TLS from the first byte (465)
        'transport_smtp_username' => getenv('SMTP_USERNAME'),
        'transport_smtp_password' => getenv('SMTP_PASSWORD'),
        'defaultMailFromAddress' => 'noreply@example.com',
        'defaultMailFromName' => 'Example',
    ]
);

Correo de prueba: herramienta de instalación o MailMessage

La comprobación más rápida está en el backend: Admin Tools → Environment → Test Mail Setup envía un mensaje con exactamente los ajustes que rigen en realidad. Si quiere probar desde su propia extensión, basta con la clase MailMessage de TYPO3: el mismo camino que siguen los formularios y los correos de flujo de trabajo.

use TYPO3\CMS\Core\Mail\MailMessage;
use TYPO3\CMS\Core\Utility\GeneralUtility;

// No from(): TYPO3 falls back to defaultMailFromAddress / defaultMailFromName.
$mail = GeneralUtility::makeInstance(MailMessage::class);
$mail
    ->to('you@example.org')
    ->subject('SMTP test')
    ->text('Sent through the 2mail SMTP relay.')
    ->send();

Qué correos envía TYPO3

Una vez configurado el relay, todos estos pasan por 2mail: no tiene que configurarlos uno a uno.

Envíos y confirmaciones de formularios
Recuperación de contraseña para usuarios del backend y del frontend
Avisos de flujo de trabajo cuando hay contenido pendiente de aprobación
Avisos de sistema y de seguridad a los administradores
Informes programados y newsletters desde las extensiones

Errores frecuentes con TYPO3

Ajustes en la capa equivocada

TYPO3 lee los ajustes de instalación de varias capas: el archivo de configuración del sistema y un archivo adicional que lo sobrescribe. Si pone los datos SMTP en una capa mientras la otra sigue con el transporte antiguo, gana esta última. Compruebe en la herramienta de instalación qué valor rige realmente.

El servidor y el puerto van juntos

TYPO3 espera el servidor y el puerto juntos en el ajuste del transporte. Si olvida el puerto, TYPO3 recurre a un valor por defecto que no encaja con su cifrado, y entonces la conexión se cuelga o se corta de inmediato. El puerto 587 con STARTTLS es la opción segura.

Staging con los mismos datos

Si la configuración se despliega por control de versiones, un entorno de pruebas o de staging enviará con el mismo acceso, a direcciones reales de una base de datos copiada. Use un acceso distinto por entorno, para poder cerrar el de pruebas por separado.

Mensajes de error habituales con TYPO3

Los mensajes que recibe cuando el host, el puerto, el cifrado o el acceso no son correctos: citados literalmente, para que los reconozca en su registro, con la causa y la solución al lado.

Mensaje Causa Solución
Connection could not be established with host "relay.2mail.eu:25": stream_socket_client(): Unable to connect to relay.2mail.eu:25 (Connection timed out) En transport_smtp_server solo figura el nombre del servidor, sin puerto. TYPO3 recurre entonces al puerto 25, que la mayoría de los proveedores de alojamiento y plataformas en la nube bloquean para el tráfico saliente. Escriba el servidor y el puerto juntos en un solo valor: relay.2mail.eu:587.
Connection could not be established with host "ssl://relay.2mail.eu:587": stream_socket_client(): SSL operation failed with code 1. OpenSSL Error messages: error:…:SSL routines::wrong version number transport_smtp_encrypt está en true. TYPO3 espera entonces TLS desde el primer byte, mientras que el puerto 587 empieza sin cifrar y solo después se eleva a TLS por STARTTLS. Ponga transport_smtp_encrypt en false y deje el puerto en 587. La conexión sigue estando cifrada.
Failed to authenticate on SMTP server with username "…" using the following authenticators: "LOGIN", "PLAIN". … Expected response code "235" but got code "535" El relay rechaza el acceso. O bien el usuario o la contraseña no son correctos, o bien la variable de entorno está vacía en el contexto en el que se ejecuta PHP: el servidor web no ve automáticamente las mismas variables que su shell. Compruebe que getenv('SMTP_PASSWORD') devuelve un valor dentro del servidor web, y use el acceso SMTP de su cuenta de 2mail, no la contraseña de un buzón.
Expected response code "250/251/252" but got code "554", with message "554 5.7.1 <noreply@example.com>: Sender address rejected" El acceso es correcto, pero la dirección de remitente pertenece a un dominio que no está vinculado a su cuenta de 2mail. A menudo defaultMailFromAddress está vacío, o un formulario fija su propio remitente. Ponga en defaultMailFromAddress una dirección de un dominio que haya añadido en 2mail, y revise en cada formulario qué dirección de remitente usa.
SPF, DKIM y DMARC explicados Sobre la entregabilidad

¿Otra plataforma?

SMTP es un protocolo estándar: cualquier sistema que hable SMTP —un CRM, un ERP, una aplicación propia o un servidor— puede enviar a través de 2mail con esos mismos cinco campos.

Preguntas frecuentes sobre el SMTP para TYPO3

TYPO3 envía por defecto con la función de correo local del servidor, sin autenticación y sin reputación. El mensaje sí sale, pero por el camino se rechaza o se marca como spam porque nada demuestra que venga de su dominio. Un SMTP relay con registros SPF, DKIM y DMARC correctos lo resuelve.
No. TYPO3 admite SMTP como transporte de correo en los ajustes de la instalación. Pone el transporte en SMTP e indica el servidor con su puerto, el cifrado, el usuario y la contraseña. Las extensiones que envían correo usan ese mismo transporte.
Compruebe que el cambio no lo sobrescriba un archivo de configuración adicional y que la caché de TYPO3 esté vaciada. En la herramienta de instalación ve qué valor rige efectivamente: es la forma más rápida de saber qué está mirando TYPO3 de verdad.
En su cuenta de 2mail, por aplicación. Están ligados a la cuenta, así que no los publicamos en la web. Cree preferiblemente un acceso propio por entorno para TYPO3, para poder revocar el de staging por separado.
Trust Guard Security Scanned
Llamar ahora
Enviar un correo