DKIM ne signe plus apres upgrade en 2.4

Bonjour,

Comme indiqué dans le titre, après upgrade de yuno en 2.4, DKIM ne me signe plus les mails de mes users…le mail du serveur pas de problème, ils sont bien signés.

May 22 16:57:11 AAAAAAAAAAAAAAAAAA postfix/smtpd[7143]: E7EBF37E130B: client=[XXX.XXX.XXX.XXX], sasl_method=PLAIN, sasl_username=chris
May 22 16:57:12 AAAAAAAAAAAAAAAAAA postfix/cleanup[7149]: E7EBF37E130B: message-id=5741C8F4.7040004@domain.fr
May 22 16:57:12 AAAAAAAAAAAAAAAAAA opendkim[7136]: E7EBF37E130B: [XXX.XXX.XXX.XXX] not internal
May 22 16:57:12 opendkim[7136]: E7EBF37E130B: not authenticated
May 22 16:57:12 AAAAAAAAAAAAAAAAAA opendkim[7136]: E7EBF37E130B: no signature data

Same problem . What is the solution?

Après quelques investigations et tests sur la configuration entre /etc/postfix/mail.cf et le dialogue avec /etc/opendkim.conf, je pense que les deux points noirs sont dans /etc/postfix/mail.cf au niveau de

Rmilter

milter_mail_macros = i {mail_addr} {client_addr} {client_name} {auth_authen}

et le dialogue sur:inet:127.0.0.1:8891, car l’info de signature vient de inet:localhost:11000

Same problem too. Is there a solution?

Hi all,

We forgot to mention this new change introduced with the new 2.4 - and thanks to rmilter by the way… DKIM signing is now part of YunoHost and automatically generated for each domain. You didn’t have to rely on a third-party application nor opendkim anymore for that. You can find the DNS TXT record you have to put in /etc/dkim/<domain>.mail.txt or simply with yunohost domain dns-conf <domain> - or even from the web admin!

1 Like

Bonjour,

Effectivement ,si on respecte la procedure que Jerome evoque alors Tout est ok pour DKIM, DMARC et SPF.

Merci à Toute l’Equipe pour ce Formidable travaille sur yunohost.

Thank you @jerome

Bonjour à tous,
j’ai installé hier yunohost, tout fonctionne correctement à part dkim
j’ai utilisé le script 5_opendkim.sh indiqué ici https://yunohost.org/#/dkim_fr

je comprends que cela était inutile sur la 2.4, mais du coup comment faire fonctionner dkim maintenant, j’ai bien récupéré la clé sous /etc/dkim/.mail.txt je l’ai modifié dans mes DNS, mais comment faire en sorte que postfix signe avec cette nouvelle signature, maintenant que ma config a été modifiée par le script 5_opendkim.sh?

J’ai supprimé les lignes opendkim milters dans /etc/postfix/main.cf et redémarré postfix, du coup il signe avec les bonnes clés.
Cependant il semble impossible de supprimer opendkim et opendkim-tools du fait des dépendances avec yunohost

en bref comment annuler ce qui a été fait par 5_opendkim.sh et remettre ma config en ordre sans ajouts opendkim inutiles?
Merci d’avance

Si opendkim est dans les dépendances YunoHost c’est qu’il est nécessaire donc il ne faut pas le supprimer.

Pour voir les différence de configuration (entre une installation de base et ce que tu aurais modifié) tu peux utiliser la regen-conf (sans forcer si l’objectif est juste de voir les différences).

yunohost service regen-conf

Merci beaucoup ljf

J’ai également un souci avec dkim. Ça ne marchait pas parce que j’avais des fichiers de conf modifiés qui n’avaient pas été mis à jour, du coup j’ai exécuté yunohost service regen-conf -f.
Maintenant les messages ont l’air d’être signés, mais j’ai le message suivant dans /var/log/mail.log :

rmilter[13378]: <f5cf2570a8>; cannot find key for domain lamonerie.net at /etc/dkim/lamonerie.net.dkim.key

Et dans /etc/dkim j’ai “lamonerie.net.mail.key” et “lamonerie.net.mail.txt”. Du coup j’ai l’impression que c’est soit juste une erreur de nom de fichier, soit une clé qui ne s’est pas créée.
D’autre part, mail-tester me dit “Nous n’avons pas été en mesure de récupérer votre clé publique.”

Est-ce que quelqu’un a une idée ?

J’ai résolu mon problème : le problème venait de la config dns.
yunohost domain dns-conf lamonerie.net m’avait donné :

