SPF Grabar sintaxis

Hemos desarrollado esta guía completa para aumentar su SPF comprender y ayudar a solucionar problemas que nuestra aplicación podría haber llamado su atención. Tener una validez y precisión SPF el registro conducirá a una mejor cobertura de autenticación, capacidad de entrega y ayudará a promover el nivel de seguridad deseado para sus dominios.

¿No tienes una dmarcian ¿cuenta? Todavía puede consultar el contenido de su SPF grabar usando nuestro SPF Herramienta de encuesta.

Crea una cuenta nueva ahora para tener dmarcian controla tu SPF, DKIM y DMARC Registros para usted automáticamente. Obtenga visibilidad de la instancia en errores de entrega, phishing e intentos de suplantación con dmarcian'S Plataforma SaaS.

Use el menú de navegación justo debajo para saltar al elemento particular de su SPF registro en cuestión. Información adicional sobre SPF se puede encontrar en los artículos vinculados al final de este documento.

Mecanismos

Los mecanismos se pueden usar para describir el conjunto de hosts que se designan como remitentes de correo salientes para el dominio y se pueden prefijar con uno de los cuatro calificadores:

+ (Pasar)
- (Fallar)
~ (SoftFail)
? (Neutral)

Si un mecanismo produce un acierto, se utiliza su valor calificador. El calificador predeterminado es "+", Es decir," Pase ".

Los mecanismos se evalúan en orden. Si no coincide ningún mecanismo o modificador, el resultado predeterminado es "Neutral".

Información más detallada sobre las diferencias entre "~"Y"-" puede ser encontrado aquí

Ejemplos:

"V = spf1 -todos"

"V = spf1 a -todos"

"V = spf1 a mx -todos"

"V = spf1 + a + mx -todos"

Si un dominio no tiene SPF registro en absoluto, el resultado es "Ninguno". Si un dominio tiene un error temporal durante el procesamiento de DNS, obtiene el resultado "TempError" (llamado "error" en borradores anteriores). Si se produce algún tipo de error de sintaxis o evaluación (por ejemplo, el dominio especifica un mecanismo no reconocido), el resultado es "PermError" (anteriormente "desconocido").

Evaluación de un SPF el registro puede devolver cualquiera de estos resultados:

Resultado Explicación Acción prevista
Pasar El SPF registro designa el host que se le permitirá enviar aceptar
Fallar El SPF el registro ha designado al host como NO autorizado para enviar rechazar
SoftFail El SPF el registro ha designado al host como NO autorizado para enviar pero está en transición aceptar pero marcar
Neutral El SPF el registro especifica explícitamente que no se puede decir nada sobre la validez aceptar
Ninguno El dominio no tiene un SPF registro o el SPF registro no evalúa a un resultado aceptar
PermError Se ha producido un error permanente (p. Ej. Mal formateado SPF grabar) sin especificar
TempError Ha ocurrido un error transitorio aceptar o rechazar

El mecanismo de "todos"

todos

Este mecanismo siempre coincide. Siempre debe ir al final de la SPF registro.

Ejemplos:

"V = spf1 mx -todos"
Permita que los MX del dominio envíen correo para el dominio, prohíba todos los demás.

"V = spf1 -todos"
El dominio no envía ningún correo en absoluto.

"V = spf1 + all"
El dominio permite que todas las direcciones IP en Internet envíen correo. Aunque 'válido', esto no es recomendable.

El mecanismo "ip4"

ip4: <dirección de IPNNUMX>
ip4: <ip4-network> / <prefix-length>

El argumento del mecanismo "ip4:" es un rango de red IPv4. Si no plongitud del refijo se da, se asume / 32 (señalando una dirección de host individual). Tenga cuidado de incluir una longitud de prefijo mayor que / 16, ya que la entrega a receptores pequeños más pequeños puede verse afectada.

Ejemplos:

"V = spf1 ip4: 192.168.0.1 / 16 -todos"
Permita cualquier dirección IP entre 192.168.0.1 y 192.168.255.255.

El mecanismo "ip6"

ip6: <dirección de IPNNUMX>
ip6: <ip6-network> / <prefix-length>

El argumento del mecanismo "ip6:" es un rango de red IPv6. Si no longitud del prefijo se da, se asume / 128 (señalando una dirección de host individual).

Ejemplos:

“v=spf1 ip6:1080::8:800:200C:417A/96 -all”
Permita cualquier dirección IPv6 entre 1080 :: 8: 800: 0000: 0000 y 1080 :: 8: 800: FFFF: FFFF.

“v=spf1 ip6:1080::8:800:68.0.3.1/96 -all”
Permita cualquier dirección IPv6 entre 1080 :: 8: 800: 0000: 0000 y 1080 :: 8: 800: FFFF: FFFF.

El mecanismo "a"

a
a / <longitud de prefijo>
a: <dominio>
a: <dominio> / <longitud de prefijo>

Todos los registros A para dominio son probados. Si la IP del cliente se encuentra entre ellos, este mecanismo coincide. Si la conexión se realiza a través de IPv6, se realiza una búsqueda AAAA.

