35 votos

DKIM firmar el correo saliente de cualquier dominio (con Postfix y Ubuntu)

Tengo DKIM configuración de mi servidor de correo (postfix y ubuntu), por lo que los signos de los correos electrónicos salientes. Yo estas instrucciones: https://help.ubuntu.com/community/Postfix/DKIM

Sin embargo, la necesito para firmar los correos de cualquier dominio (en la dirección) y no sólo en mi propia. Estoy construyendo un boletín por correo electrónico y servicio de los clientes será el envío de correo electrónico a través del servidor.

Primero me puse "Dominio *" en /etc/dkim-filter.conf. Esto tiene que incluir los encabezados DKIM en todos los mensajes salientes, no importa cuál es el dominio.

Sin embargo, la comprobación falla en gmail porque es la comprobación del dominio en la dirección de origen, y no a mi dominio (dns record). ¿Alguien sabe cómo hacer esto?

13voto

Adam J. Forster Puntos 183

Inspirado por Brian Armstrong respuesta para dkim-filter he aquí cómo hice esto para OpenDKIM.

/etc/opendkim.conf

Syslog          yes
UMask           002
KeyTable        /etc/mail/dkim_key_table
SigningTable    refile:/etc/mail/dkim_signing_table

Tenga en cuenta que SigningTable ha volver a presentar: en su definición, este especifica que el archivo incluye expresiones regulares; en nuestro caso el comodín*.

/etc/mail/dkim_key_table

keyname  example.com:selector:/etc/mail/selector.key

Aquí keyname se utiliza para que coincida con la clave entre este archivo y el dkim_signing_table archivo. En mi archivo real, he llamado a esto el mismo que el de mi selección.

example.com y selector debe ser reemplazado que el dominio y el selector de que usted desea para ser utilizado en tu firma d= y s= , respectivamente.

/etc/mail/dkim_signing_table

*   keyname

Este archivo de mapas sencillos de la dirección se encuentra en la De: encabezado de una clave en el dkim_key_table. En este caso queremos que todo el correo electrónico se envía a través de este servidor para ser firmado con la misma clave, por lo que un comodín * se utiliza.

2voto

user57359 Puntos 176

Yo realmente no entiendo por qué el nombre es "correo._domainkey" sin un período de

Documentación para DKIM filtro se instala normalmente en el unix hombre de formato. Sólo Google sabe de ti :-) yo también tuve un problema.

man dkim-filter.conf
man dkim-filter
man dkim-genkey

man dkim-stats
man dkim-testkey
man dkim-testssp

Lo he probado en Debian. Si no es la realidad, no en su distribución, puede descargar el tarball fuente y fácil de leer doc.

man dkim-milter-2.8.3/dkim-filter/dkim-filter.conf.5

etc.

--

Yo realmente no entiendo por qué el nombre es "correo._domainkey" sin un período de

Así que usted puede utilizar exacttly el mismo en ambos registros DNS de dominios diferentes.

2voto

user203421 Puntos 11

Hilo viejo, pero tal vez a alguien que se encuentra este tiene un uso a conocer el 2.x versión de opendkim trabaja con KeyTable en lugar de KeyList.

Usted puede convertir su KeyList archivo con la opendkim-convertir-keylist herramienta (http://manpages.ubuntu.com/manpages/lucid/man8/opendkim-convert-keylist.8.html)

Usted puede leer más acerca de la aplicación de KeyTable en el opendkim hombre de la página: (http://www.opendkim.org/opendkim.conf.5.html)

0voto

JohnW Puntos 11

Ok me las arreglé para resolver esto por mi cuenta, pero quería publicar los pasos aquí para la posteridad, porque no era cero, documentación sobre este (que he podido encontrar) y era prácticamente adivinar y comprobar.

Después me puse "Dominio *" como se describió anteriormente, sería signo de esta manera:

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=

aviso de la "d=clientdomain.com". Fue generando esta basado en el de la dirección del correo electrónico, la dirección era algo así como "contact@clientdomain.com". Obviamente, si se comprueba el dominio del cliente y no en la mía no hay DNS TXT estaba allí y la verificación de fallar.

Así que de todos modos he encontrado en esta documentación que puede establecer un KeyList parámetro. http://manpages.ubuntu.com/manpages/hardy/man5/dkim-filter.conf.5.html

En realidad no se describir lo que yo quería hacer, pero pensé que me gustaría jugar con él. Me comentó archivo de claves y establecer KeyList a "/etc/mail/dkim_domains.clave", que es un archivo arbitrario nombre que inventé. Entonces creé el archivo y poner esto en "*:feedmailpro.com:/etc/mail/dkim.clave". Esto indica que para cualquier cliente de dominio, inicie sesión con mi dominio (feedmailpro.com), y el uso de la dkim.archivo de la clave.

Reinicia DKIM y postfix

sudo /etc/init.d/dkim-filter restart
sudo /etc/init.d/postfix restart

Ahora esta es la clave que se genera cuando me 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, véase el d= ahora se fija en mi dominio (aunque la dirección de correo electrónico no fue mi dominio). Sin embargo, s= se cambió a "dkim.clave" en lugar del selector que elegí en dkim-filter.conf. En el original instrucciones de instalación me gustaría ajustar el selector en "correo". Que era extraño, pero me di cuenta de la cambió al nombre de mi clave, dkim.clave.

Así que me fui y el nombre de "/etc/mail/dkim.clave" a "/etc/mail/correo". También se actualiza la referencia a él en "/etc/mail/dkim_domains.clave".

Reinicie dkim-filter postfix y de nuevo igual que el anterior, y ahora se comenzó a trabajar. Aquí está el final de la cabecera, que los signos correctamente utilizando el selector (aparentemente basada 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=correo es correcto, y d=feedmailpro.com es derecho. Funciona!

En general esto era más difícil de lo que esperaba y no parecía ser cero documentación sobre cómo hacer esto (la firma de todos los dominios), pero supongo que es software de código abierto así que no me puedo quejar.

Una nota final, para comprobar si el registro DNS TXT fue la instalación correctamente, usted puede hacer un comando como con su dominio

dig mail._domainkey.feedmailpro.com TXT

Puede ser necesario instalar dig (sudo apt-get install dig). Si usted está usando Slicehost manager para agregar la entrada de DNS, tendría que introducir el registro TXT como este.

Type: TXT
Name: mail._domainkey
Data: k=rsa; t=s; p=M5GfMA0...YOUR LONG KEY...fIDAQAB
TTL seconds: 86400

Yo realmente no entiendo por qué el nombre es "correo._domainkey" sin un período en el extremo o sin mi dominio, como "mail._domainkey.feedmailpro.com". Pero sea como fuere, parece que funciona, así que estoy feliz.

Si usted está tratando de duplicar este, aquí están las instrucciones empecé con: https://help.ubuntu.com/community/Postfix/DKIM

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X