X

Registro DKIM: ¿qué es y cómo funciona?

Los emails son una parte muy importante de la comunicación en Internet, pero las amenazas de seguridad como el phishing y el email spoofing siempre están ahí fuera, por eso se han creado mecanismos para mantenernos protegidos: Entre estos encontramos al protocolo llamado DomainKeys Identified Mail, mejor conocido como DKIM.

¿Qué es DKIM?

Como ya comentamos, DKIM son las siglas de DomainKeys Identified Mail, el cual es un protocolo de autenticación de email que permite al recipiente de un correo verificar si el mensaje fue enviado por un dominio autorizado y no haya sido alterado durante el tránsito de un servidor a otro.

Explica de forma sencilla, el DKIM funciona utilizando una firma digital que se añade a cada correo enviado. Esta firma es generada mediante la clave privada del dominio emisor. Cuando el email es recibido, el servidor receptor verifica la clave pública del dominio emisor para verificar la autenticidad del correo. Esta clave pública está disponible en los registros DNS del emisor.

DKIM se ha convertido en una pieza clave en la lucha contra problemas de seguridad comunes en lo que a emails refiere, como puede ser por ejemplo el email spoofing y el phishing, dos prácticas muy comunes utilizadas con el fin de robar datos y/o engañar a los usuarios.

Lamentablemente no todo el mundo lo utiliza: según un estudio realizado por la firma RedHunt Labs en 2022, solo el 0,04% de los dominios contaba con este registro. Aunque algunas estadísticas han mejorado: Dmarcchecker.app publicó un estudio donde uno de los resultados arroja que el 96,6% de los registros DKIM analizados son válidos.

La importancia de DKIM en la seguridad del correo

El correo electrónico es uno de los medios de comunicación más utilizados, lo cual lo convierte en uno de los blancos prioritarios de los cibercriminales. Los ataques de phishing, en los cuales el atacante se hace pasar por alguien que no es para robar información, son una gran amenaza. Caso similar es el del email spoofing, donde la dirección del emisor es modificada para que parezca que el correo viene de una fuente confiable.

Amenazas de este tipo son mitigadas mediante protocolos como DKIM, gracias a que este permite realizar una autenticación del dominio emisor, protegiendo no solo a los receptores, sino también la reputación del dominio legítimo, ya que los emails firmados con este protocolo tienen menos tendencia a ser considerados spam.

Funcionamiento del protocolo DKIM

Este sistema funciona mediante un par de claves criptográficas: por un lado tenemos una clave privada, la cual se mantiene a buen resguardo en el servidor emisor del correo, mientras que por otro lado tenemos una clave pública, la cual está disponible en los registros DNS del dominio.

Vamos paso a paso cómo funciona:

  1. Lo primero es generar el registro DKIM, esto se hace fácilmente en la zona DNS del dominio en cuestión. Hoy en día de hecho sistemas como cPanel lo integran por defecto o permiten generar un registro DKIM muy fácilmente.
  2. Cuando un correo es enviado desde un servidor con DKIM habilitado, el server genera una firma DKIM única.
  3. La firma generada es anexada en el correo en la forma de un header llamado simplemente DKIM-Signature.
  4. Cuando el servidor receptor recibe el email lo que hace es verificar la clave que el correo tiene anexada, y la contrasta con la clave pública del dominio emisor para verificar la autenticidad del mensaje. Si la firma es válida entonces se confirma que el mensaje fue enviado desde una fuente autorizada y el mensaje en sí no ha sido alterado durante su tránsito de un servidor a otro.
  5. Si la verificación del DKIM fue exitosa, entonces el correo es despachado a la cuenta del usuario receptor. Si la verificación falla, entonces el correo es rechazado, o bien marcado como sospechoso, dependiendo de las políticas del servidor receptor.

Componentes del header

El header DKIM-Signature juega un rol muy importante durante el proceso de autenticación mediante el protocolo DKIM. Veamos a continuación cuáles son sus componentes:

  • v=DKIM1: indica que el encabezado está utilizando la versión 1 de DKIM.
  • a=: especifica el algoritmo utilizado para generar la firma (por ejemplo, rsa-sha256).
  • d=: el dominio que asume la responsabilidad del correo electrónico (el dominio firmante).
  • s=: el selector, que identifica la clave DKIM específica utilizada para generar la firma.
  • h=: una lista de encabezados que se incluyeron en el proceso de firma.
  • bh=: el valor hash del cuerpo del correo.
  • b=: la firma DKIM real, que es una cadena codificada en base64.

Cada uno de estos componentes del header tienen un papel muy importante y son imprescindibles para que la firma pueda ser correctamente autenticada.