If dominio no está especificado, el dominio actual se utiliza.

Los registros A tienen que coincidir exactamente con la IP del cliente, a menos que longitud del prefijo se proporciona, en cuyo caso cada dirección IP devuelta por la búsqueda A se expandirá a su prefijo CIDR correspondiente, y se buscará la IP del cliente dentro de esa subred.

Ejemplos:

"V = spf1 a -todos"
Se utiliza el dominio actual.

"V = spf1 a: example.com -todos"
Equivalente si el dominio actual es example.com.

"V = spf1 a: mailers.example.com -todos"
Quizás example.com ha elegido enumerar explícitamente todos los envíos de correo salientes en un registro A especial en mailers.example.com.

"V = spf1 a / 24 a: offsite.example.com/24 -todos"
Si example.com se resuelve en 192.0.2.1, se buscará la IP del cliente en toda la clase C de 192.0.2.0 / 24. Del mismo modo para offsite.example.com. Si se devolviera más de un registro A, cada uno se expandiría a una subred CIDR.

El mecanismo "mx"

mx
mx / <longitud de prefijo>
mx: <dominio>
mx: <dominio> / <longitud de prefijo>

Todos los registros A para todos los registros MX para dominio se prueban en orden de prioridad MX. Si la IP del cliente se encuentra entre ellos, este mecanismo coincide.

If dominio no está especificado, el dominio actual se utiliza.

Los registros A deben coincidir exactamente con la IP del cliente, a menos que se proporcione una longitud de prefijo, en cuyo caso cada dirección IP devuelta por la búsqueda A se expandirá a su correspondiente prefijo CIDR, y la IP del cliente se buscará dentro de esa subred.

Ejemplos:

"V = spf1 mx mx: deferrals.domain.com -todos"
Quizás un dominio envíe correo a través de sus servidores MX más otro conjunto de servidores cuyo trabajo es reintentar el correo para diferir dominios.

"V = spf1 mx / 24 mx: offsite.domain.com/24 -all"
Quizás los servidores MX de un dominio reciben correo en una dirección IP, pero envían correo en una dirección IP diferente pero cercana.

El mecanismo "ptr"

ptr
ptr: <dominio>

El nombre de host o los nombres de host para la IP del cliente se buscan mediante consultas PTR. Los nombres de host se validan: al menos uno de los registros A para un nombre de host PTR debe coincidir con la IP del cliente original. Los nombres de host no válidos se descartan. Si un nombre de host válido termina en dominio, este mecanismo coincide.

Si no se especifica el dominio, se utiliza el dominio actual.

Si es posible, debe evitar usar este mecanismo en su SPF registro, ya que dará como resultado una mayor cantidad de costosas búsquedas de DNS.

Ejemplos:

"V = spf1 ptr -todos"
Un dominio que controla directamente todas sus máquinas (a diferencia de un ISP de acceso telefónico o de banda ancha) permite que todos sus servidores envíen correo. Por ejemplo, hotmail.com o paypal.com podrían hacer esto.

"V = spf1 ptr: otrodominio.com -todos"
Se designa cualquier servidor cuyo nombre de host termine en otherdomain.com.

El mecanismo "existe"

existe: <dominio>

Realice una consulta A en el dominio proporcionado. Si se encuentra un resultado, esto constituye una coincidencia. No importa cuál sea el resultado de la búsqueda, podría ser 127.0.0.2.

Cuando utiliza macros con este mecanismo, puede realizar búsquedas de IP invertida de estilo RBL, o configurar excepciones por usuario.

Ejemplos:

En el siguiente ejemplo, la IP del cliente es 1.2.3.4 y el dominio actual es example.com.

"V = spf1 existe: ejemplo.com -todos"

Si example.com no se resuelve, el resultado es fallido. Si se resuelve, este mecanismo da como resultado una coincidencia.

El mecanismo de "incluir"

incluir: <dominio>

El especificado dominio se busca una coincidencia Si la búsqueda no devuelve una coincidencia o un error, el procesamiento pasa a la siguiente directiva. advertencia: Si la línea dominio no tiene una validez SPF registro, el resultado es un error permanente. Algunos receptores de correo rechazarán en función de un PermError.

Ejemplos:

En el siguiente ejemplo, la IP del cliente es 1.2.3.4 y el dominio actual es example.com.

"V = spf1 incluye: ejemplo.com -todos"

Si example.com no tiene SPF registro, el resultado es PermError.
Supongamos que example.com's SPF registro fueron "V = spf1 a -todos".
Busque el registro A para example.com. Si coincide con 1.2.3.4, devuelve el Pase.
Si no hay coincidencia, aparte del "-todos" del dominio incluido, la inclusión como un todo no coincide; el resultado final sigue siendo Fallo de la directiva externa establecida en este ejemplo