mail._domainkey.lamonerie.net 3600 IN TXT "v=DKIM1; k=rsa; p=...clé..."

et il fallait mettre :

mail._domainkey 3600 IN TXT "v=DKIM1; k=rsa; p=...clé..."

Si ça peut servir à quelqu’un !

Le problème vient probablement du fait qu’il manque un point final à “mail._domainkey.lamonerie.net”.
La bonne version est donc soit : “mail._domainkey.lamonerie.net.”, soit “mail._domainkey” tout court.

C’est effectivement un très gros changement !

Je ne l’avais pas vu passer.

Est-ce que la clé DKIM est disponible dans l’interface web (je dois la copier dans mes DNS OVH) ou alors on dois tripatouiller en ligne de commande ?

Bon, et bien comme toujours, c’est du très beau boulot !
En cliquant sur le domaine dans l’interface web d’admin, on trouve toutes les infos, et ça c’est cool :slight_smile:

Merci à tous pour le boulot et les améliorations.

Dans mon cas je n’avais pas encore mis en place DKIM avec la version 2.2. Je me suis rendu compte que j’avais un souci quand soudainement mon score de spam est passé de presque 10 sur 10 à moins de 5 sur 10. mail-tester.com m’a dit que ma signature DKIM n’est pas valide et là j’ai découvert ce fil.

C’est une bonne surprise que DKIM soit intégré dans yunohost merci! J’ai effectivement pu trouver dans l’interface admin de mon domaine la signature, très pratique.
Maintenant je vois dans le fil que vous utilisez un format DNS pour rentrer vos signatures. Je me demande, est-ce que vous utilisez un serveur DNS externe? Moi j’ai maintenant pris l’habitude d’utiliser le dnsmasq de yunohost. C’est lui l’autorité de mon domaine désormais. J’ai configuré mon glue record chez gandi. J’ai du m’habituer à sa syntaxe qui est différente du DNS classique mais au final très simple et plutôt complète.

C’est plutot simple à ajouter dans dnsmasq:
txt-record=mail._domainkey.example.com, "v=DKIM1; k=rsa; p=your_key_goes_here"

Mais je suis curieux, vous avez monté comment votre système DNS?

Bonjour,
Moi j’ai le même problème, mes mails ne sont plus signé pour la configuration était impeccable.
J’ai une configuration venant d’une 2.2 donc installation manuel de DKIM.
Comment faire pour revenir à une configuration propre après avoir migré en 2.4?

Je reviens vous car j’ai toujours le même problème et je n’est rien trouvé sur la toile.
Ci quelqu’un pouvais m’aider ça serait cool car là je galère sévère.
Merci

Voici ce que Mail Tester me dit:

The DKIM signature of your message is:

v=1;
a=rsa-sha256;
c=relaxed/relaxed;
d=domaine.fr;
s=mail;
t=1469913071;
bh=neWXo9TuA+THL0gRVnz4ACXX2DsunWkZhutYbStxvic=;
h=Subject:To:References:From:Message-ID:Date:MIME-Version:In-Reply-To:Content-Type:Content-Transfer-Encoding;
b=hhBtcX+BbMF7fBdxdaS8K2AKn7XIeiz1T2RU4/3tsf0lVKNpcfap/FiNqtptU7+/dNWLm++krxRtjDIfT3gS1sfv2ZQC7oVQ1j6RxtaCdMNCSGwEkn3oYpLH9tCzKKuDDVEj93k0XmJDQeZPmRpuqWXHcHhhrKW88FtIbjN4EDU=

Your public key is:

"v=DKIM1;
k=rsa;
s=*;
p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDW/3DclRMhuvUIh6mpO+ra62LvaIB7IkJZpDz2t1oDZQJ7/dspMQFqa+7IAmqMNBeWqlIvWbIAyFW2Ih02n/A9IyZTImmPEQVBoouwEyUcGFxX/2U4yCMHBNbtHs5F81YdHRH5Iekc/iQqDCvSRf1HElYFqLbPk2A6/sti+hdM9QIDAQAB;
"

Key length: 1024bits

Your DKIM signature is not valid

J’ai eu le même soucis que toi.

En passant à 2.4, Yunohost gère de base la conf DKIM et c’est plutôt cool en fait :slight_smile:

Je pense que tu dois tout simplement mettre à jour ta clé DKIM publique qui se trouve dans ton DNS.
Tu trouveras cette clé publique via l’interface web d’administration :

  • section “Domaines”
  • Tu cliques sur le domaine concerné par l’envoi de tes emails
  • Tu cliques sur “configuration DNS”
  • Tu trouveras la clé DKIM sur la dernière ligne.

