diff --git a/critical/mail/normes.org b/critical/mail/normes.org index 1c5bede..7811191 100644 --- a/critical/mail/normes.org +++ b/critical/mail/normes.org @@ -54,6 +54,7 @@ Tous ce qui est discuté ci-dessous fonctionne de la manière suivante : émetteur car plus d'un service est souvent requis (/e.g./ un serveur DNS autoritaire, un serveur Web, ...). + * SPF - [[https://www.rfc-editor.org/rfc/rfc7208][SPF]], @@ -88,6 +89,7 @@ peut être utilisé à la place de ~kdig~) : D'autres mécanismes et formats existent, mais nous ne les présentons pas ici. Se référer à la RFC ou la page Wikipédia pour leur description. + ** Vérification (côté serveur récepteur) Lorsque ~redisdead~ (~MX~ du Cr@ns) reçoit un mail, nous demandons à un service @@ -95,12 +97,14 @@ externe de vérifier le SPF (via la variable ~smtpd_recipient_restrictions~). Le service externe tourne sur la même VM et est ~postfix-policyd-spf-python~. + * TODO SRS - [[https://www.libsrs2.org/srs/srs.pdf][Papier]], - [[https://en.wikipedia.org/wiki/Sender_Rewriting_Scheme][Page Wikipédia]]. -* TODO DKIM + +* DKIM - [[https://www.rfc-editor.org/rfc/rfc6376.html][RFC]]. - [[https://en.wikipedia.org/wiki/DomainKeys_Identified_Mail][Page Wikipedia]]. @@ -156,6 +160,7 @@ Par exemple, pour le champ fourni plus haut, nous pouvons lire : "v=DKIM1; k=rsa; " "p=MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAtwkNVd9Mmz8S4WcfuPk0X2drG39gS8" "+uxAv8igRILgzWeN8j2hjeZesl8pm/1UTVU87bYcdfUgXiGfQy9nR5p/Vmt2kS7sXk9nsJ/VYENg" "b3IJQ6paWupSTFMyeKycJ4ZHCEZB/bVvifoG6vLKqW5jpsfCiOcfdcgXATn0UPuVx9t93yRrhoEM" "ntMv9TSodjqd3FKCtJUoh5cNQHo0T6dWKtxoIgNi/mvZ92D/IACwu/XOU+Rq9fnoEI8GukBQUR5A" "kP0B/JrvwWXWX/3EjY8X37ljEX0XUdq/ShzTl5iK+CM83stgkFUQh/rpww5mnxYEW3X4uirJ7VJH" "mY4KPoIU+2DPjLQj9Hz63CMWY3Ks2pXWzxD3V+GI1aJTMFOv2LeHnI3ScqFaKj9FR4ZKMb0OW2BE" "FBIY3J3aeo/paRwdbVCMM7twDtZY9uInR/NhVa1v9hlOxwp4/2pGSKQYoN2CkAZ1Alzwf8M3EONL" "KeiC43JLYwKH1uBB1oikSVhMnLjG0219XvfG/tphyoOqJR/bCc2rdv5pLwKUl4wVuygfpvOw12bc" "vnTfYuk/BXzVHg9t4H8k/DJR6GAoeNAapXIS8AfAScF8QdKfplhKLJyQGJ6lQ75YD9IwRAN0oV+8" "NTjl46lI/C+b7mpfXCew+p6YPwfNvV2shiR0Ez8ZGUQIcCAwEAAQ==" #+end_src + ** Vérification (côté récepteur) Côté réception (~redisdead~ pour nous), nous utilisons le milter (filtre pour @@ -165,17 +170,21 @@ prendre. Ce dernier va regarder les en-têtes du mail. S(il trouve une signature DKIM, il va effectuer la requête DNS décrite plus haut, et vérifier la signature du mail (valeurs des clefs ~b~ et ~bh~). + + * TODO DMARC - [[https://www.rfc-editor.org/rfc/rfc7489][RFC]], - [[https://en.wikipedia.org/wiki/DMARC][Page Wikipédia]]. + * TODO ARC - [[https://www.rfc-editor.org/rfc/rfc8617.html][RFC]], - [[https://en.wikipedia.org/wiki/Authenticated_Received_Chain][Page Wikipedia]]. -* TODO MTA-STS + +* MTA-STS - [[https://datatracker.ietf.org/doc/html/rfc8461][RFC]], - [[https://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol#SMTP_MTA_Strict_Transport_Security][Section de page Wikipédia]]. @@ -211,12 +220,15 @@ Quelques exemples : Le fichier texte contient une liste de clefs-valeurs. Ces clefs décrivent quel protocole + ** Vérification côté récepteur. ~postfix-mta-sts-resolver~ peut être utilisé ? N'ayant pas implémenté cette solution pour le moment (ni au Cr@ns, ni personnellement), nous ne pouvons pas commenter sur le sujet. + + * DANE - [[https://www.rfc-editor.org/rfc/rfc6698][RFC]],