Cómo activar DKIM en cPanel: guía paso a paso

Si bien la mayoría de los proveedores usan una opción que permite activar DKIM de forma automática para todos sus usuarios, puede haber casos en que por una razón u otra necesitemos activar DKIM en cPanel manualmente. Este proceso es muy sencillo, así que veamos en qué consiste.

Lo primero que vamos a hacer por supuesto es ingresar en nuestra cuenta cPanel, y una vez allí vamos a hacer click en la herramienta llamada Email Deliverability y allí hacemos click en el botón Administrar del dominio en cuestión.

Casi inmediatamente veremos un apartado correspondiente a DKIM, donde se indicará si el DKIM está activo o no, como en el ejemplo de la imagen de abajo.

En caso de no estar activo, tendremos disponible allí mismo la opción para instalar el registro, para lo cual solo tendremos que hacer click en el botón “Install the suggested record”.

¿Y eso es todo? Pues sí. Como decíamos, sistemas como cPanel permiten gestionar el DKIM y otros registros como SPF y DMARC muy fácilmente. Este tipo de protocolos son considerados un estándar hoy en día, al punto de que muchos servicios de correo directamente rechazan los emails que no estén firmados con DKIM.

DKIM y DMARC: una poderosa combinación

Una de las cosas que mencionamos en el párrafo anterior es DMARC. Se trata de otro protocolo de seguridad para correos que muy a menudo es usado junto a DKIM, y entre ambos se logran excelentes resultados. De hecho es recomendable implementar SPF junto a ellos, pero en este artículo no vamos a expandirnos tanto.

Volviendo a DMARC, este protocolo es muy distinto al DKIM pero es igual de bueno. Gracias a DMARC lo propietarios de los dominios pueden tener un mayor control sobre cómo su dominio es autenticado, de hecho en el caso de que haya un fallo en la verificación de la firma DKIM, gracias al DMARC se puede especificar cómo se debe manejar dicha situación por parte del servidor receptor.

DMARC integra instrucciones varias para estos casos, como puede ser por ejemplo que el email sea rechazado, que sea puesto en cuarentena, o incluso que se notifique al administrador del dominio emisor.

Combinando DMARC junto con DKIM se puede lograr una defensa muy sólida frente a las distintas amenazas que hay en el mundo del correo electrónico.

Problemas comunes y mejores prácticas

Si bien el DKIM es un protocolo excelente, hay que utilizarlo de forma adecuada, así que vamos a ver una serie de problemas comunes que pueden presentarse, así como algunas prácticas recomendadas.

  • Errores en la configuración DNS: si utilizas tus propios registros generados manualmente, recuerda verificar que el registro TXT sea correcto y no contenga errores ni esté cortado. Algunos proveedores a veces limitan la extensión de los registros TXT, y esto puede provocar que el registro DKIM no se guarde completo. En casos como este, una segunda parte en forma de anexo se debería poder incorporar para completarlo.
  • Administración de claves: siempre es buena idea rotar las claves de forma regular, y por supuesto no olvides que las claves viejas tienen que ser borradas de los registros DNS luego de que dejan de ser utilizadas.
  • Compatibilidad con el servidor: no todos los servidores de correo soportan DKIM de forma directa, algunos tienen que ser configurados manualmente, algo que posiblemente tendrás que hacer si estás configurando tu propio servidor de email.
  • Reenvío de correos: el reenvío de emails es una práctica que en algunas situaciones puede romper la firma DKIM, debido a que el mensaje puede ser alterado cuando es reenviado desde un servidor a otro. Para casos como este el DMARC es muy útil para indicar al emisor cómo se debe manejar la situación.

En líneas generales, el DKIM no te debería dar problemas si está implementado mediante paneles como cPanel ya que hoy en día está muy automatizado, pero si optas por tener un servidor de correo propio que no use un panel entonces tendrás que realizar muchas configuraciones manualmente, y revisar todo dos veces para asegurar que no se te escapa ningún detalle.

Conclusión

Como hemos visto en esta ocasión, el DKIM es una herramienta muy poderosa para mantener nuestras comunicaciones mediante email a buen reparo, ya que nos protege del spoofing, phising y otras prácticas maliciosas como la alteración de correos en tránsito.

DKIM funciona autenticando el dominio emisor, y esto asegura no solo la integridad del contenido del correo, sino que además mantiene un nivel de confianza óptimo con los receptores.

Si bien puede parecer complicado, configurarlo es más fácil de lo que parece, sobre todo con herramientas como cPanel. Además, combinar DKIM con otros protocolos como DMARC y SPF te dará una capa extra de seguridad para tu mayor tranquilidad.

Artículos relacionados