Mail classés en spam avec la fonction mail()
BMPCreated with Sketch.BMPZIPCreated with Sketch.ZIPXLSCreated with Sketch.XLSTXTCreated with Sketch.TXTPPTCreated with Sketch.PPTPNGCreated with Sketch.PNGPDFCreated with Sketch.PDFJPGCreated with Sketch.JPGGIFCreated with Sketch.GIFDOCCreated with Sketch.DOC Error Created with Sketch.
Question

Mail classés en spam avec la fonction mail()

by
Jérôme
Created on 2025-02-07 14:10:32 (edited on 2025-02-07 18:14:59) in E-mails et solutions Office

Bonjour

Je suis débutant et j'ai souscrit un hébergement web STARTER il y a qq jours (hebergement + nom de domaine). J'ai tout laissé par défaut, j'ai juste activé le certificat SSL (qui n'était pas actif par défaut) et créé une adresse mail postmaster.

Je suis totalement perdu dans les configurations SPF, DKIM et DMARC.
J'envoie des mails via la fonction mail(), du style:

$to = $_POST['newsletter'];	
$objet = 'Inscription à la newsletter';
$contenu = '<html>';
$contenu .= '<head><title>Votre inscription à la newsletter de monsite.</title></head>';
$contenu .= '<body>';
$contenu .= '[...]';
$contenu .= '</body></html>';
$headers = "From: Monsite <postmaster@monsite.fr>\n";
$headers .='Content-Type: text/html; charset="UTF-8"'."\n";
$headers .='Content-Transfer-Encoding: 8bit'; 

$contenu = wordwrap($contenu, 70, "\r\n");

mail($to, $objet, $contenu, $headers);

Les mails sont classés comme spam. Ils arrivent très tardivement également, 5 à 10 min après l'envoi (c'est peut être lié). J'ai du envoyer une dizaine de mails en 30 minutes pour mes tests.

  • SPF : SoftFail
    • IP address "46.105.32.238" is not allowed to send mail for 'mail-out.cluster021.hosting.ovh.net'
    • Dns record:
      [v=spf1 include:mx.ovh.com ~all]
  • DKIM : None
    • No DKIM-Signature in mime message
  • DMARC : Not implemented but would be 'Fail'
    • The domain 'monsite.fr' does not allow the distribution of this message
    • Dns record: None → Using the internal rules
      • Rules: Dkim-Align:relax Spf-Align:relax Procedure:quarantine
    • Alignments with header mail domain 'monsite.fr' :
      • Enveloppe domain 'mail-out.cluster021.hosting.ovh.net': NotAligned
      • Dkim domain 'Not implemented': NotApplicable

Dans ma zone DNS, j'ai bien SPF configuré par défaut (v=spf1 include:mx.ovh.com -all), pas d'enregistrement DKIM ni DMARC.
J'ai lu cet article
 ainsi que les 3 liens du bas (configurer SPF, configurer DKIM, configurer DMARK).

Si je prend l'article configurer SPF, ca parle de MX Plan, E-mail Pro, Hosted Exchange. Du coup j'ai l'impression que ce n'est qu'en passant par un serveur smtp, et donc ca ne fonctionne pas si c'est directement le serveur mutualisé qui envoie le mail avec la fonction mail().

Les tutos que j'ai lu me semblent trop compliqués pour mon niveau, ou trop complets et je ne sais pas dans quel cas je suis. Après ca vient peut être aussi de mes headers qui sont pas forcement bien renseignés.

Si quelqu'un veut bien avoir la gentillesse de m'orienter un peu.
Merci et bonne journée


3 Replies ( Latest reply on 2025-02-10 13:09:07 by
fritz2cat 🇧🇪 🇪🇺
)

Bonjour,

Je ne sais pas quel site vous dit que "SPF : SoftFail  IP address "46.105.32.238" is not allowed to send mail for 'mail-out.cluster021.hosting.ovh.net'"

C'est faux. Le SPF associé le permet.

Vous dites : monsite.fr

Avec cette information fantaisiste, impossible de vérifier que "The domain 'monsite.fr' does not allow the distribution of this message"

 

Et vous avez raison, les envois depuis les sites web et qui n'utilisent pas SMTP ne sont pas authentifiés. Donc pas de DKIM. D'ailleurs vous pourriez mettre n'importe quoi à la place de user@monsite.fr c'est bien la preuve que ce n'est pas authentifié.

 

Hélas non il n'y a pas grand chose à faire. Vous pouvez tenter en utilisant SMTP et le login/pass d'une de vos boîtes, au moins les mails seront signés avec DKIM.

Il y a une inconnue quand on utilise le SMTP d'OVH.

OVH a mis des limites d'envoi par heure, par compte, par adresse IP.

J'ose espérer que OVH a mis l'adresse IP de ses hébergements web en white-list, afin qu'un utilisateur qui envoie beaucoup de mail, ne pénalise pas des tas d'innocents qui sont hébergés sur le même cluster.

Je n'ai jamais vu de réponse claire d'OVH à ce propos.

 

Le mot "phamacy" c'est un mot "gris" dans les critères de spam, vu tout ce qui se vend en marché noir. Seul Free peut expliquer pourquoi tel ou tel mail est mis en spam par leurs serveurs.