Relaciones de confianza - El mecanismo "incluir:" está destinado a cruzar los límites administrativos. Se necesita mucho cuidado para asegurar que los mecanismos de "incluir:" no pongan a los dominios en riesgo de dar SPF Pase los resultados a los mensajes que resultan de la falsificación entre usuarios. A menos que existan mecanismos técnicos en el otro dominio especificado para evitar la falsificación de usuarios cruzados, los mecanismos "incluir:" deberían dar un resultado neutral en lugar de pasar. Esto se hace agregando "?" Delante de "include:".

El ejemplo sería entonces:

"V = spf1? Incluye: ejemplo.com -todos"

Modificadores

Los modificadores son opcionales. Un modificador puede aparecer solo una vez por registro. Los modificadores desconocidos se ignoran.

El modificador "redirigir"

redirect = <dominio>

El SPF grabar para dominio reemplazar el registro actual El macro expandido dominio también se sustituye por el dominio actual en esas búsquedas.

Si se utiliza un modificador de 'redirección', el SPF record no debe incluir también el mecanismo 'all'. Si ambos están presentes, se ignora el modificador 'redirigir'. Cualquier modificador de 'redirección' más allá del primero será ignorado.

Ejemplos:

En el siguiente ejemplo, la IP del cliente es 1.2.3.4 y el dominio actual es example.com.

"V = spf1 redirect = example.com"

Si example.com no tiene SPF registro, eso es un error; El resultado es desconocido.
Supongamos que example.com's SPF registro fue "V = spf1 a -todos".
Busque el registro A para example.com. Si coincide con 1.2.3.4, devuelve el Pase.
Si no hay coincidencia, el ejecutivo no puede coincidir y se utiliza el valor -todos.

El modificador "exp"

exp = <dominio>

Si un receptor SMTP rechaza un mensaje, puede incluir una explicación. Un SPF El editor puede especificar la cadena de explicación que ven los remitentes. De esta manera, un ISP puede dirigir a los usuarios no conformes a una página web que proporcione más instrucciones sobre cómo configurar SASL.

El dominio se expande; Se realiza una búsqueda TXT. El resultado de la consulta TXT se macroexpande y se muestra al remitente. Se pueden usar otras macros para proporcionar una explicación personalizada.

El modificador exp solo puede contener caracteres ASCII imprimibles.

¿Demasiadas búsquedas?

En la última década, es cada vez más fácil enviar correos electrónicos. Incontable Fuentes han ingresado al mercado, cada uno de los cuales proporciona un conjunto de herramientas especializadas para satisfacer las necesidades modernas de los vendedores, desarrolladores y pequeñas empresas. Junto con esta expansión, la autenticación de correo electrónico, específicamente SPF, se ha convertido en un asunto cada vez más complejo de navegar.

Dentro de SPF Especificación RFC (esencialmente la ley de Internet) su mentira es un límite práctico de cuántos "mecanismos de consulta DNS" un solo SPF registro puede contener Ese límite es diez. La búsqueda máxima de diez establece que un administrador de dominio (¡ese es usted!) No requerirá que personas como Gmail u otros receptores realicen más de diez búsquedas DNS consecutivas para ver si autoriza a una dirección IP particular a enviar correo en su nombre.

Como se ha convertido en algo común para cualquier organización autorizar una gran cantidad de bloques de red dispares (debido a la naturaleza externalizada de la infraestructura de correo electrónico), sigue habiendo lo que parece la invasión constante e innecesaria en la búsqueda de diez máximos. Sin embargo, este límite sigue siendo completamente práctico y debe observarse para garantizar una entrega oportuna y tarifas de bandeja de entrada favorables. Además, la solución para evitar el límite es abordada directamente por otras prácticas recomendadas de correo electrónico convencionales, alentadas durante mucho tiempo por los principales receptores entrantes como Gmail y Yahoo.

La solución más práctica para evitar el problema de 'demasiadas búsquedas' es utilizar subdominios. Como cada subdominio discreto tiene su propio máximo de diez búsquedas, SPF es efectivamente ilimitado Ejemplo: hello.com tiene permitido diez búsquedas + sub.hello.com tiene permitido diez búsquedas. En pocas palabras, nunca debe ejecutar la condición de búsqueda máxima de diez si está segmentando correctamente diferentes flujos de correo (por ejemplo, transaccional, corporativo, marketing, etc.) en un espacio de nombre discreto.

En esta subsección "consejos de entrega" del Sitio de postmaster de Gmail, se recomienda

  • Use direcciones de correo electrónico separadas
  • Enviar correo desde diferentes dominios y / o direcciones IP

En resumen, nunca debe ejecutarse en la búsqueda máxima de 10. Si lo hace, hemos esbozado algunas estrategias adicionales y materiales basados ​​en el conocimiento sobre cómo navegar.

Lectura adicional:

- Video: Cómo SPF trabajos - Enlace
- Lectura adicional sobre 'demasiadas búsquedas' - Enlace
- Conceptos erróneos comunes sobre SPF - Enlace
- SPF Herramienta de agrimensor - Enlace

¿Desea continuar la conversación? Diríjase al foro de dmarcian Foro