Dans mon cas j’ai cela :

mail._domainkey.DOMAIN.TLD. 3600 IN TXT “v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDiNSxclu0lQhS0Usy/9hdgMumEtvIo6uDeq5NfQn1NAjIzrtEuhx2LAtZLOzhx9ONfQkcGYo1jlmHH3hx5kx/p0Hwz0nLHJiMxy0bKFgBbXWaNtrQcgl38cgOdWGDhbHIMSDRvD6sVIAPkfzUR0ZB+G4DLZp2+NuV8rhPrIrxS5QIDAQAB”
_dmarc 3600 IN TXT “v=DMARC1; p=none”

La clé en elle même se trouve après le “p=” et n’a aucun espace ni entrée.

Est-ce que ces infos (dans Configuration DNS de l’interface admin de YunoHost) sont données à titres indicatives et doivent être copiées dans la config DNS du registrar, ou bien ont-elles une valeur de configuration des DNS du serveur sur lequel YunoHost est installé ? Je ne comprends pas bien comment se passer de la configuration DNS du registrar du nom de domaine (en l’occurence Gandi pour mon VPS hébergé chez OVH pour ma part).

Merci !

EDIT : est-il nécessaire de configurer un enregistrement Glue dans la zone DNS chez le registrar (Gandi.net dans mon cas) pour pouvoir associer la clé publique à la clé privée présente dans le serveur YunoHost où se trouve le serveur SMTP ? Désolé, certaines subtilités m’échappent là :frowning:

EDIT EDIT : j’ai constaté que /etc/rmilter.conf faisait appel à /etc/rmilter.conf.common.

Dans /etc/rmilter.conf, on trouve :

# systemd-specific settings for rmilter

.include /etc/rmilter.conf.common

# pidfile - path to pid file
pidfile = /run/rmilter/rmilter.pid;

# rmilter is socket-activated under systemd
bind_socket = fd:3;

# DKIM signing
dkim {
    domain {
        key = /etc/dkim;
        domain = "*";
        selector = "mail";
    };
};

Et dans /etc/rmilter.conf.common, on trouve vers la fin (en plus d’autres éléments de configuration) :

dkim {
  # Sample for dkim specific keys
  # domain {
  #   key = /etc/dkim/dkim_example.key;
  #   domain = "example.com";
  # selector = "dkim";
  # };
  # domain {
  #   key = /etc/dkim/dkim_test.key;
  #   domain = "test.com";
  # selector = "dkim";
  # };
  # Universal selector, keys will be checked for pattern /etc/dkim/<domain>.<selector>.key
    domain {
    key = /etc/dkim;
    domain = "*";
    selector = "dkim";
  };
    header_canon = relaxed;
    body_canon = relaxed;
    sign_alg = sha256;
};

Après l’envoi d’un message via mon serveur mail, la commande service rmilter status retourne :

rmilter[18112]: <f7c2de8d2a>; cannot find key for domain domain.tld at /etc/dkim/domain.tld.dkim.key

La clé réside en réalité fait dans le fichier /etc/dkim/domain.tld.mail.key (sélecteur mail et non dkim). Il semble que le fichier rmilter.conf.common prend le dessus sur l’autre fichier de configuration. Y a-t-il un problème de configuration ? J’ai essayé de commenter la partie qui pose problème dans le fichier rmilter.conf.common, et bien que je ne retrouve pas la même erreur dans les logs de rmilter, mes mails ne sont toujours pas signés (d’après les entêtes visibles via une boîte mail réceptrice Gmail, ou bien via mail-tester.com).

EDIT EDIT EDIIIT : le problème est corrigé. Il y avait bien un conflit entre /etc/rmilter.conf et /etc/rmilter.conf.common. Quelqu’un d’autre a-t-il eu ce bug qui mériterait, le cas échéant, d’être remonté ?

De plus, j’avais mal écrit l’ enregistrement DNS DKIM, comme le souligne @vetetix plus haut, il manquait le point à la fin de domain.tld dans mail._domainkey.domain.tld.. Il vaut peut-être mieux ne pas mettre de domaine à la fin de l’entrée (mail._domainkey pour le domaine et mail._domainkey.subdomain pour tout sous-domaine), cela évite toute confusion ou erreur (NB : dans mon exemple, j’utilise le sélecteur mail comme le fait YunoHost par défaut). En l’occurrence, Gandi n’accepte pas dans ce cas présent, à tort, l’écriture complète avec le point à la fin du domaine…