OVH Community, your new community space.

Install/config dmarc


danyel
10/03/2015, 16h41
Bon ben c'est tjrs pas bon et meme avec ta cfg en place.
J'ai cherche en long en large et en travers, mais j'ai tjrs des fails et meme quand j'envoi du serveur vers lui-meme.
opendmarc[14897]: 829306C0074: domaine.tld fail
J'ai plus de piste ...

danyel
04/03/2015, 04h16
Merci nowwhat.
A la simple lecture, ma config semble la meme que la tienne. Je vais controler ligne par ligne pour le confirmer.

nowwhat
03/03/2015, 18h48
Citation Envoyé par danyel
Bon je reviens un peu vers vous car j'ai tout refait mais c'est pas encore ca.
Resultats :
Quand je recois un mail de gmail, c'est ok maintenant
C'est ton service dmarc qui valide un mail entrant.
Jusqu'à là, tout est ok.

Citation Envoyé par danyel
Par contre, la ou le bas blesse, c'est quand je defini p=reject je ne peux plus envoyer d'email !!!
Le message est
rejected by dmarc policy
opendmarc[14897]: 829306C0074: domaine.tld fail
J'ai ete oblige de remettre sur none pour pouvoir envoyer des emails.
Des pistes ou idees a chercher ?!?!?
C'est ton service DMARC qui teste tes mails sortent, ça n'a pas de sens. (les deux massages plus haut sont dans le log de ton serveur mail, n'est pas ?!?).
C'est n'est pas son rôle - c'est pas bon évidement.
Il s'agit d'un soucis de paramétrage.

Voici mon /etc/opendmarc.conf (j'ai enlevè les commentaires):
Code:
PidFile /var/run/opendmarc/opendmarc.pid
RejectFailures false
SoftwareHeader true
Syslog true
UMask 0002
UserID opendmarc
HistoryFile /var/lib/opendmarc/opendmarc.stats
MilterDebug 1
SoftwareHeader true
IgnoreHosts /usr/local/etc/opendmarc/ignore.hosts
## Be carefull : last header is missing if it's date, things go wrong
RequiredHeaders true
IgnoreAuthenticatedClients true
AuthservIDWithJobID true
Important est
IgnoreAuthenticatedClients true
=> Mails injecté par des clients mail (Ouloook, Thundrbird, Smartphone, autres etc)par i.e. 587 et 465 ne seront pas traité.
Et ceci:
IgnoreHosts /usr/local/etc/opendmarc/ignore.hosts

Le fichier /usr/local/etc/opendmarc/ignore.hosts chez moi est:
127.0.0.1
::1
synology.com
mail.rollernet.us
Les deux dernier nom des domaines font tilter mon DMARC, alors, je les ignore.
Les mails qui entre dans le queue par 127.0.0.1 ou ::1 (localhost les deux) ne seront pas traité non plus.


Pour mémoire, mon /etc/default/opendmarc:
Code:
SOCKET="inet:8893@localhost"
DAEMON_OPTS="-v "
Ma version opendmarc:
Code:
root@ns311465:~# opendmarc -V
opendmarc: OpenDMARC Filter v1.3.0
        SMFI_VERSION 0x1000001
        libmilter version 1.0.1
        Active code options:
                WITH_SPF

danyel
03/03/2015, 12h11
Bon je reviens un peu vers vous car j'ai tout refait mais c'est pas encore ca.
Resultats :
Quand je recois un mail de gmail, c'est ok maintenant
Authentication-Results: domaine.tld/A91E26C0074; dmarc=pass header.from=gmail.com
opendmarc[14897]: A91E26C0074: gmail.com pass
Par contre, la ou le bas blesse, c'est quand je defini p=reject je ne peux plus envoyer d'email !!!
Le message est
rejected by dmarc policy
opendmarc[14897]: 829306C0074: domaine.tld fail
J'ai ete oblige de remettre sur none pour pouvoir envoyer des emails.

Des pistes ou idees a chercher ?!?!?

nowwhat
25/02/2015, 18h21
Citation Envoyé par danyel
.....
ps2 : tu as utilise le schema.mysql pour l'install ?
Yep.
(mais me demande pourquoi faire )
J'ai paramétré opendmarc pour qui logge ces 'transactions' vers un fichier de stats /var/lib/opendmarc/opendmarc.stats
Un tache cron.daily importe ces stats dans une base des données (avec "opendmarc-import") ..... et en cas de succes, il efface /var/lib/opendmarc/opendmarc.stats
Je suis aller voir ce base des données ===>
Depuis début décembre 2014, plus de 2000 nom des domaines - 6000 ipaddrs - 13600 messages traités - 10000 signatures - 1000 requêtes .....
1 Mo des données ..... Je me demande quoi faire avec

MDR: les stats de DKIM (c'est un peu la même principe) : c'est 5x plus grand encore ....
5 Mo des données.

Poubelle bientôt je présume.

nowwhat
25/02/2015, 11h22
Citation Envoyé par Freemaster
oui et ? tu vas le virer ?
il y a plusieurs façons de recevoir des mails, depuis un autre serveur smtp, et donc c'est smtpd_milters qui sera utiliser ....
Ce que j'ai compris - tout mes "milters" sont ainsi déclaré:
smtpd_milters = inet:localhost:12354 inet:localhost:12345 inet:localhost:8893
= DK-FILTER, DKIM, DMARC
Citation Envoyé par Freemaster
et tous les autres, et là c'est non_smtpd_milters qui entre en jeu
http://www.postfix.org/MILTER_README...p-only-milters
Ok aussi, mais.....
Les autres cas "pour moi" ™, ça sont des mails injecté localement (PHP mail() == sendmail et les dépôts de mes MUA's (submission / smtps).
Mes mails sont quand même traité. Je pense que lui y est pour quelque chose:
content_filter = amavis:localhost:10024
Le retour de amavis passe par un smtpd interne - mes mails sont ainsi traité par
smtpd_milters
et c'est pour ça que j'ai proclamé que j'en ai pas besoin de
non_smtpd_milters

Il faut que je teste tout ça .....

édit: même sans "content_filter" mes mails sortent (les mails passent par smtp) sont traité par "smtpd_milters" qui, lui, proclame traitre uniquement les mails entrent (ceux qui passent par smtpd).
Bref, je n'ai pas tout piché encore.

Freemaster
25/02/2015, 07h55
Citation Envoyé par danyel
ps : effectivement j'avais bien le non_smtpd_milters = inet:localhost:8893 dans mon mail.cf
oui et ? tu vas le virer ?
il y a plusieurs façons de recevoir des mails, depuis un autre serveur smtp, et donc c'est smtpd_milters qui sera utiliser
et tous les autres, et là c'est non_smtpd_milters qui entre en jeu
http://www.postfix.org/MILTER_README...p-only-milters

donc à toi de voir, mais tu devrais le garder

danyel
25/02/2015, 04h52
Encore une fois un immense merci nowwhat pour toutes ses infos
Je pense que je vais tout recommencer a zero pour dmarc ...

ps : effectivement j'avais bien le non_smtpd_milters = inet:localhost:8893 dans mon mail.cf
ps2 : tu as utilise le schema.mysql pour l'install ?

nowwhat
24/02/2015, 23h21
Citation Envoyé par danyel
Je reviens sur ta phrase : DMARC ne test QUE le mails qui entre, pas les mails sortent.
Je reste sceptique car d'apres ce que j'ai lu pour google (enfin gmail) ils preconisent son utilisation pour eviter d'etre mis en 'spam', donc c'est bien sortant de chezmoi et rentrant chez eux non ?
Si t'as pas de DMARC installé sur ton serveur, gmail va tester ton mail pour un SPF valide - et un DKIM valide.
Si les deux sont ok, le test DMARC sera Ok.
Exemple: t'as pas de DMARC installé sur ton serveur (or, comme je viens de le faire : j'arrête le service dmarc sur mon serveur) et j'envoie un mail vers GMAIL à partir de mon serveur, le résultat chez gmail sera quand même:
Code:
Received-SPF: pass (google.com: domain of moi@mon-domaine.tld designates 2001:41d0:2:927b::2 as permitted sender) client-ip=2001:41d0:2:927b::2;
Authentication-Results: mx.google.com;
       spf=pass (google.com: domain of moi@mon-domaine.tld designates 2001:41d0:2:927b::2 as permitted sender) smtp.mail=moi@mon-domaine.tld;
       dkim=pass header.i=@mon-domaine.tld;
       dmarc=pass (p=REJECT dis=NONE) header.from=mon-domaine.tld
Encore un fois: DMARC s'écute pour les mails qu'il reçoit.
Il va vérifier le SPF et le DKIM, et quand les deux sont ok, DMARC affiche : Ok

DKIM, lui, il est différent - plus complexe:
Il va signer les mails sortent.
Les mails entrent, il va lire la signature, vérifier le mail entier si cette signature colle avec le mail (protection de la continu de ce mail) puis chercher avec une requête DNS (et le selector) la signature publique dans ton zone DNS pour enfin valider ton mail (prouver que c'est lui qui l'a envoyé).

Compris ?
Ok, t'es plus septique maintenant

Quand tu installe DMARC sur ton serveur, il va vérifier les mails en réception, pour vérifier les mails que t'as reçu.
(le paramétrage de dmarc
Ils seront ok pour gmail, aol, yahoo, etc (quelques gros) et beaucoup d'autres.

Petit détails: postfix, dans le mai.cf:
Un erreur qu'on trouve souvent sur le net, et même dans le doc de opendmarc:
http://www.trusteddomain.org/opendmarc/opendmarc-README
Code:
smtpd_milters = inet:localhost:8893
non_smtpd_milters = inet:localhost:8893
inet:localhost:8893 == le serveice dmarc.

Ceci non_smtpd_milters = inet:localhost:8893 est faux !!!
Il ne faut que mettre [COLOR="#008000"]smtpd_milters = inet:localhost:8893[/COLOR dans /etc/postfix/main.cf.

Check : usage de non_smtpd_milters dans http://www.postfix.org/MILTER_README.html

danyel
24/02/2015, 19h46
Ok pour le DK obsolete. Je l'ai lu cette nuit - merci pour la confirmation.
Sinon dmarc ... ben j'ai mal a la tete loooooool

Je reviens sur ta phrase : DMARC ne test QUE le mails qui entre, pas les mails sortent.
Je reste sceptique car d'apres ce que j'ai lu pour google (enfin gmail) ils preconisent son utilisation pour eviter d'etre mis en 'spam', donc c'est bien sortant de chezmoi et rentrant chez eux non ?

nowwhat
24/02/2015, 08h26
/etc/postfix/main.cf:
Code:
milter_default_action = accept
milter_protocol = 6
smtpd_milters = inet:localhost:12354 inet:localhost:12345 inet:localhost:8893
inet:localhost:12354 = mon dk_filtre (milter) = DomainKeys : je la garde mais il en voie de disparition.
inet:localhost:12345 = mon DKIM filtre (milter)
inet:localhost:8893 = mon DMARC filtre (milter)

Donc, DomainKeys check: neutral = osef

Retour à DMARC ?

danyel
24/02/2015, 04h34
hmmm deja j'ai un neutral sur le DomainKeys ...
SPF check: pass
DomainKeys check: neutral
DKIM check: pass
Sender-ID check: pass
SpamAssassin check: ham
----------------------------------------------------------
DomainKeys check details:
----------------------------------------------------------
Result: neutral (message not signed)
ID(s) verified: header.From=xxx@domaine.tld
DNS record(s):
Vois pas pourquoi (il est tard lol)

nowwhat
24/02/2015, 02h56
Envoi un mail à check-auth@verifier.port25.com
Ça donne ceci:
Code:
SPF check:          pass
DomainKeys check:   pass
DKIM check:         pass
Sender-ID check:    pass
SpamAssassin check: ham
Ceci pour tester si ton SPF et DKIM sont ok.

Attention : DMARC ne test QUE le mails qui entre, pas les mails sortent.

Par exemple, quand j’envoie un mail (de mon serveur) vers un compte gmail, j'ai ceci comme résultat dans les headers:
Code:
Received-SPF: pass (google.com: domain of nowwhat@papy-team.org designates 2001:41d0:2:927b::10 as permitted sender) client-ip=2001:41d0:2:927b::10;
Authentication-Results: mx.google.com;
       spf=pass (google.com: domain of nowwhat@papy-team.org designates 2001:41d0:2:927b::10 as permitted sender) smtp.mail=nowwhat@papy-team.org;
       dkim=pass header.i=@papy-team.org;
       dmarc=pass (p=REJECT dis=NONE) header.from=papy-team.org
(il me semble que le SPF est vérifié deux fois)

Un mail de retour gmail vers mon serveur (qui sera donc vérifié par mon install dmarc):
Code:
Received-SPF: pass (gmail.com ... _spf.google.com: Sender is authorized to use 'monmail@gmail.com' in 'mfrom' identity (mechanism 'include:_netblocks2.google.com' matched)) receiver=ns311465.ip-188-165-201.eu; identity=mailfrom; envelope-from="monmail@gmail.com"; helo=mail-pa0-x22a.google.com; client-ip="2607:f8b0:400e:c03::22a"
DMARC-Filter: OpenDMARC Filter v1.3.0 mail.papy-team.org 0F1E663E0380
Authentication-Results: mail.papy-team.org/0F1E663E0380; dmarc=pass header.from=gmail.com
Authentication-Results: mail.papy-team.org; dkim=pass
     reason="2048-bit key" header.d=gmail.com header.i=@gmail.com
     header.b=t7/VKLvu; dkim-adsp=pass
Tu y retrouve un trace de mon check:
SPF
DKIM
DMARC

danyel
24/02/2015, 02h41
Citation Envoyé par nowwhat
Peut être.
Il manque un détail très important dans ta question : OS ? Quel MTA ?
Exact
Debian 7.8 avec postfix

J'y travaille depuis pas mal de temps, mais meme si ca semble fonctionner, ben ca fonctionne pas (lol)
J'ai tjrs :
Code:
Authentication-Results: domaine.tld/XXXXXXX; dmarc=fail header.from=domaine.tld
alors que un peu plus haut :
Code:
Authentication-Results: mx.google.com;
spf=pass (google.com: domain of xxx@domaine.tld designates xx.xx.xx.xx as permitted sender) smtp.mail=xxx@domaine.tld;
dkim=pass header.i=@domaine.tld;
dmarc=pass (p=QUARANTINE dis=NONE) header.from=domaine.tld

nowwhat
24/02/2015, 01h20
Peut être.
Il manque un détail très important dans ta question : OS ? Quel MTA ?

Je me suis posé la même question.
J'utilise un Debian 7.x. (choisir un de plus grand OS possède justement l’avantage d'avoir beaucoup et choix et possibilités).
Mais : Pas de paquets 'dmarc' - ou un release très beta, donc pas stable, disponible.

Finalement, j'ai pu résoudre le problème.
http://sourceforge.net/projects/opendmarc/
Il s'agit des sources, principalement en C.
La compilation nécessite quelques autres paquets, type 'dev', et une fois que tout est ok, il suffit de (grosso modo):
./configure
make
make install

Et je "informe" postfix que encore un autre "milter" (comme e.a. DKIM) existe: DMARC fait son travail.

Suivant http://fr.wikipedia.org/wiki/DMARC toutes les gros fournisseurs de mail utilisent (acceptent / traite) dmarc.
Tout le monde parle 'SPF' et 'DKIM' (DMARC n'est qu'on combinaison de ce deux, SPF et DKIM doivent donc déjà fonctionner) mais, pour l'instant, peu d’information concrète sur le net sur son sujet ...

danyel
23/02/2015, 22h51
Soir all,
Je cherche a mettre en fonction opendmark, mais toutes mes tentatives et essais restent veines ...
Connaissez vous un bon tuto ou aide pour ce fameux dmarc ?
Merci.