Actualmente, estoy trabajando en una aplicación web y quería crear un formulario web para permitir a los usuarios escribir correos electrónicos a través de él. Por lo tanto, tendrían que configurar su dirección de correo electrónico y el mensaje y, después de hacer clic en "Enviar", mi aplicación web enviaría el correo electrónico a los destinatarios utilizando su dirección de correo electrónico en el FROM
encabezado. El proceso de envío, por supuesto, se realiza utilizando mi propio servicio SMTP porque no tengo acceso a los servidores de correo electrónico de los visitantes de mi sitio web.
Ahora, escuché que esto probablemente sea una mala idea porque lo más probable es que esos correos electrónicos sean rechazados por los servidores de los destinatarios. Sin embargo, todavía no entiendo completamente por qué es así y cómo funciona este proceso. He aprendido que las dos tecnologías antispam y de suplantación de identidad más utilizadas hoy en día para el correo electrónico sonDKIMyFPS.
Entonces, me gustaría entender por qué exactamente se rechazarán los correos electrónicos y cómo ayudará DKIM/SPF en este caso.
Entonces, comencemos con SPF:
Según tengo entendido, el servidor del destinatario verificará las direcciones IP que pueden enviar correos electrónicos utilizando el dominio en el MAIL_FROM
encabezado y el sistema DNS. Ahora, con mi ejemplo anterior, cuando envío correos electrónicos en la aplicación web con el FROM
encabezado configurado, por ejemplo, [email protected]
(esa es la dirección que estableció el visitante de mi sitio web), esto (?) no debería afectar el MAIL_FROM
encabezado. Debido a que el correo electrónico se enviará a través de mi servicio de correo electrónico, el MAIL_FROM
encabezado contendrá mi dominio y, según tengo entendido, debería ser posible enviar el correo pasando SPF.
La otra tecnología antispam es DKIM:
Firmará el correo electrónico y el servidor del destinatario buscará en el DNS la clave pública correcta para verificar la firma. Aquí, no estoy seguro de cómo se hace exactamente. Sé que el FROM
encabezado será parte de la firma, pero ¿cómo verifica el servidor destinatario DKIM? ¿Está mirando nuevamente el DNS desde el MAIL_FROM
encabezado? En caso afirmativo, también podría pasar DKIM con mi ejemplo anterior, ¿verdad? ¿O tienen el dominio MAIL_FROM
y FROM
son idénticos? Estoy un poco perdido.
Después de todo lo que entiendo ahora, tanto DKIM como SPF no deberían ser un problema para mi aplicación web. Sin embargo, ¿por qué se sigue diciendo que es una mala idea y lo más probable es que los correos electrónicos sean rechazados? ¿O no entendí bien DKIM?
Mi pregunta general: ¿Cómo determinará exactamente el servidor del destinatario si el correo electrónico es rechazado?
Respuesta1
No hay manera de que puedas estar seguro. Sólo puedes adivinar a menos que el administrador de MX te diga qué está mal.
El rechazo de un mensaje puede basarse en cualquier información que se encuentre dentro del mensaje, desde la transmisión o desde cualquier lugar de Internet, incluyendo:
- Dirección IP/subred del MTA
- MTA rDNS y FCrDNS
- MTA FQDN de rDNS o HELO
- Listado DNSBL del MTA
- otra información sobre el FQDN de MTA o el dominio del remitente disponible en Internet
- Historial de conexiones y fallas anteriores.
- CORREO DESDE dirección o dominio
- encabezado DE dirección o dominio
- métodos de autorización como SPF, DKIM, DMARC
- palabras clave o secuencias en el asunto o cuerpo del correo
- Puntuación heurística del cuerpo y los encabezados del correo.
La configuración de un MX/MTA activo no debe hacerse a la ligera. Debido al spam sustancial y continuo, existen muchas prácticas que debes obedecer o obtendrás rechazos o terminarás en el montón de spam. La forma más sencilla es utilizar el servidor de su ISP como host inteligente; primero deberá verificar sus políticas.
Además, no puede utilizar dominios de remitente "ajenos" desde su sistema a menos que haya sido autorizado para hacerlo. La falsificación de direcciones de remitente lo coloca de inmediato en el rincón de los spammers maliciosos. Además, no puede simplemente confiar en nada de lo que sus usuarios envíen al registrarse o en cualquier otro momento. Si no verifica la dirección de correo electrónico, se abusará de su servicio después de solo unas horas.