Guía de configuración de protocolos de correo electrónico de Red Sift

Publicado el:30 de septiembre de 2025
Última modificación:1 de abril de 2026
Capítulo:11 min de lectura
Guía:82 min de lectura
image
Explora nuestra guía

Learn more about DKIM

Why is DKIM key rotation important?

You can rotate DKIM keys by simply replacing the old pair with a new one to authenticate DKIM emails. If a threat actor steals or deciphers your private key, they won’t be able to use it for long if you practice regular DKIM key rotation.

In addition, regularly updating your DKIM keys increases your domain’s email deliverability rate.

How often should DKIM keys be rotated?

It’s generally suggested to rotate DKIM keys every 6 to 12 months. Frequent rotation stops hackers from intercepting and decoding your cryptographic keys. Less frequent rotation (say, once every couple of years) makes your domain more susceptible to the risk of intercepted or decoded keys.

What’s a long DKIM Key?

Some DNS editors can receive errors when DKIM keys or other TXT entries are longer than 255 characters. To resolve this issue, you can enter your DKIM key by breaking it up into pieces on a single TXT entry.

For example, if your DKIM key is:

"v=DKIM1; k=rsa; p=abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabc"

You can enter it as:

"v=DKIM1; k=rsa; p=abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz" "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabc"

You can divide them at arbitrary places. The double quote enclosed parts should be separated by a single space character, not a new line.

What is DKIM canonicalization?

Canonicalization is a process whereby the headers and body of an email are converted to a canonical standard form before being DKIM signed. This can be thought of as converting data into a standard canonical form.

Some mail systems, such as forwarders, modify emails in transit that can potentially invalidate the DKIM signature applied. While some DKIM signers may accept minor mail modifications, others may be more strict and require stricter canonicalization.

Two canonicalization algorithms have been created to satisfy mild modification to a message and almost no modification to a message before signing. The two canonicalization algorithms are relaxed and simple respectively. 

From DKIM’s perspective, the headers and body of an email are separate and canonicalization algorithms are specified for both, one for the headers and another for the body.

They are represented in the format of canonicalization/canonicalization for the header and body respectively. If no canonicalization is specified then simple is used for both headers and body, so it would look like this: simple/simple.

The simple/simple canonicalization is the stricter of the two and allows for almost no modification to the message header and body. However, this can affect the DKIM signature being invalidated by some forwarders as the email passes through them. Many of the issues with DKIM being invalidated during forwarding can be solved if the canonicalization is changed to relaxed/relaxed to allow for mild modifications to the emails.

What is a DKIM selector?

A DKIM selector is a string that points to a specific DKIM public key record in your DNS. It is specified as s= tag in the DKIM-Signature header field and can be found in the technical headers of an email.

Validation on the receiver side uses the selector in combination with the signing domain in order to carry out a DNS query and find the public key in your DNS. 

For example:

“selector”._domainkey.yourdomain

When the receiver retrieves the public key it uses it to verify the DKIM signature.

icon

No two services should use the same selector. For example, if you are sending emails from a number of services on behalf of your domain such as Google, Mailchimp, Salesforce, and Sendgrid, each one must use a unique key and selector in your DNS. If the selectors were the same the recipient would not be able to tell which key to use to decipher a particular email. 

What is the l= tag in DKIM?

The l= tag in DKIM specifies the length of the message body that should be included in the DKIM hashing and signing process. This means that only the specified portion of the message body is signed, while the remainder is not included in the cryptographic signature.

This tag is optional. If it is not used, the entire message body is included in the signature by default.

What are the security concerns around using the l= tag in DKIM?

When the l= tag is used in DKIM, only a specified portion of the message body is included in the cryptographic signature, leaving the rest unsigned. This creates a security risk, as attackers can modify the unsigned portion of the message without invalidating the DKIM signature.

This vulnerability means that an attacker could intercept a legitimate email from a reputable sender, append malicious content to the unsigned part of the message, and resend it to a recipient who trusts the sender. Such an attack could damage the reputation of the sending domain and potentially deceive recipients.

To mitigate this risk, it is recommended not to use the l= tag in your DKIM signing process. Additionally, audit your vendors to ensure they are not including this tag when sending emails on your behalf. 

What is DKIM Header oversigning?

DKIM is used to sign specific headers or parts of the email body, such as the "From," "Subject," and other headers, to verify the identity of the sender and ensure the integrity of the message. If a signed header is modified after being sent, the DKIM verification will fail.

