Todos sobre los registros DKIM

Todo sobre los registros DKIM

En artículos anteriores estuvimos hablando sobre los registros SPF y cómo proceder cuando estos son demasiados largos. Hoy hablaremos sobre los registros DKIM (DomainKeys Identified Mail), los cuales son un mecanismo de autenticación de correo electrónico que permite a una organización responsabilizarse del envío de un mensaje, de manera que éste pueda ser validado por un destinatario. Dicha organización puede ser una fuente directa del mensaje, como el autor, el servidor encargado de gestionar el correo de ese dominio, o un servidor intermedio situado en el tránsito que recorre dicho correo, como por ejemplo un servicio independiente que provee recursos de correo al servidor que gestiona el dominio principal. La necesidad de este tipo de autenticación surge por la falsificación de contenidos de las que hace uso el spam.

DKIM funciona de la siguiente manera:

  1. Cuando envías un correo electrónico, se incluye una especie de “firma” o “huella digital” en el encabezado, esto es transparente para el usuario. Y estas marcas son únicas e intransferibles, por lo que no pueden ser falsificadas.
  2. En el momento en el que el servidor recibe el mensaje de correo electrónico, acude al DNS del remitente.
  3. Cuando DKIM está configurado, el servidor recibe esa “llave” mencionada anteriormente para descifrar esa firma.
  4. Se identifica el remitente y se valida si el mensaje de correo electrónico es auténtico.

La siguiente figura de la Wiki de Zimbra explica de forma ilustrada el funcionamiento descrito anteriormente:

Funcionamiento de DKIM

Funcionamiento de DKIM

¿Cómo configurar los registros DKIM?

La implementación de DKIM se basa en tres fases:

  1. Generar una llave pública/privada que será usada para firmar y validar los mensajes.
  2. Configurar el servidor de correo para que firme con DKIM los mensajes salientes con la llave privada.
  3. Publicar la llave pública en la zona directa del DNS público como un registro de tipo TXT.

Los registros DKIM pueden ser generadas mediante las siguientes herramientas en línea:

  • DKIMCore. Con esta herramienta solo tienes que especificar el dominio y a partir de ahí se generará la llave privada y pública, así como ejemplos de configuración para Bind9 y TinyDNS.
  • Port25.
  • DNSWatch. Requere tener genereda la llave pública e insertarla en el formulario.

La llave privada puede ser generada de forma local mediante OpenSSL:

Para generar la llave pública a partir de la llave privada anterior:

Una vez generado el registro DKIM mediante una de las herramientas anteriores, insértalo en tu servidor DNS público como un registro de tipo TXT. Un ejemplo para Bind pudiera ser:

En ejemplo anterior podemos observar que un registro DKIM en el DNS se compone de:

  • Selector: 1527441507.midominio. Permite diferenciar los diferentes registros que puede tener un dominio, a diferencia de SPF pueden existir varios registros DKIM en un mismo dominio.
  • Señalización del registro DKIM: _domainkey.midominio.com. Se compone del Selector más este fragmento.
  • Contenido del registro DKIM.

La configuración para la firma con DKIM de correos salientes depende exlusivamente del tipo de servidor que uses. Para el caso de Exim4, básicamente los pasos serían:

  • Edita el archivo de macros /etc/exim4/conf.d/main/000_localmacros para la configuración dividida por partes. En caso contrario el archivo sería /etc/exim4/exim4.conf.localmacros y agrega las siguientes líneas:

  • El archivo que contiene la llave privada debe ser accesible por el usuario Debian-exim:

  • Finalmente aplicar los cambios

¿Cómo comprobar los registros DKIM?

Existen múltiples herramientas que nos permiten comprobar los registros DKIM:

  • dkimvalidator.com. Valida no solo DKIM sino SPF y SpamAssassin. La comprobación aquí es más profunda pues lo realiza a través de los encabezados del correo electrónico que debes de enviar a la dirección aleatoria que te indican. Para pasar éxitosamente esta prueba tu servidor de correo debe firmar los mensajes salientes con DKIM.
  • MXToolBox.
  • DKIMCore.

Punto Final

El hecho de que tu dominio de correo emplee SPF y DKIM le da mayor autoridad ante otros servidores de correo y evitas con ello que alguien pueda enviar correos a nombre de tu dominio desde direcciones IPs no autorizadas.

0 comentarios

Dejar un comentario

¿Quieres unirte a la conversación?
Siéntete libre de contribuir

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *