¿Qué es un registro DNS SPF?

Los registros SPF son un tipo de registro DNS TXT comúnmente utilizado para la autenticación de correo electrónico. Incluyen una lista de direcciones IP y dominios autorizados para enviar correos electrónicos desde ese dominio.

Objetivos de aprendizaje

Después de leer este artículo podrás:

  • Definir un registro DNS SPF
  • Explicar las ventajas de un registro DNS SPF
  • Comprender los componentes de un registro DNS SPF

Copiar enlace del artículo

¿Qué es un registro DNS SPF?

Un registro de marco de políticas del remitente (Sender Policy Framework o SPF) es un tipo de registro DNS TXT que enumera todos los servidores autorizados para enviar correos electrónicos desde un dominio concreto.

Un registro DNS TXT ("texto") permite que el administrador de un dominio introduzca texto arbitrario en el Sistema de nombres de dominio (DNS). Los registros TXT se crearon inicialmente con el propósito de incluir notificaciones importantes relativas al dominio, pero desde entonces han evolucionado y se utilizan para otros propósitos.

Los registros SPF se crearon originalmente porque el protocolo estándar utilizado para el correo electrónico, el protocolo simple de transferencia de correo (Simple Mail Transfer Protocol o SMTP) no autentica intrínsecamente la dirección que aparece en "de" en los correos electrónicos. Eso implica que sin el SPF u otro registro de autenticación, un atacante en ruta puede hacerse pasar por un remitente y engañar al destinatario para que comparta información o haga algo que en realidad no haría.

Los registros SPF pueden compararse con una lista de invitados gestionada por un portero. Si alguien no está en la lista, no le permitirá entrar. Del mismo modo, si el registro SPF no tiene la dirección IP o el dominio del remitente en su lista, el servidor de destino (el portero) no entregará esos correos electrónicos o los marcará como correo no deseado.

Los registros SPF son solo uno de los muchos mecanismos basados en el DNS que pueden ayudar a los servidores de correo electrónico a confirmar si un correo proviene de una fuente de confianza. La autenticación de mensajes, informes y conformidad basada en dominios (Domain-based Message Authentication Reporting and Conformance o DMARC) y el estándar DomainKeys Identified Mail (DKIM) son otros dos mecanismos usados para la autenticación de correo electrónico.

Conviene señalar que, en un momento dado, los registros SPF contaron con un tipo de registro DNS exclusivo. Este se ha quedado obsoleto y ya solamente pueden usarse registros TXT.

¿Qué hace un servidor de correo para comprobar un registro SPF?

Los servidores de correo llevan a cabo un proceso relativamente sencillo cuando comprueban un registro SPF:

  • El servidor "uno" envía un correo electrónico. Su dirección IP es 192.0.2.0 y la ruta de devolución que usa el correo electrónico es correoelectrónico@rutadevolución.com. (La dirección de una ruta de devolución es diferente de la dirección "de" y se usa específicamente para recopilar y procesar los mensajes rechazados).
  • El servidor de correo electrónico que recibe el mensaje (el servidor "dos") busca el registro SPF del dominio de la ruta de devolución.
  • Si el servidor "dos" encuentra un registro SPF del dominio de la ruta de devolución, busca en la lista de remitentes autorizados de este la dirección IP del servidor "uno". Si la dirección IP está incluida en el registro SPF, se aprueba la verificación SPF y el correo electrónico llegará. Si la dirección IP no aparece en el registro SPF, la verificación SPF no se aprueba. En ese caso, el correo electrónico se rechazará o se marcará como no deseado.

¿Cómo es un registro SPF?

Los registros SPF deben seguir ciertos estándares para que el servidor entienda cómo interpretar sus contenidos. Este es un ejemplo de los principales componentes de un registro SPF:

v=spf1 ip4=192.0.2.0 ip4=192.0.2.1 include:examplesender.email -all

Este ejemplo informa al servidor del tipo de registro, indica las direcciones IP y las terceras partes aprobadas para el dominio y da instrucciones al servidor sobre qué hacer con los correos electrónicos que no cumplen los requisitos. Vamos a detallar por separado los elementos que lo llevan a cabo:

  • v=spf1 informa al servidor de que se trata de un registro SPF. Todos los registros SPF comienzan con esta cadena.
  • Luego aparece la parte del registro SPF con la "lista de invitados", la lista de direcciones IP autorizadas. En este ejemplo, el registro SPF indica al servidor que ip4=192.0.2.0 y ip4=192.0.2.1 tienen autorización para enviar correos electrónicos en nombre del dominio.
  • include:examplesender.net es un ejemplo de la etiqueta "include", que indica al servidor las organizaciones de terceros autorizadas para enviar correos electrónicos en nombre del dominio. Esta etiqueta señala que el contenido del registro SPF relativo al dominio incluido (examplesender.net) debe verificarse y las direcciones IP que contiene deben considerarse autorizadas también. Pueden incluirse varios dominios en un registro SPF, pero esa etiqueta solo funcionará con los dominios válidos.
  • Finalmente, -all indica al servidor que las direcciones no incluidas en el registro SPF no están autorizadas para enviar correos electrónicos y deben rechazarse.
    • Otras opciones alternativas son ~all, que indica que los correos electrónicos no incluidos se marcarán como inseguros o no deseados pero se seguirán aceptando y, con menor frecuencia, +all, que significa que cualquier servidor puede enviar correos electrónicos en nombre de tu dominio.

Aunque el ejemplo que aparece en este artículo es bastante sencillo, los registros SPF pueden ser mucho más complejos. Para asegurarse de que los registros SPF sean válidos, hay que tener en cuenta, entre otras cosas, lo siguiente:

  • No puede haber más de un registro SPF asociado a un dominio.
  • El registro debe terminar con el componente all o incluir un componente redirect: (que indica que el registro SPF se aloja en otro dominio).
  • Los registros SPF no pueden contener caracteres en mayúsculas.

Consulta la documentación oficial de los registros SPF para más información.

¿Por qué se usan los registros SPF?

Hay muchas razones por las cuales los operadores de dominios usan los registros SPF:

  • Prevenir ataques: si los correos electrónicos no se autentican, las empresas y los destinatarios corren el riesgo de sufrir ataques de suplantación de identidad, recibir correo no deseado o ser víctimas de suplantación del correo electrónico. Con los registros SPF, los atacantes tienen más dificultades para imitar un dominio, lo que reduce la probabilidad de que se produzcan estos ataques.
  • Mejorar la capacidad de entrega de correo electrónico: los correos electrónicos de los dominios sin un registro SPF publicado pueden ser rechazados o marcados como no deseados. Con el tiempo, los correos electrónicos rechazados o marcados como no deseados pueden perjudicar la capacidad de un dominio para que sus correos lleguen al público, lo que dificulta la comunicación con clientes, empleados y otras entidades.
  • Cumplimiento de DMARC: DMARC es un sistema de validación de correo electrónico que contribuye a garantizar que los correos electrónicos sean enviados solamente por usuarios autorizados. Las políticas de DMARC dan instrucciones sobre qué deben hacer los servidores con lo correos que no pasan los controles de SPF y DKIM. Dependiendo de las instrucciones de la política de DMARC, esos correos se marcarán como no deseados, se rechazarán o llegarán sin problemas. Los administradores de dominios reciben informes acerca de la actividad de sus correos electrónicos en los que pueden basarse para ajustar sus políticas.

El Asistente de DNS de seguridad en correo electrónico de Cloudflare facilita la configuración de registros TXT de DNS correctos y evita que los spammers usen un dominio. Más información sobre el Asistente aquí.

Más información sobre los registros DNS para correo electrónico: