DKIM & SPF con Postfix


DKIM SPF Mail Authentication

DomainKeys Identified Mail (DKIM) es un sistema de validación de correo electrónico o email diseñado para permitir al sistema receptor corroborar la procedencia y asegurar que el mensaje no ha sido modificado durante la transferencia del mismo.

¿Como añadir una firma DKIM al correo saliente en un servidor Ubuntu con Postfix?

A continuación explicaremos el proceso para instalar y configurar DKIM y SPF en tu servidor Ubuntu con Postfix.

Instalación DKIM

apt-get install opendkim opendkim-tools

Configuración DKIM

Abrimos el archivo de configuración.

sudo nano /etc/opendkim.conf

Agregamos o modificamos las siguientes lineas:

Domain domain.com
KeyFile /etc/postfix/dkim.key
Selector dkimIDmail
SOCKET inet:8891@localhost

Abrimos el archivo OpenDKIM:

sudo nano /etc/default/opendkim

Modificamos el socket por default

SOCKET="inet:8891@localhost"

Abrimos el archivo de configuración de Postfix.

sudo nano /etc/postfix/main.cf

Y agregamos las siguientes lineas:

milter_default_action = accept
milter_protocol = 2
smtpd_milters = inet:localhost:8891
non_smtpd_milters = inet:localhost:8891

Generamos una clave o firma

Utilizamos los valores utilizados anteriormente en el archivo de configuración.

opendkim-genkey -S <selector> -d <domain.com>

Ahora se han creado dos archivos: dkimIDmail.private y dkimIDmail.txt; el archivo “private” sera el que se utilizara para firmar los mensajes de correo salientes.

Movemos este archivo al directorio que hemos especificado (KeyFile) anteriormente en el archivo de configuración.

cp dkimIDmail.private /etc/postfix/dkim.key

Finalmente debemos actualizar nuestro DNS y agregamos un registro TXT.

Para visualizar la clave o firma DKIM generada utilizamos el siguiente comando:

cat dkimIDmail.txt

Y veremos algo similar a esto:

dkimIDmail._domainkey IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSpGS1b3DQEBAQUA4AGNADCBiQKBgQDEq0vmur2yhHzzWrM6Pe+VyBya9omMbqaz+ngfuxfYUtUm9KGUREkllcRo8NTLCx9n8So+ZAtAalyUYsxXfqTvgHGlurcEL71OTv+se8DjY9d7SAKDvi+nJuX2lHHUWjlvNTj78rxiMMgT00FVptlbkonm0kGfq/q+QOfv+RtlwIDAQAB"

Actualizamos nuestro DNS con el valor anterior.

Es decir, usaremos un registro tipo TXT en nuestro DNS y de acuerdo al ejemplo anterior configuraremos dicho registro con el nombre dkimIDmail._domainkey y con el valor "v=DKIM1; k=rsa; p=MIGfMA...".

Una vez terminada la configuración debemos iniciar el servicio DKIM y reiniciar Postfix.

sudo service opendkim start
sudo service postfix restart

Probar DKIM

Para comprobar que los correos están siendo firmados correctamente existen varios métodos.

Configurar un registro SPF

De manera complementaria a DKIM podemos configurar un registro de tipo TXT en nuestro DNS para identificar los servidores de correo autorizados para enviar mensajes de correo a nombre de nuestro dominio.

* Ya no se recomienda el uso de registros tipo SPF en el DNS, de manera oficial es una práctica obsoleta y en su lugar se recomienda usar registros de tipo TXT con el valor correspondiente.

Ejemplo:

v=spf1 ip4:84.101.76.148 include:_spf.google.com ~all

En el ejemplo anterior estamos indicando que solamente autorizamos los mensajes de correo enviados a través de Gmail o Google Apps, además del servidor con la IP indicada.

Para mas información sobre la sintaxis SPF puedes consultar los siguientes links:


2 respuestas a “DKIM & SPF con Postfix”

Deja un comentario

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