Attackers may attempt to inject additional headers into an email or modify existing ones for malicious purposes. Oversigning common headers, such as "From," "Subject," "Reply-To," etc., can help protect your emails from manipulation and replay attacks. Oversigning means that you include multiple instances of the same header, effectively signing each one to prevent tampering.

By sending a test email to Red Sift’s Investigate tool, you will be able to see what headers are DKIM signed in your email and if you are oversigning. 

What is a DKIM replay attack?

A DKIM replay attack is a type of email attack in which an attacker takes a legitimate, DKIM-signed email and resends it to multiple recipients. The attacker exploits the DKIM signature, which verifies the email's authenticity and integrity, to benefit from the original sender's reputation. This increases the likelihood that the replayed email will bypass spam filters and land in the recipients' inboxes, as it appears to come from a trusted source.

How does DKIM help with forwarded mail?

DKIM helps with forwarded mail by providing a mechanism to verify the authenticity and integrity of an email, even after it has been forwarded. Forwarding can often alter email headers, which can cause issues with other email authentication methods like SPF (Sender Policy Framework).

Without DKIM, forwarded emails may fail to reach the recipient's inbox, especially if the sender's domain is protected by a strict DMARC (Domain-based Message Authentication, Reporting, and Conformance) policy. This is because SPF authentication often fails during forwarding, and without both SPF and DKIM, a DMARC policy of p=reject will instruct the recipient's server to reject the email.

It is strongly advised not to set a DMARC policy of "reject" without first implementing an aligned DKIM signature for all your email sending systems. This ensures that at least one authentication mechanism remains intact when SPF fails.

However, it's important to note that DKIM can also fail when an email is forwarded, particularly if the forwarder modifies any of the DKIM-signed headers or the body of the email. This can happen due to email security gateways, external disclaimer banners, or other modifications introduced during the forwarding process.

Can an email contain more than one DKIM signature i.e. be DKIM signed multiple times? 

Yes, an email can contain multiple DKIM signatures, and this is quite normal. This typically occurs when an email passes through different systems that each apply their own DKIM signature. For example, an email service provider (ESP) might add a DKIM signature to track reputation feedback, and another DKIM signature might be added when the email is sent from one system to another on its way out to the internet. If both systems are configured to DKIM sign emails, the email will end up with multiple DKIM signatures.

It's important to note that one of the signatures may fail (often the first one, if the email is modified between the initial and subsequent signing), but as long as at least one signature passes verification, the DKIM check will be considered successful.

How does ARC come into play when DKIM or DMARC fail? 

As mentioned earlier, DKIM may fail when an email is forwarded. ARC (Authenticated Received Chain) addresses the limitations of DKIM and DMARC in scenarios involving email forwarding and mailing lists by preserving the original authentication results through a sequence of cryptographic signatures, creating a chain of custody.

ARC helps ensure that legitimate emails can be trusted and delivered, even if modifications by intermediaries cause DKIM or DMARC failures. It does this by allowing the forwarding server to attest to the original authentication results and the integrity of the message when it was first received.

However, the use of ARC relies on the email forwarder to implement it, establishing this chain of custody. Even if an email passes ARC, it does not necessarily guarantee that the email will be trusted or delivered to the recipient's inbox. The final decision lies with the receiving system, which determines whether to trust the established chain of custody.

Common DKIM misconfigurations

  • Using Weak or Deprecated Cryptographic Algorithms: Avoid using DKIM keys that are less than 1024 bits. A 2048-bit key is recommended for stronger security. Additionally, ensure you use up-to-date cryptographic algorithms, such as rsa-sha256.
  • Not Splitting Longer Keys Correctly in DNS: When publishing a 2048-bit key in DNS, it may be necessary to split the key into multiple DNS records if your DNS host does not automatically handle this. Failure to do so can result in DKIM verification failures. Refer to the specific guidance or examples provided for splitting keys correctly.
  • Enabling DKIM in a Third-Party System Without Publishing the Corresponding Public Key: DKIM relies on a private/public key pair. The sender (e.g., a third-party vendor) holds the private key, which is used to sign outgoing emails. It is crucial to publish the corresponding public key in your domain's DNS records, provided by the vendor, to enable proper DKIM verification.
  • Missing Required Tags in a DKIM Record: Ensure that your DKIM record begins with v=DKIM1;. This is a required tag that identifies the record as a DKIM record.
  • Using the Wrong Record Type: Make sure to publish your DKIM record using the correct DNS record type, such as TXT or CNAME, as specified by the third-party sender. Some providers may require a TXT record for DKIM, while others might use CNAME. Additionally, some vendors, like Microsoft 365 or Amazon SES, may provide multiple DKIM records to facilitate easy key rotation and management.
free trial imagefree trial image
Email set up correctly? Find out free in under a minute

DKIM recommendations summary

  • Oversign email headers.
  • Rotate DKIM keys at least once a year.
  • Use strong keys (at least 1024-bit) and up-to-date algorithms.
  • Avoid using the l= tag.
  • Remove unused DKIM records from DNS.
  • Implement DMARC with DKIM for better insight and protection.

Technical DKIM configuration tips

Generating 2048 bits DKIM public and private keys using OpenSSL on a Mac

Learn how to generate 2048 bits DKIM public and private keys using the Mac terminal and create a DNS record.

How to generate the private and public keys

  1. Open the terminal and type openssl
  2. To generate a private key type: openssl genrsa -out private.key 2048
  3. To generate a public key from the private key type: openssl rsa -in private.key -pubout -out public.key
  4. Find the folder that contains your public key and open it. It should look something like the image below.
  5. Manually convert the highlighted text above to a single line ie. remove the spaces between new lines.
imageimage
Public key example

How to create the DNS record

The generated 2048-bit DKIM public key is too long to fit into a single TXT DNS record. A DNS record can be up to 255 characters. Therefore your public key will need to be split into two separate TXT records using quotes and slash or brackets and quotes as shown below. 

Note: this depends on your DNS provider.

  • TXT "part one" \ "part two"
  • TXT ( "part one" "part two" )

To create the DNS record you will have to specify the Name, Type, and Value of the DNS record.

The DNS record Name will look like this: 

selector._domainkey.domain

Where the selector is defined by you and can be called anything, for example, the date, device, or service that will sign the emails.

For example: 

20180719._domainkey.redsift.io

The DNS record Type is TXT.

The DNS record Value should look like the examples below. The part in bold is copied from the generated public key file and remember that you will need to split the public key into two records.

Splitting examples

Example 1 using quotes

TXT record 1:

“v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlTtO1qRFaK955gz16Y8c1EMCqtaT4exCrwfor2yT438ZVjrUcqo2tPUNR4eqkD+xcKRQnWSw931uVUY6YJWtOrgrXTIrHnTkf5Xtg+jaXr0OhjdeVDIG/Le7oOVWncMf+9J4ZSRybOpb+XZPp/JLjis6pmC”

TXT record 2: 

“Lrt5j82yBC9DCbsEPSOVVOC1mr5lq8irQs+qAv6M/DnjNcUrdiRBJyNrs2lfuvfs8BFceZAk1AwcVBcYCmZl5OkxZBn8liTC34FPJLLHm6jMp9+c0OaEtxo8zr3QX0ZYEWC3XqZ/p9fo4Pcg+fpyjee79wBVqUzhVAWdzE5+qAIn4e1Dmslyb6IX4mwIDAQAB”

Example 2 using brackets and quotes

TXT record 1: 

(“v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlTtO1qRFaK955gz16Y8c1EMCqtaT4exCrwfor2yT438ZVjrUcqo2tPUNR4eqkD+xcKRQnWSw931uVUY6YJWtOrgrXTIrHnTkf5Xtg+jaXr0OhjdeVDIG/Le7oOVWncMf+9J4ZSRybOpb+XZPp/JLjis6pmC”

TXT record 2: 

“Lrt5j82yBC9DCbsEPSOVVOC1mr5lq8irQs+qAv6M/DnjNcUrdiRBJyNrs2lfuvfs8BFceZAk1AwcVBcYCmZl5OkxZBn8liTC34FPJLLHm6jMp9+c0OaEtxo8zr3QX0ZYEWC3XqZ/p9fo4Pcg+fpyjee79wBVqUzhVAWdzE5+qAIn4e1Dmslyb6IX4mwIDAQAB”)

free trial imagefree trial image
Email set up correctly? Find out free in under a minute

Preguntas frecuentes: Guía de configuración de protocolos de correo electrónico

¿Cuál es la diferencia entre SPF hard fail (-all) y soft fail (~all), y cuál debería usar en 2026?

En la era anterior a DMARC, los registros SPF solían usar el mecanismo "-all" para aplicar estrictamente las políticas del remitente. Sin embargo, la orientación actual de la industria en 2026 prefiere "~all" para equilibrar seguridad y entregabilidad, evitando el rechazo innecesario de correos válidos que podrían fallar SPF pero pasar DKIM y DMARC.

Esto se debe a que "~all" cuando se implementa junto con DMARC (en p=reject) sigue rechazando el correo no autenticado si SPF y DKIM fallan, pero no bloquea el correo legítimo, mejorando así la entregabilidad general del correo electrónico.

La especificación de DMARC (RFC 7489) indica que un prefijo "-" en el mecanismo SPF del remitente, como "-all", puede provocar que el rechazo se efectúe temprano durante el procesamiento, causando el rechazo del mensaje antes de cualquier evaluación DMARC. Utilice "-all" solo para dominios inactivos que no envían correos (dominios que no envían ningún correo en absoluto). DMARC ignora los matices entre soft fail y hard fail en la configuración de SPF, tratándolos a ambos como fallos de SPF.

¿Cómo funciona la alineación de DMARC y cuál es la diferencia entre la alineación estricta y la relajada?

DMARC no solo requiere que SPF o DKIM PASEN sino que también exige que al menos uno de los dominios utilizados por SPF o DKIM se alinee con el dominio que aparece en el encabezado From. Una correcta alineación es crítica para la entregabilidad de correos en 2026, ya que los principales proveedores de buzones aplican estos requisitos.

En el caso de SPF, la alineación de identificador significa que la verificación de MAIL FROM/Return-PATH debe PASAR y además el dominio en MAIL FROM/Return-PATH debe coincidir con el dominio del From. En alineación estricta, los dominios deben coincidir exactamente, mientras que en la alineación relajada se permiten subdominios siempre que provengan del mismo dominio organizacional.

Por ejemplo, si MAIL-FROM/RETURN-PATH es @ondmarc.com y el encabezado From es @knowledge.ondmarc.com, en alineación estricta no están alineados. Sin embargo, en modo de alineación relajada, DMARC aprobaría.

¿Qué son los informes agregados y los informes forenses de DMARC y en qué se diferencian?

Un informe agregado de DMARC contiene información sobre el estado de autenticación de los mensajes enviados en nombre de un dominio. Es un informe de retroalimentación en XML diseñado para brindar visibilidad sobre los correos que aprobaron o fallaron SPF y DKIM. El informe ofrece a los propietarios de dominios una visión precisa de qué fuentes envían en su nombre y la disposición de esos correos (la política que aplicó el receptor).

Los destinatarios revisarán la etiqueta 'rua' de tu registro DMARC y enviarán allí los informes. Puedes especificar el intervalo de generación de informes agregados utilizando la etiqueta ri en tu registro DMARC (por defecto, está establecido en 86400 segundos, que equivale a 24 horas). Los informes forenses contienen información más detallada sobre fallos de autenticación individualizados. Se elimina cualquier información personal identificable (PII), pero se incluye información útil para solucionar el fallo DMARC, como detalles del fallo de encabezado SPF y DKIM, la dirección From completa y el Asunto del correo electrónico.

La dirección para recibir informes forenses DMARC se especifica mediante la etiqueta 'ruf' en tu registro DMARC. No todos los sistemas receptores son compatibles con el envío de informes forenses. Red Sift OnDMARC es una de las únicas aplicaciones DMARC del mercado que recibe informes forenses gracias a su alianza con Yahoo.

¿Qué son las macros SPF y por qué podrían causar problemas de entregabilidad?

Una macro SPF se refiere a un mecanismo utilizado en los registros SPF para definir conjuntos reutilizables de direcciones IP. Las macros SPF mejoran la flexibilidad y la capacidad de mantenimiento de los registros SPF al permitir definir conjuntos complejos de direcciones IP en un solo mecanismo, que luego se pueden referenciar en varios registros SPF. Por ejemplo, en lugar de listar cada dirección IP individualmente para cada servidor autorizado, puedes definir una macro como "%{i}" que llama a la IP del remitente del correo. Gestionar SPF de este modo te permite controlar una lista amplia de IPs sin alcanzar el límite de consultas SPF, y además oculta qué IPs apruebas para consultas públicas.

Sin embargo, dependiendo de cómo esté estructurado el registro SPF con macros, la falta de expansión de macros podría resultar en fallos SPF o resultados 'Neutral' (indicados por el mecanismo ?all). Si las macros SPF son cruciales para autorizar servidores legítimos, es más probable que los correos fallen la validación SPF o sean marcados como sospechosos por los receptores que dependen de SPF para la autenticación.

