Mi correo en Spam

¿Tienes una cuenta de correo personal asociado a tu propio nombre de dominio y sucede que los correos que envías te son devueltos con una alarmante mensaje que estás en spam?. Esto se debe a mecanismos para evitar la suplantación de identidad (spoofing).

Esto suele pasar con frecuencia al parecer por los controles de Gmail y otros servidores de correo que utilizan mecanismos estándares definidos para verificar el origen de los correos. Estos son DMARC, SPF y DKIM.

Has recibido algúna vez correo de ti mismo pero que tú no te enviaste? yo sí y es por falta de aplicar estas técnicas.

<micorreo@gmail.com>: host gmail-smtp-in.l.google.com[74.125.142.26] said:
    550-5.7.26 This message does not pass authentication checks (SPF and DKIM
    both 550-5.7.26 do not pass). SPF check for [arlettecassot.cl] does not
    pass with 550-5.7.26 ip: [].To best protect our users from
    spam, the 550-5.7.26 message has been blocked. Please visit 550-5.7.26
    https://support.google.com/mail/answer/81126#authentication for more 550
    5.7.26 information. w10-20020a170902e88a00b0016c3fe7ba5bsi14611247plg.168 -
    gsmtp (in reply to end of DATA command)

DMARC

DMARC o Domain-based Message Authentication, Reporting & Conformance (Autenticación de mensajes, informe y conformidad basada en dominios) en un protocolo de autenticación de correos creada por una asociación de PayPal, Google, Microsoft y Yahoo!. Verifica sencillamente que quién envía el correo tiene el control de este (el dominio).

Esta basado en las técnicas SPF y DKIM y esta soportado por los mayores proveedores de Internet (Google, Microoft, Yahoo y otros)

Si un servidor de correo recibe un mensaje de tu dominio que no supera la comprobación de SPF, de DKIM o ninguna de las dos, DMARC indica al servidor qué tiene que hacer con el mensaje. Hay tres opciones posibles definidas por la política de DMARC:

  • Si el valor de su política es none: no se hace nada con los mensajes y se entregan normalmente.
  • Si el valor de la política es quarantine: se marcan los mensajes como spam y se envían a la carpeta de spam de los destinatarios o se ponen en cuarentena.
  • Si el valor de la política es reject: se rechazan los mensajes y no se entregan a los destinatarios.

SPF

SPF corresponde a las siglas de Sender Policy Framework o Marco de políticas del remitente, permite al servidor del correo enviar los correos en nombre de ese dominio. Lo que evita que los spammer envien mensajes de correo con direcciones falsificadas, lo que me ha pasado con cierta frecuencia.

Por tanto esto asegura al receptor del correo que este se origina desde el servidor debido. Aunque no valida el remitente (De:).

Cuando se comprueba un mensaje mediante SPF o DKIM, DMARC lo aprueba o no dependiendo de si su cabecera De: coincide con el dominio del remitente. Es lo que se conoce como concordancia. Por lo tanto, antes de configurar DMARC en tu dominio, se debe activar SPF y DKIM.

DKIM

Domain Keys Identified Mail (DKIM) añade una firma digital a cada mensaje enviado. Esta firma es generada por el servicio de control (CPanel o Plesk en mi caso). Gracias a esa firma, los servidores que reciben los mensajes pueden verificar que son auténticos y que no se han falsificado ni modificado durante el envío.

Procedimiento

Ejecuta los siguientes pasos para proteger tu cuenta de correo. Registrar DMARC debe realizarse 24 o 48 horas luego de definir SPF y DKIM. Estas operaciones deben hacerse en los registros DNS de tu servicio de hosting.

Verifica que en tu servicio el valor de TXT deba ir o no entre comillas, en el caso de DigitalOcean si debe ir entrecomillado.

Creación de un registro TXT en el servicio DNS DigitalOcean.

Generar DKIM

Genera un registro TXT en el DNS con los siguientes valores. Esta firma lo obtienes de tu servicio CPanel o Plesk.

Hostname: midominio.cl
value: "v=DKIM1; p=MIGfMA0GCSqGSIb3DQEBcQQqu6/+/reRffOzLyO4CTAa4PzzTAtrJoY/M4wDQ1c7lIY2pv2oiWQIxS8Hj/VIxcwTPtLr9vbgisUvYJgVp7Oqcjdm/dhnRT7DR9REizBb4MAzMIi/boSzZKWc+qmNElginOpQIDAQAB;"

Generar SPF

Crea un registro de texto en el DNS.

Hostname: midominio.cl
Value: "v=spf1 a:midominio.cl include:_spf.google.com ~all"
TTL: 3600

Registrar DMARC

Finalmente, luego de 24 a 48 horas crea finalmente el TXT

Hostname: _dmarc.midominio.cl
Value: "v=DMARC1; p=reject; rua=mailto:dmarc-reports@midominio.cl"
TTL: 3600

El valor de «p» define la política a utilizar y puede ser none|quarantine|reject donde:

  • none: el correo qe falla en la autenticación sera reportado pero no se tomaraá acción alguna.
  • quarantine: será marcado como spam, por fallar en autentificación.
  • reject: el correo será marcado como spam y además rechazado.

El valor de «rua» es para tener un registro de problemas detectados, puede llegar a ser de muchos mensajes así que no uses tu propio correo (genera uno específicamente para ello si realmente lo necesitas).

Eso es todo… espero.

Referencias