From 7b4e0594313b7b9954aefb316651a3257541a88a Mon Sep 17 00:00:00 2001 From: Gregory Colpart Date: Wed, 31 Oct 2018 00:17:52 +0100 Subject: [PATCH] =?UTF-8?q?Am=C3=A9lioration=20du=20chapitre=20sur=20la=20?= =?UTF-8?q?d=C3=A9livrabilit=C3=A9,=20notamment=20SPF=20/=20DKIM=20/=20DMA?= =?UTF-8?q?RC=20(merci=20Dgeo=20o/)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- HowtoPostfix.md | 59 ++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 54 insertions(+), 5 deletions(-) diff --git a/HowtoPostfix.md b/HowtoPostfix.md index f9bc6ca4..6493a06c 100644 --- a/HowtoPostfix.md +++ b/HowtoPostfix.md @@ -484,7 +484,8 @@ file = /var/log/mail.log ### pflogsumm -C'est un petit outil pour afficher des stats dans le terminal, plutôt pratique, évite de « grepper » à la main mail.log +C'est un petit outil pour afficher des stats dans le terminal, plutôt pratique, évite de « grepper » à la main `mail.log`. + ## Délivrabilité @@ -494,20 +495,67 @@ Voici un check-up pour s'assurer d'avoir une bonne _délivrabilité_ : * Reverse DNS configuré vers un enregistrement valide pointant lui-même vers l'adresse IP du serveur mail * IPv6 correctement configuré (avec reverse DNS) ou desactivé -* Utiliser une adresse de retour valide (**Return-Path**) et traiter les retours régulièrement -* Configurer DKIM -* Configurer ADSP +* Utiliser une adresse de retour valide (expéditeur d'enveloppe ou **Return-Path**) et traiter les retours régulièrement voire dynamiquement en cas de gros volume * Configurer SPF +* Configurer DKIM * Configurer DMARC -* Nettoyer ses entêtes +* Nettoyer ses entêtes, notamment des informations locales (IP RFC1918, enregistrements DNS locaux, etc.) * S'enregistrer auprès de * S'enregistrer auprès de (payant, environ 20$/domaine/an) +* Écrire à Hotmail/Outlook/Microsoft pour demander à mettre son IP en liste blanche * Payer pour améliorer sa délivrabilité auprès de Yahoo/Microsoft/etc. (payant en fonction du volume et très cher...) * Régler son rythme d'envoi, notamment vers Orange, Free, etc. * Vérifier son contenu via des outils comme _SpamAssassin_ * Vérifier la réputation via * Vérifier via Postmaster tools de Google en cas de problème de Spam pour Google/Gmail +### SPF + +[SPF](https://fr.wikipedia.org/wiki/Sender_Policy_Framework) est une norme pour vérifier l'adresse IP expéditrice d'un email. +La vérification se fait en utilisant le nom de domaine de l'expéditeur d'enveloppe et en récupérant un enregistrement DNS qui va lister les adresses IP autorisées. + +Voici un exemple d'enregistrement DNS autorisant des adresses IP pour une adresse en `@example.com` + +~~~ +@ IN TXT "v=spf1 a mx ptr ip4:192.0.2.142 ip4:192.0.2.0/24 ip6:2001:db8::/32 ~all" +~~~ + +Voici un exemple d'enregistrement DNS autorisant l'envoi de n'importe où : + +~~~ +@ IN TXT "v=spf1 a mx ptr +all" +~~~ + + +> *Note* : on peut utiliser un `include:` vers un autre enregistrement TXT, pratique pour la gestion ou éviter d'avoir des enregistrements TXT [dépassant 255 caractères](https://kb.isc.org/docs/aa-00356). + +### DKIM + +[DKIM](HowtoMail/DKIM) est une norme pour ajouter une signature cryptographique dans les entêtes d'un email envoyé. +La signature se fait à partir à de l'expéditeur d'entête (`From:` d'un email), des entêtes au choix (sujet, date, etc.) et le corps du message. +Cela utilise aussi une clé publique stockée dans un enregistrement DNS TXT. + +Voir + +### DMARC + +[DMARC](https://fr.wikipedia.org/wiki/DMARC) est spécification qui vient en complément de DKIM et SPF. +Cela permet de spécifier aux serveurs de messagerie comment traiter les emails reçus non conformes aux vérifications SPF et/ou DKIM. +Cela permet également de récupérer des informations voire des emails complets si ils ne sont pas conformes. +Encore une fois, cela se fait avec un enregistrement DNS TXT. + +Voici un exemple d'enregistrement DNS basique : + +~~~ +_dmarc IN TXT "v=DMARC1; p=none; rua=mailto:facteur@example.com" +~~~ + +Voici un exemple plus avancé : + +~~~ +_dmarc IN TXT "v=DMARC1;p=none;rua=mailto:facteur+aggr@example.com;ruf=mailto:facteur+forensic@example.com;fo=1;adkim=r;aspf=r;sp=none;pct=100" +~~~ + ### Contacts des principaux fournisseurs d'email En cas de souci de _délivrabilité_ vers un domaine particulier, on est amené à contacter son responsable. @@ -522,6 +570,7 @@ En pratique pour les principaux fournisseurs d'emails, voici comment les contact * La Poste : * GMAIL : (NE REPONDENT JAMAIS !!!) + ## Postcreen C'est un process qui vérifie si le blocage par IP doit s'appliquer sur le mail concerné ou non. La liste des autorisations sont actualisées grâce aux RBL. si l'on obtient ce type de message "if blocked using rbl.foor.bar" alors on peut whitelister l'adresse IP dans `/etc/postfix/postscreen_access.cidr`