¿Qué es MTA-STS y cómo debe desplegarse para evitar bloquear la entrega de correos?

Mail Transfer Agent Strict Transport Security (MTA-STS) es un estándar que permite el cifrado de mensajes enviados entre dos servidores de correo. Especifica a los servidores de envío que los correos solo pueden enviarse a través de una conexión cifrada Transport Layer Security (TLS), lo que impide que los mensajes sean interceptados por ciberdelincuentes.

La adopción de MTA-STS ha crecido significativamente, y las organizaciones en 2026 reconocen la seguridad de la capa de transporte como esencial para proteger el correo electrónico en tránsito. Para que los dominios receptores permitan MTA-STS, deben anunciar su soporte en DNS y publicar un archivo de configuración de política en su sitio web.

La activación de MTA-STS debe hacerse cuidadosamente para evitar el bloqueo de correos. Debe desplegarse primero en modo de prueba, permitiendo que los informes TLS brinden información sobre cualquier error que deba resolverse antes de pasar a la fase final de aplicación. Este enfoque progresivo probablemente se convertirá en práctica estándar en 2026 para las organizaciones que implementen seguridad de transporte.

¿Qué es TLS-RPT y cómo funciona junto con MTA-STS?

SMTP TLS Reporting (o TLS-RPT) permite la notificación de problemas de conectividad TLS detectados por los MTAs de envío y está definido en el RFC8460. Al igual que DMARC, TLS-RPT se basa en el envío de informes por correo para notificar a los propietarios del dominio cuando la entrega falla debido a problemas con TLS. Estos informes incluyen políticas MTA-STS detectadas, estadísticas de tráfico, conexiones no exitosas y motivos del fallo.

Con la función MTA-STS de Red Sift OnDMARC, no tienes que preocuparte por una implementación compleja. Simplemente añade los Smart Records de MTA-STS que OnDMARC proporciona a tu DNS y Red Sift se encarga de todo lo demás: alojar el archivo de política MTA-STS, mantener el certificado SSL y señalar cualquier violación de políticas mediante el informe TLS. Las plataformas DMARC modernas en 2026 incluyen cada vez más el alojamiento de MTA-STS como una característica estándar, facilitando el despliegue de la seguridad de transporte.

¿Qué es DANE y en qué se diferencia de MTA-STS?

Publicado bajo el RFC 7671, DANE (DNS-based Authentication of Named Entities) introduce un nuevo estándar para configurar comunicaciones TLS entre un cliente y un servidor, sin depender de Autoridades Certificadoras (CAs) de confianza.

El modelo tradicional de TLS basado en CA permite que cualquier CA emita un certificado para cualquier dominio. DANE opera de forma diferente, apoyándose en la infraestructura DNSSEC (Domain Name System Security Extensions) para vincular un nombre de dominio a un certificado. DANE utiliza el protocolo DNSSEC existente para asegurar que los datos recibidos sean auténticos y no hayan sido manipulados.

DANE también introduce un nuevo tipo de registro DNS llamado TLSA, que señala al cliente que un servidor es compatible con TLS. Se recomienda implementar tanto MTA-STS como DANE. DANE es un requisito para muchos gobiernos, de modo que organismos públicos en la Unión Europea suelen estar obligados a implementarlo.

DANE y MTA-STS solo ayudan si el remitente los soporta, pero muchos remitentes solo soportan uno u otro, así que implementar ambos mejora la seguridad general. En 2026 las organizaciones suelen desplegar primero MTA-STS para una mayor compatibilidad y luego incorporar DANE para mayor seguridad cuando se requiere.

¿Cuál es el propósito de la política de subdominio DMARC (etiqueta sp) y cómo se debe usar?

La política de subdominios permite a los administradores de dominio proteger diferentes dominios y subdominios en función del avance en la implementación de DMARC. Por ejemplo, si todos tus servicios de envío de correos en nombre del dominio principal están plenamente configurados con SPF y DKIM, puedes proteger el dominio principal con una política DMARC de p=reject mientras mantienes los subdominios en p=none, y viceversa.

También, si tienes un servicio de envío de correos que no cumple con DMARC (no soporta SPF ni DKIM), puedes decidir asignarle un subdominio y tener una política DMARC diferente para ese subdominio, sin que eso impida proteger tus otros dominios. Esto te permite distribuir el tráfico entre subdominios y proteger cada uno por separado.