Ok, j’ai réussi à le résoudre moi-même, mais je voulais publier ici les étapes pour la postérité car il n’y avait aucune documentation à ce sujet (que je pouvais trouver) et c’était pratiquement deviner et vérifier.
Après avoir défini "Domain *" comme décrit ci-dessus, il serait signé comme suit:
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=
remarquez le "d = clientdomain.com". Il générait ceci en fonction de l'adresse de départ dans le courrier électronique, où l'adresse de provenance ressemblait à "[email protected]". Il est évident que s'il vérifie le domaine du client et non le mien, aucun enregistrement DNS TXT n'est présent et la vérification échouera.
De toute façon, j'ai découvert dans ce document que vous pouvez définir un paramètre KeyList.
http://manpages.ubuntu.com/manpages/hardy/man5/dkim-filter.conf.5.html
Cela ne décrivait pas vraiment ce que je voulais faire, mais je pensais jouer avec. J'ai commenté KeyFile et défini KeyList à "/etc/mail/dkim_domains.key", nom de fichier arbitraire que j'ai composé. J'ai ensuite créé ce fichier et y ai mis "*: feedmailpro.com: /etc/mail/dkim.key". Cela le dit pour n'importe quel domaine client, signez-le avec mon domaine (feedmailpro.com) et utilisez le fichier dkim.key.
DKIM et postfix redémarrés
sudo /etc/init.d/dkim-filter restart
sudo /etc/init.d/postfix restart
Maintenant, c'est la clé générée lorsque j'ai envoyé un e-mail de test.
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=
Amélioration, vous voyez le d = maintenant est défini sur mon domaine (même si l'adresse de l'expéditeur de l'email n'était pas mon domaine). Cependant, s = a été remplacé par "dkim.key" au lieu du sélecteur que j'ai choisi dans dkim-filter.conf. Dans les instructions de configuration d' origine , je plaçais le sélecteur sur "mail". C'était bizarre, mais j'ai remarqué que cela changeait le nom de fichier de ma clé, dkim.key.
Je suis donc allé renommer "/etc/mail/dkim.key" en "/ etc / mail / mail". Également mis à jour la référence dans "/etc/mail/dkim_domains.key".
Redémarrez dkim-filter et postfix comme ci-dessus, et tout commence à fonctionner. Voici l'en-tête final qui signe correctement à l'aide du sélecteur de droite (apparemment basé sur le nom de fichier de la clé).
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=
Maintenant, s = mail a raison, et d = feedmailpro.com a raison. Ça marche!
Dans l’ensemble, c’était beaucoup plus difficile que prévu et il ne semblait exister aucune documentation sur la procédure à suivre (signature pour tous les domaines sortants), mais je suppose qu’il s’agit d’un logiciel open source et que je ne peux donc pas me plaindre.
Une dernière remarque, pour vérifier si l’enregistrement DNS TXT a été configuré correctement, vous pouvez exécuter une commande similaire à celle de votre domaine.
dig mail._domainkey.feedmailpro.com TXT
Peut-être besoin d'installer dig (sudo apt-get install dig). Si vous utilisez Slicehost Manager pour ajouter l'entrée DNS, vous devez saisir l'enregistrement TXT comme ceci.
Type: TXT
Name: mail._domainkey
Data: k=rsa; t=s; p=M5GfMA0...YOUR LONG KEY...fIDAQAB
TTL seconds: 86400
Je ne comprends pas vraiment pourquoi le nom est défini sur "mail._domainkey" sans période à la fin ou sans mon domaine, comme "mail._domainkey.feedmailpro.com". Mais peu importe, cela semble fonctionner, donc je suis heureux.
Si vous essayez de dupliquer cela, voici les instructions que j'ai commencées avec:
https://help.ubuntu.com/community/Postfix/DKIM
Inspiré par la réponse de Brian Armstrong pour dkim-filter, voici comment je l’ai fait pour OpenDKIM .
/etc/opendkim.conf
Notez que SigningTable a refile : dans sa définition, cela spécifie que le fichier inclut des expressions régulières; dans notre cas, le caractère générique *.
/ etc / mail / dkim_key_table
Ici, keyname est utilisé pour faire correspondre la clé entre ce fichier et le fichier dkim_signing_table. Dans mon vrai fichier, j'ai nommé cela de la même manière que mon sélecteur.
example.com et sélecteur doivent être remplacés par le domaine et le sélecteur que vous souhaitez utiliser dans les signatures d = et s = de votre signature .
/ etc / mail / dkim_signing_table
Ce fichier associe une adresse simple trouvée dans l'en- tête De: à une clé de la table dkim_key_table. Dans ce cas, nous souhaitons que tous les courriers électroniques envoyés via ce serveur soient signés avec la même clé. Un caractère générique * est donc utilisé.
la source
Ancien fil de discussion, mais peut-être que quelqu'un d'autre trouve cela utile de savoir que la version 2.x de opendkim fonctionne avec KeyTable au lieu de KeyList.
Vous pouvez convertir votre fichier KeyList à l'aide de l'outil opendkim-convert-keylist ( http://manpages.ubuntu.com/manpages/lucid/man8/opendkim-convert-keylist.8.html ).
Vous pouvez en savoir plus sur l’implémentation de KeyTable sur la page de manuel opendkim: ( http://www.opendkim.org/opendkim.conf.5.html )
la source
La documentation du filtre DKIM est généralement installée au format unix man. Seul Google le sait :-) J'ai aussi eu un problème.
Je l'ai essayé sur Debian. Si ce n'est pas vraiment dans votre distribution, vous pouvez télécharger le fichier source tarball et le document facile à lire.
etc.
-
Vous pouvez donc utiliser exactement la même chose dans les deux enregistrements DNS de domaines différents.
la source