Ok, logré resolver esto por mi cuenta, pero quería publicar los pasos aquí para la posteridad porque no había documentación sobre esto (que pude encontrar) y era prácticamente adivinar y verificar.
Después de configurar "Dominio *" como se describe anteriormente, lo firmaría así:
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=clientdomain.com;
s=main; t=1250005729;
bh=twleuNpYDuUTZQ/ur9Y2wxCprI0RpF4+LlFYMG81xwE=;
h=Date:From:To:Message-Id:Subject:Mime-Version:Content-Type;
b=kohI7XnLlw/uG4XMJoloc4m9zC13g48+Av5w5z7CVE0u3NxsfEqwfDriapn7s7Upi
31F3k8PDT+eF57gOu2riXaOi53bH3Fn/+j0xCgJf8QpRVfk397w4nUWP/y8tz4jfRx
GhH21iYo05umP0XflHNglpyEX02bssscu2VzXwMc=
observe el "d = clientdomain.com". Estaba generando esto basado en la dirección de origen del correo electrónico, donde la dirección de origen era algo así como "[email protected]". Obviamente, si verificaba el dominio del cliente y no el mío, no había ningún registro TXT DNS y la verificación fallaba.
De todos modos, descubrí en esta documentación que puedes establecer un parámetro KeyList.
http://manpages.ubuntu.com/manpages/hardy/man5/dkim-filter.conf.5.html
Realmente no describía lo que quería hacer, pero pensé que jugaría con eso. Comenté KeyFile y configuré KeyList en "/etc/mail/dkim_domains.key", que es un nombre de archivo arbitrario que inventé. Luego creé ese archivo y lo puse "*: feedmailpro.com: /etc/mail/dkim.key". Esto lo indica para cualquier dominio de cliente, fírmelo con mi dominio (feedmailpro.com) y use el archivo dkim.key.
Reiniciamos DKIM y postfix
sudo /etc/init.d/dkim-filter restart
sudo /etc/init.d/postfix restart
Ahora esta es la clave que generó cuando envié un correo electrónico de prueba.
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=feedmailpro.com;
s=dkim.key; t=1250005729;
bh=twleuNpYDuUTZQ/ur9Y2wxCprI0RpF4+LlFYMG81xwE=;
h=Date:From:To:Message-Id:Subject:Mime-Version:Content-Type;
b=kohI7XnLlw/uG4XMJoloc4m9zC13g48+Av5w5z7CVE0u3NxsfEqwfDriapn7s7Upi
31F3k8PDT+eF57gOu2riXaOi53bH3Fn/+j0xCgJf8QpRVfk397w4nUWP/y8tz4jfRx
GhH21iYo05umP0XflHNglpyEX02bssscu2VzXwMc=
Mejora, verá que d = ahora está configurado en mi dominio (aunque la dirección de origen del correo electrónico no era mi dominio). Sin embargo, s = se cambió a "dkim.key" en lugar del selector que elegí en dkim-filter.conf. En las instrucciones de configuración originales, configuré el selector en "mail". Eso fue extraño, pero noté que lo cambió al nombre de archivo de mi clave, dkim.key.
Así que fui y renombré "/etc/mail/dkim.key" a "/ etc / mail / mail". También actualicé la referencia en "/etc/mail/dkim_domains.key".
Reinicie dkim-filter y postfix nuevamente igual que antes, y ahora comenzó a funcionar. Aquí está el encabezado final que firma correctamente usando el selector derecho (aparentemente basado en el nombre de archivo de la clave).
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=feedmailpro.com;
s=mail; t=1250006218;
bh=tBguOuDhBDlhv0m4KF66LG10V/8ijLcAKZ4JbjpLXFM=;
h=Date:From:To:Message-Id:Subject:Mime-Version:Content-Type;
b=c9eqvd+CY86BJDUItWVVRvI3nibfEDORZbye+sD1PVltrcSBOiLZAxF3Y/4mP6vRX
MUUNCC004oIH1u7FYafgF32lpuioMP1cd7bi6x3AZ5zH4BYETNBnnz4AhAPBtqlIh/
FFMz8jkhhLhcM2hDpwJkuKjAe3LzfNVDP8kD11ZI=
Ahora s = mail tiene razón, y d = feedmailpro.com tiene razón. ¡Funciona!
En general, esto fue mucho más difícil de lo que esperaba y parecía haber cero documentación sobre cómo hacer esto (firmar para todos los dominios salientes), pero supongo que es un software de código abierto, así que no me puedo quejar.
Una nota final, para verificar si el registro TXT DNS se configuró correctamente, puede hacer un comando como con su dominio
dig mail._domainkey.feedmailpro.com TXT
Es posible que necesite instalar dig (sudo apt-get install dig). Si está utilizando el administrador de Slicehost para agregar la entrada DNS, ingresaría el registro TXT de esta manera.
Type: TXT
Name: mail._domainkey
Data: k=rsa; t=s; p=M5GfMA0...YOUR LONG KEY...fIDAQAB
TTL seconds: 86400
Realmente no entiendo por qué el nombre se establece en "mail._domainkey" sin un punto al final o sin mi dominio, como "mail._domainkey.feedmailpro.com". Pero lo que sea, parece funcionar, así que estoy feliz.
Si está intentando duplicar esto, aquí están las instrucciones con las que comencé:
https://help.ubuntu.com/community/Postfix/DKIM
Inspirado por la respuesta de Brian Armstrong para dkim-filter, así es como hice esto para OpenDKIM .
/etc/opendkim.conf
Tenga en cuenta que SigningTable tiene refile: en su definición, esto especifica que el archivo incluye expresiones regulares; en nuestro caso el comodín *.
/ etc / mail / dkim_key_table
Aquí keyname se usa para hacer coincidir la clave entre este archivo y el archivo dkim_signing_table. En mi archivo real lo llamé igual que mi selector.
example.com y selector deben reemplazarse por el dominio y el selector que desea utilizar en su firma d = y s = respectivamente.
/ etc / mail / dkim_signing_table
La dirección de este archivo simple se encuentra en el encabezado De: a una clave en dkim_key_table. En este caso, queremos que todos los correos electrónicos enviados a través de este servidor se firmen con la misma clave, por lo que se utiliza un comodín *.
fuente
Hilo antiguo, pero tal vez alguien más que encuentre esto tiene la utilidad de saber que la versión 2.x de opendkim funciona con KeyTable en lugar de KeyList.
Puede convertir su archivo KeyList con la herramienta opendkim-convert-keylist ( http://manpages.ubuntu.com/manpages/lucid/man8/opendkim-convert-keylist.8.html )
Puede leer más sobre la implementación de KeyTable en la página de manual de opendkim: ( http://www.opendkim.org/opendkim.conf.5.html )
fuente
La documentación para el filtro DKIM generalmente se instala en formato unix man. Solo Google lo sabe :-) También tuve un problema.
Lo probé en Debian. Si no está realmente en su distribución, puede descargar el tarball de origen y el documento de lectura fácil.
etc.
-
Para que pueda usar exactamente lo mismo en ambos registros DNS de diferentes dominios.
fuente