Web hosting - Buenas prácticas de envío de correo electrónico
Elija entre la función PHP mail() y el envío SMTP autenticado desde su alojamiento web, y configure el SMTP con su cuenta de correo electrónico OVHcloud
Objetivo
Su alojamiento web ofrece dos formas de enviar correos electrónicos desde su sitio: la función PHP mail() nativa, que utiliza los servidores de envío de su alojamiento, y el envío SMTP autenticado mediante una dirección de correo electrónico asociada a su dominio. Ambas son legítimas. mail() es el método por defecto: no requiere ninguna configuración, está sujeta a una cuota por alojamiento y se supervisa desde su área de cliente de OVHcloud. El SMTP autenticado es la alternativa cuando necesita controlar la identidad del remitente: la dirección From: está vinculada a una cuenta autenticada y el correo electrónico lleva la firma de su dominio. Sus cuotas se aplican por dirección de correo electrónico y por dirección IP de origen, compartida entre los sitios de un alojamiento compartido.
Esta guía le ayuda a elegir entre los dos métodos y le explica cómo configurar un envío SMTP autenticado desde un alojamiento compartido, ya sea que gestione un sitio WordPress, otro CMS o una aplicación PHP.
Requisitos
- Disponer de una oferta de alojamiento web OVHcloud.
- Únicamente para el envío SMTP autenticado: disponer de una dirección de correo electrónico asociada a su nombre de dominio (oferta MX Plan, Email Pro o Exchange). Si todavía no dispone de una, consulte la guía Crear una dirección de correo electrónico en un MX Plan.
Acceso al área de cliente de OVHcloud
- Enlace directo:
- Ruta de navegación:
Web Cloud>Alojamientos> Seleccione su alojamiento web
Procedimiento
1. mail() o SMTP autenticado: ¿cuál elegir?
Ambos métodos envían correos electrónicos desde su sitio web. Se diferencian en:
- el servidor de envío del correo electrónico,
- las limitaciones de envío,
- cómo hacer su seguimiento.
Sea cual sea el método elegido:
- Los servidores destinatarios (Gmail, Outlook, etc.) verifican que el dominio del
From:autoriza al servidor de envío. Mantenga correctos sus registros SPF, DKIM y DMARC en su zona DNS. - Un envío abusivo o de spam desde su alojamiento o desde su dirección de correo electrónico provoca un bloqueo automático. Si sus correos electrónicos ya no se envían, consulte la guía Gestionar los mensajes de correo automatizados.
- El tamaño total de un correo electrónico no puede superar los 10 MB, encabezados y codificación incluidos.
Formularios abiertos: un vector de abuso para ambos métodos
Un formulario de contacto accesible públicamente, sin mecanismo de protección, es un objetivo preferente para los robots. Los robots lo aprovechan para enviar miles de correos electrónicos en pocos minutos a través de su alojamiento: la IP compartida se bloquea y todos los clientes del clúster lo sufren.
Implemente las siguientes protecciones en cualquier formulario que desencadene un envío de correo electrónico:
- Captcha: integre un sistema de verificación (Google reCAPTCHA v3, hCaptcha o un cálculo aritmético sencillo) para bloquear los envíos automatizados.
- Limitación de la tasa: limite el número de envíos por dirección IP en el servidor para evitar los abusos en ráfaga.
- Validación estricta de las entradas: depure todos los campos del formulario antes de utilizarlos en un correo electrónico; nunca confíe en los datos introducidos por el usuario.
La ausencia de captcha en un formulario de envío abierto es una de las causas más frecuentes de bloqueo de los alojamientos compartidos por envío de spam. Esta protección es indispensable sea cual sea el método de envío que utilice.
2. Configurar el envío SMTP autenticado con una cuenta de correo electrónico OVHcloud
Principio
Envíe sus correos electrónicos mediante una conexión SMTP autenticada al servidor de mensajería de OVHcloud, utilizando una cuenta de correo electrónico asociada a su dominio (por ejemplo, contact@mydomain.ovh).
Este enfoque tiene tres ventajas:
- Autenticación garantizada: el servidor OVHcloud verifica su identidad antes de aceptar el correo electrónico.
- SPF y DKIM: el correo electrónico es emitido por un servidor autorizado para su dominio y firmado con DKIM si DKIM está activado para su dominio.
- Una única cuenta identificada: cada envío está vinculado a una única dirección de correo electrónico, cuya contraseña puede cambiar en cualquier momento para detener un script o un plugin abusivo.
Envío con mail(): el dominio debe estar asociado a su alojamiento
Para enviar correos electrónicos desde su alojamiento web con la función PHP mail(), el dominio utilizado en el campo From: debe estar asociado a su alojamiento.
Este dominio no tiene que gestionarse desde su cuenta de OVHcloud: puede utilizar un dominio registrado con otro agente registrador, siempre que esté asociado a su alojamiento web, ya que es esa asociación la que le autoriza a enviar correos electrónicos en nombre de ese dominio.
Si su dominio aún no está asociado a su alojamiento, añádalo como multisitio desde su área de cliente de OVHcloud y compruebe después la configuración DNS asociada. Consulte la guía Alojar varios sitios web en un mismo hosting.
Un envío realizado para un dominio que no está asociado a su alojamiento no puede autenticarse: se trata como un envío no autenticado, por lo que será rechazado y registrado como error.
Por qué el campo From: debe pertenecer a su dominio
El campo From: de su correo electrónico debe obligatoriamente contener una dirección que pertenezca a su dominio (por ejemplo, contact@mydomain.ovh), y esta dirección debe corresponder a la cuenta SMTP utilizada para la autenticación.
Si el campo From: no corresponde al dominio autorizado en el registro SPF, o si la firma DKIM no coincide, los servidores de mensajería destinatarios (Gmail, Outlook, etc.) pueden rechazar el correo electrónico o clasificarlo como spam.
Para maximizar la entregabilidad, compruebe que los registros SPF, DKIM y DMARC estén correctamente configurados en su zona DNS. Gmail y Yahoo Mail los exigen ahora para los remitentes de gran volumen. Consulte nuestras guías:
Formularios de contacto: campo From: fijo y Reply-To: del usuario
Un error frecuente: colocar la dirección de correo electrónico introducida por el usuario en el formulario directamente en el campo From:. Por ejemplo, un visitante introduce usuario@gmail.com y el script utiliza esta dirección como remitente.
Este comportamiento es incorrecto por dos razones:
- El registro SPF de su dominio no autoriza a los servidores de Gmail (o de cualquier otro proveedor externo) a enviar en su nombre → fallo del control SPF.
- Está enviando "en nombre de" una dirección que no le pertenece → alto riesgo de clasificación como spam o de rechazo.
El esquema correcto para un formulario de contacto:
Cuando responda, su cliente de mensajería utilizará en su lugar la dirección del campo Reply-To:, sin comprometer la autenticación SPF/DKIM.
A continuación se muestra cómo adaptar el ejemplo de PHPMailer para un formulario de contacto:
Nunca pase directamente los datos de un formulario a PHPMailer sin validación previa. Utilice filter_var() para la dirección de correo electrónico y htmlspecialchars() + strip_tags() para los campos de texto, con el fin de evitar las inyecciones de encabezados de correo electrónico.
Parámetros SMTP de OVHcloud
Utilice los siguientes parámetros para su cuenta de correo electrónico MX Plan (incluida con el alojamiento web):
Para las ofertas Email Pro o Exchange, el servidor SMTP es diferente. Consulte la documentación de cada oferta para conocer los parámetros exactos.
Dónde encontrar sus credenciales SMTP
El nombre de usuario SMTP es su dirección de correo electrónico completa (por ejemplo, contact@mydomain.ovh).
La contraseña es la que definió al crear la dirección, o la que modificó desde el área de cliente de OVHcloud. Si la ha olvidado o desea restablecerla, consulte la guía Cambiar la contraseña de una dirección de correo.
La oferta MX Plan incluida con el alojamiento web está sujeta a cuotas de envío (aproximadamente 200 correos electrónicos por hora y por cuenta), independientes de la cuota de la función mail() de su alojamiento. El servidor SMTP de OVHcloud también acepta como máximo 300 correos electrónicos por hora y por dirección IP de origen. En un alojamiento compartido, esta dirección IP se comparte con los demás sitios alojados en el mismo clúster, por lo que alcanzará el límite más rápidamente que desde su propio ordenador. Las soluciones de mensajería no están diseñadas para el envío masivo: para volúmenes importantes, como newsletters o correos electrónicos transaccionales masivos, utilice un servicio de envío transaccional externo dedicado.
Ejemplo de código PHP con PHPMailer
PHPMailer es la biblioteca PHP de referencia para el envío de correos electrónicos mediante SMTP. Instálela a través de Composer:
A continuación se muestra un ejemplo completo de envío SMTP autenticado:
Nunca almacene la contraseña de su cuenta de correo electrónico en texto plano en un archivo PHP versionado. Utilice un archivo de configuración excluido de su repositorio Git (.gitignore).
Con esta configuración, cada correo electrónico enviado desde su sitio es:
- autenticado ante el servidor OVHcloud,
- autorizado por el registro SPF de su dominio y firmado con DKIM si este está activado,
- emitido por una única cuenta identificada, cuya contraseña controla usted.
3. WordPress y otros CMS: utilizar un plugin SMTP
3.1 Cómo envía WordPress los correos electrónicos por defecto
La función wp_mail() de WordPress utiliza en segundo plano la función PHP mail(), con una dirección From: definida por WordPress o por cada plugin. Por tanto, estos envíos se descuentan de la cuota de su alojamiento y puede supervisarlos desde el área de cliente de OVHcloud.
Para tener un remitente fijo y autenticado en todos los correos electrónicos de su sitio, instale un plugin SMTP que sustituya wp_mail() por una conexión SMTP autenticada a su servidor de mensajería OVHcloud.
3.2 Configurar WP Mail SMTP
WP Mail SMTP es el plugin más utilizado para esta configuración.
Instalación:
- En su administración de WordPress, acceda a Plugins > Añadir nuevo plugin.
- Busque
WP Mail SMTPy haga clic en Instalar ahora y, a continuación, en Activar.
Configuración:
- Acceda a WP Mail SMTP > Ajustes en el menú de administración.
- En la sección Remitente, rellene los siguientes campos:
- En la sección Mailer, seleccione Otro SMTP.
- Rellene los parámetros SMTP:
- Haga clic en Guardar ajustes.
- En la pestaña Herramientas, utilice Prueba de envío de correo electrónico para verificar la configuración.
Active la opción Forzar el correo electrónico del remitente para que todos los correos electrónicos salientes utilicen la dirección configurada, incluso si un plugin externo intenta usar otra.
3.3 Alternativa: FluentSMTP
FluentSMTP es una alternativa ligera y gratuita. La cuota de envío de su cuenta de correo electrónico se aplica de la misma forma.
Instalación:
- En su administración de WordPress, acceda a Plugins > Añadir nuevo plugin.
- Busque
FluentSMTPy haga clic en Instalar ahora y, a continuación, en Activar.
Configuración:
- Acceda a FluentSMTP > Ajustes.
- Haga clic en Añadir conexión y seleccione Otro SMTP.
- Rellene los mismos parámetros que para WP Mail SMTP:
- Haga clic en Guardar conexión y, a continuación, envíe un correo electrónico de prueba.
3.4 Otros CMS (Drupal, Joomla, PrestaShop)
El principio es idéntico para cualquier CMS o framework: sustituya la función de envío nativa por un módulo o una configuración SMTP autenticada.
En todos los casos, los parámetros SMTP son idénticos: servidor smtp.mail.ovh.net, puerto 465 (SSL/TLS) o 587 (STARTTLS), con autenticación mediante la dirección de correo electrónico completa y su contraseña.
Más información
Gestionar los mensajes de correo automatizados
Particularidades técnicas de los alojamientos web
Mejorar la seguridad del correo electrónico mediante el registro SPF
Mejorar la seguridad del correo electrónico mediante un registro DKIM
Mejorar la seguridad del correo electrónico mediante el registro DMARC
Para prestaciones especializadas (posicionamiento, desarrollo, etc.), contacte con los partners de OVHcloud.
Si desea asistencia para el uso y configuración de sus soluciones OVHcloud, le proponemos que consulte nuestras diferentes ofertas de soporte.
Interactúe con nuestra comunidad de usuarios.