Postfix DKIM · 1 min read · Sep 27, 2025

Configurar Postfix DKIM Con dkim-milter

Configurar Postfix DKIM Con dkim-milter

Este manual ha sido reemplazado por http://www.topdog.za.net/postfix_dkim_milter

Introducción

DKIM es un marco de autenticación que almacena claves públicas en DNS y firma digitalmente correos electrónicos en base a dominios. Fue creado como resultado de la fusión de domainkeys de Yahoo y la especificación de correo identificado de Cisco. Está definido en el RFC 4871.

Usaremos la implementación milter de dkim http://dkim-milter.sf.net en CentOS 5.1

Instalación

Instala el rpm, ignora las dependencias ya que csh es una dependencia pero no afecta a dkim-milter; solo se requiere para algunos scripts de ejemplo que se envían con el rpm.

rpm -Uvh http://www.c-corp.net/linux/centos/5/general/RPMS/i386/dkim-milter-2.2.1-1.i386.rpm --nodeps  
mkdir /etc/dkim-milter  
chown dkim-milt.dkim-milt /etc/dkim-milter  
chmod 700 /etc/dkim-milter  
chgrp postfix /var/run/dkim-milter  
chmod 770 /var/run/dkim-milter

Generar Las Claves

Descarga este script que puedes usar para generar fácilmente las claves para firmar el correo:

./dkim-genkey.sh -d 

Reemplaza con el nombre de dominio para el cual firmarás el correo. Esto creará dos archivos default.txt y default.private, default.txt es la línea que necesitas agregar a tu archivo de zona - un ejemplo se muestra a continuación:

default._domainkey IN TXT "v=DKIM1; g=*; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDG81CNNVOlWwfhENOZEnJKNlikTB3Dnb5kUC8/zvht/S8SQnx+YgZ/KG7KOus0By8cIDDvwn3ElVRVQ6Jhz/HcvPU5DXCAC5owLBf/gX5tvAnjF1vSL8ZBetxquVHyJQpMFH3VW37m/mxPTGmDL+zJVW+CKpUcI8BJD03iW2l1CwIDAQAB"
; ----- DKIM por defecto para topdog-software.com

default.private contiene tu clave privada. Mueve este archivo a /etc/dkim-milter y renómbralo _default.key.pem:

mv default.private /etc/dkim-milter/_default.key.pem

Edita el archivo /etc/sysconfig/dkim-milter y establece las variables:

USER="dkim-milt"
PORT=local:/var/run/dkim-milter/dkim.sock
SIGNING_DOMAIN=""
SELECTOR_NAME="default"
KEYFILE="/etc/dkim-milter/${SIGNING_DOMAIN}_${SELECTOR_NAME}.key.pem"
SIGNER=yes
VERIFIER=yes
CANON=simple
SIGALG=rsa-sha1
REJECTION="bad=r,dns=t,int=t,no=a,miss=r"
EXTRA_ARGS="-h -l -D"

Corrección del Script de Inicio

Instala mi script de inicio modificado ya que el que se proporciona con el rpm tiene un error.

wget http://www.topdog-software.com/files/dkim-milter -O /etc/init.d/dkim-milter  
chkconfig --level 345 dkim-milter on   
service dkim-milter start

Configurar Postfix

Agrega esto al archivo de configuración de postfix /etc/postfix/main.cf:

smtpd_milters = unix:/var/run/dkim-milter/dkim.sock
non_smtpd_milters = unix:/var/run/dkim-milter/dkim.sock

Agrega a los milters existentes si ya tienes otros milters configurados.

Inicia dkim-milter y reinicia Postfix:

 service dkim-milter start
service postfix restart

Pruebas

Envía un mensaje a [email protected]; el sistema devolverá una respuesta para informarte si DKIM está funcionando. Examina los encabezados de los correos de dominios como gmail para ver si tu sistema está verificando las firmas DKIM del correo entrante.

Correo DKIM en Gmail

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.