SMTP - Fonctionnement de SPF : Différence entre versions
De PedroWiki
(→Modifieurs) |
(→Mécanismes) |
||
(10 révisions intermédiaires par le même utilisateur non affichées) | |||
Ligne 2 : | Ligne 2 : | ||
Cet article servira de bloc note et de recueil d'infos sur le fonctionnement de SPF: Sender Policy Framework). | Cet article servira de bloc note et de recueil d'infos sur le fonctionnement de SPF: Sender Policy Framework). | ||
+ | |||
+ | SPF est une techno utilisée dans le cadre de la lutte anti spam, cette technologie est utilisée par les serveurs SMTP en réception pour vérifier l'authenticité d'un émetteur pour un domaine donné. | ||
= Liens utiles = | = Liens utiles = | ||
Ligne 14 : | Ligne 16 : | ||
* [https://www.altospam.com/glossaire/spf.php Vérifier la liste des serveurs émetteurs] | * [https://www.altospam.com/glossaire/spf.php Vérifier la liste des serveurs émetteurs] | ||
+ | * [https://www.kitterman.com/spf/validate.html Vérifier ou générer ses entrées SPF] | ||
= Définition de SPF = | = Définition de SPF = | ||
Ligne 34 : | Ligne 37 : | ||
= Paramètres des entrées SPF = | = Paramètres des entrées SPF = | ||
+ | |||
+ | == Adresses IP == | ||
+ | |||
+ | La notation CIDR (<ip>/<scope>, ex: 192.168.1.0/24) est acceptée. | ||
== Mécanismes == | == Mécanismes == | ||
− | * ALL | + | * '''ALL''': "Tout le reste". Combiné avec les qualifieurs, permet de définir un comportement par défaut au delà de la configuration explicite décrite dans l'entrée SPF. |
− | * A | + | * '''A''': désignation d'une entrée A sur un domaine. |
− | * IP4 | + | * '''IP4''': désignation d'une IPv4. |
− | * IP6 | + | * '''IP6''': désignation d'une IPv6. |
− | * MX | + | * '''MX''': désigne l'ensemble des serveurs désignés par l'entrée DNS "MX" d'un domaine (tous les MTA d'un domaine sont considérés comme légitimes). |
− | * EXISTS | + | * '''EXISTS''': accepte le serveur si le domaine existe. '''RAREMENT UTILISE'''. |
− | * INCLUDE | + | * '''INCLUDE''': permet d'inclure les règles SPF d'un autre domaine. Utile quand on délègue l'envoi d'une partie des mails à un prestataire tiers. |
== Qualifieurs == | == Qualifieurs == | ||
− | * + | + | * '''+''': laisse passer tout le reste de ce qui n'est pas listé dans l'entrée. '''TRES PERMISSIF''' et un peu inutile. |
* ? | * ? | ||
− | * ~ | + | * '''~''': Softfail. Utilisé pour le debug. Les messages sont accepté par la destination, mais marqués comme ne respectant pas totalement les règles SPF. |
− | * - | + | * '''-''': Echec total. Pour tout le reste des expéditeurs en dehors de ceux listés dans l'entrée SPF, ne pas valider l'émetteur. '''TRES STRICT''' |
== Modifieurs == | == Modifieurs == | ||
Ligne 56 : | Ligne 63 : | ||
* exp | * exp | ||
* redirect | * redirect | ||
+ | |||
+ | = Bonnes pratiques = | ||
+ | |||
+ | Les "bonnes pratiques" ci dessous sont une synthèse des précos trouvées sur le net. | ||
+ | |||
+ | == Factorisation des entrées == | ||
+ | |||
+ | Eviter des listes d'IP exhaustives dans les entrées SPF, privilégier un nom DNS configuré en round robin sur l'ensemble des IP concernées. | ||
+ | |||
+ | <u>Ex:</u> | ||
+ | |||
+ | Eviter | ||
+ | |||
+ | v=spf1 ip4:<ip1> ip4:<ip2> .... -all | ||
+ | |||
+ | Privilégier: | ||
+ | |||
+ | v=spf1 spf.mondomaine.tld -all | ||
+ | |||
+ | Avec: | ||
+ | |||
+ | spf.mondomaine.tld IN A <ip1> | ||
+ | spf.mondomaine.tld IN A <ip2> | ||
+ | ... | ||
[[Category:Howto]] | [[Category:Howto]] | ||
[[Category:SMTP]] | [[Category:SMTP]] | ||
[[Category:Antispam]] | [[Category:Antispam]] |
Version actuelle datée du 27 février 2020 à 09:04
Sommaire
Introduction
Cet article servira de bloc note et de recueil d'infos sur le fonctionnement de SPF: Sender Policy Framework).
SPF est une techno utilisée dans le cadre de la lutte anti spam, cette technologie est utilisée par les serveurs SMTP en réception pour vérifier l'authenticité d'un émetteur pour un domaine donné.
Liens utiles
Théorie
- Sender Policy Framework sur Wikipedia
- Infos théorique sur Altospam
- Infos sur le blog d'Oceanet Technology
Outils
Définition de SPF
- RFC de référence: RFC 72081 (section 3.1).
- Technique d'authentification de l'émetteur.
- Technologie définie par Microsoft.
- Se base sur le "MAIL FROM:" de l'enveloppe du message et non sur le "from:" des headers.
- Le paramétrage de SPF pour un domaine d'expédition se fait via l'ajout d'une entrée TXT dans la zone DNS du domaine concerné.
- Objectif de ce paramétrage:
- préciser la version de SPF utilisée.
- lister les serveurs de messagerie autorisés à émettre pour ce domaine.
- définir le comportement par défaut si l'IP émettrice n'est pas listée.
Limites du SPF
- les spammeurs peuvent forger eux même leurs entêtes.
- SPF identifie les IP émettrices légitimes, mais pas les adresses unitaires ni le contenu dans les messages.
- pose problème lors des transferts d'emails.
Paramètres des entrées SPF
Adresses IP
La notation CIDR (<ip>/<scope>, ex: 192.168.1.0/24) est acceptée.
Mécanismes
- ALL: "Tout le reste". Combiné avec les qualifieurs, permet de définir un comportement par défaut au delà de la configuration explicite décrite dans l'entrée SPF.
- A: désignation d'une entrée A sur un domaine.
- IP4: désignation d'une IPv4.
- IP6: désignation d'une IPv6.
- MX: désigne l'ensemble des serveurs désignés par l'entrée DNS "MX" d'un domaine (tous les MTA d'un domaine sont considérés comme légitimes).
- EXISTS: accepte le serveur si le domaine existe. RAREMENT UTILISE.
- INCLUDE: permet d'inclure les règles SPF d'un autre domaine. Utile quand on délègue l'envoi d'une partie des mails à un prestataire tiers.
Qualifieurs
- +: laisse passer tout le reste de ce qui n'est pas listé dans l'entrée. TRES PERMISSIF et un peu inutile.
- ?
- ~: Softfail. Utilisé pour le debug. Les messages sont accepté par la destination, mais marqués comme ne respectant pas totalement les règles SPF.
- -: Echec total. Pour tout le reste des expéditeurs en dehors de ceux listés dans l'entrée SPF, ne pas valider l'émetteur. TRES STRICT
Modifieurs
- exp
- redirect
Bonnes pratiques
Les "bonnes pratiques" ci dessous sont une synthèse des précos trouvées sur le net.
Factorisation des entrées
Eviter des listes d'IP exhaustives dans les entrées SPF, privilégier un nom DNS configuré en round robin sur l'ensemble des IP concernées.
Ex:
Eviter
v=spf1 ip4:<ip1> ip4:<ip2> .... -all
Privilégier:
v=spf1 spf.mondomaine.tld -all
Avec:
spf.mondomaine.tld IN A <ip1> spf.mondomaine.tld IN A <ip2> ...