phpBB n’envoie plus d’e-mails : comprendre et diagnostiquer les problèmes SMTP
Votre forum fonctionne parfaitement.
Les utilisateurs peuvent se connecter, publier des messages et naviguer normalement.
Mais les e-mails ne partent plus.
Un nouveau membre ne reçoit pas son message d’activation.
Une notification de message privé n’arrive jamais.
La récupération du mot de passe semble fonctionner dans phpBB, mais aucun message n’est reçu.
Ou encore, le panneau d’administration affiche une erreur SMTP difficile à comprendre.
Les problèmes d’e-mails sont fréquents parce que plusieurs systèmes différents interviennent entre phpBB et la boîte de réception du destinataire.
Le problème peut venir de phpBB.
Mais il peut également venir de PHP, du serveur SMTP, du fournisseur d’hébergement, du DNS, du domaine utilisé comme expéditeur ou du serveur du destinataire.
Ce tutoriel propose une méthode progressive pour déterminer où se situe réellement le problème.
Principe essentiel :
Le fait que phpBB ait essayé d’envoyer un message ne signifie pas nécessairement que le destinataire l’a reçu.
1. Comprendre le trajet d’un e-mail
Lorsqu’un forum envoie un message, plusieurs étapes sont nécessaires.
Le trajet ressemble approximativement à ceci :
Code : Tout sélectionner
phpBB
→ système d’envoi
→ serveur SMTP
→ Internet
→ serveur du destinataire
→ filtre antispam
→ boîte de réceptionUne panne peut apparaître à chacune de ces étapes.
Par exemple :
Code : Tout sélectionner
phpBB génère correctement le message
→ le serveur SMTP l’accepte
→ le serveur du destinataire le classe comme spamDans ce cas, phpBB n’est pas en panne.
Autre exemple :
Code : Tout sélectionner
phpBB génère le message
→ impossible de se connecter au serveur SMTP
→ le message ne quitte jamais votre serveurCette fois, il existe bien un problème d’envoi.
La première étape consiste donc à déterminer jusqu’où le message arrive.
2. phpBB peut utiliser deux méthodes principales
Dans le panneau d’administration, phpBB peut généralement envoyer ses messages de deux manières.
Méthode PHP
phpBB transmet le message au système d’e-mail fourni par PHP et par l’hébergement.
Méthode SMTP
phpBB se connecte directement à un serveur SMTP configuré dans le PCA.
Ces deux méthodes sont différentes.
Un hébergeur peut avoir désactivé l’envoi PHP tout en permettant SMTP.
À l’inverse, un serveur peut disposer d’un système local parfaitement fonctionnel sans nécessiter de serveur SMTP externe.
Il faut donc commencer par savoir quelle méthode votre forum utilise.
3. Vérifier la configuration dans le PCA
Dans le panneau d’administration, ouvrez les paramètres relatifs aux e-mails.
Selon la traduction utilisée, vous trouverez généralement cette partie dans :
PCA → Général → Configuration du client → Paramètres des e-mails
Vérifiez notamment :
si l’envoi d’e-mails est activé ;
l’adresse e-mail de contact ;
l’adresse utilisée comme expéditeur ;
si SMTP est activé ;
le nom du serveur SMTP ;
le port SMTP ;
la méthode d’authentification ;
le nom d’utilisateur SMTP ;
le type de chiffrement utilisé si nécessaire.
Ne modifiez encore rien.
Commencez simplement par noter la configuration actuelle.
4. Vérifier que l’envoi d’e-mails est activé
Cela paraît évident, mais commencez par ce réglage.
Si l’envoi des e-mails est désactivé dans phpBB, certaines notifications ne seront naturellement pas envoyées.
Avant de chercher un problème complexe de DNS ou de serveur SMTP, vérifiez donc ce point élémentaire.
5. Vérifier l’adresse utilisée comme expéditeur
Un forum installé sur :
Code : Tout sélectionner
example.comdevrait idéalement envoyer ses messages depuis une adresse appartenant à ce domaine ou à un domaine correctement autorisé.
Par exemple :
Code : Tout sélectionner
forum@example.comou :
Code : Tout sélectionner
no-reply@example.comUtiliser une adresse arbitraire appartenant à un grand fournisseur externe peut provoquer des problèmes.
Exemple à éviter :
Code : Tout sélectionner
Votre forum est hébergé sur example.com
mais vous essayez d’envoyer :
From: utilisateur@gmail.comVotre serveur n’est pas le serveur de Gmail.
Les mécanismes antispam modernes peuvent donc considérer ce message comme suspect.
6. SMTP : à quoi cela sert-il ?
SMTP signifie :
Simple Mail Transfer Protocol
C’est le protocole utilisé pour transmettre les e-mails entre serveurs.
Lorsque vous activez SMTP dans phpBB, vous indiquez au forum :
Code : Tout sélectionner
Pour envoyer un e-mail,
connecte-toi à ce serveur,
avec ce port,
et éventuellement ces identifiants.Par exemple :
Code : Tout sélectionner
Serveur : smtp.example.com
Port : 587
Authentification : oui
Chiffrement : STARTTLSCe n’est qu’un exemple.
Ne recopiez jamais des valeurs SMTP au hasard.
Utilisez les paramètres fournis par votre hébergeur ou votre fournisseur d’e-mail.
7. Les ports SMTP les plus courants
Vous rencontrerez souvent :
Code : Tout sélectionner
25
465
587Mais ils ne sont pas interchangeables.
Le port 587 est couramment utilisé pour la soumission authentifiée avec STARTTLS.
Le port 465 est généralement utilisé avec TLS implicite.
Le port 25 est historiquement utilisé pour les échanges entre serveurs et peut être bloqué par certains hébergeurs pour limiter le spam.
Le bon port est celui indiqué par votre fournisseur SMTP.
Changer de port au hasard n’est pas une méthode de diagnostic.
8. Vérifier le serveur SMTP
Une simple faute dans le nom du serveur suffit à empêcher toute connexion.
Exemple :
Code : Tout sélectionner
smtp.example.comn’est pas la même chose que :
Code : Tout sélectionner
mail.example.comVérifiez l’adresse exacte fournie par votre prestataire.
Évitez également d’utiliser une ancienne configuration trouvée dans un tutoriel si votre fournisseur a depuis modifié son infrastructure.
9. Vérifier les identifiants SMTP
Selon le fournisseur, le nom d’utilisateur peut être :
Code : Tout sélectionner
une adresse e-mail complètepar exemple :
Code : Tout sélectionner
forum@example.comou un identifiant spécifique.
Un problème fréquent est d’utiliser seulement :
Code : Tout sélectionner
forumalors que le serveur attend :
Code : Tout sélectionner
forum@example.comVérifiez également le mot de passe.
Si le mot de passe du compte e-mail a été changé récemment, phpBB peut continuer d’utiliser l’ancien.
Ne publiez jamais votre mot de passe SMTP dans un forum de support.
10. Certains fournisseurs utilisent un mot de passe d’application
Certains services n’acceptent plus le mot de passe habituel du compte pour les applications externes.
Ils demandent un :
mot de passe d’application
ou une méthode d’authentification spécifique.
Dans ce cas, le mot de passe utilisé pour vous connecter au webmail peut fonctionner dans votre navigateur tout en étant refusé par SMTP.
Consultez toujours la documentation de votre fournisseur.
11. Une erreur d’authentification est déjà une information utile
Imaginez que phpBB affiche :
Code : Tout sélectionner
Authentication failedou un message équivalent.
Cela signifie que vous avez déjà franchi plusieurs étapes :
Code : Tout sélectionner
phpBB fonctionne
→ le serveur SMTP est joignable
→ mais le serveur refuse l’authentificationVous devez alors concentrer votre recherche sur :
Code : Tout sélectionner
nom d’utilisateur
mot de passe
méthode d’authentification
règles du fournisseurPas sur la base de données phpBB ou sur le thème.
12. Une erreur de connexion signifie autre chose
Si vous obtenez plutôt :
Code : Tout sélectionner
Connection refusedou :
Code : Tout sélectionner
Connection timed outle problème se situe probablement avant l’authentification.
Il peut s’agir :
Code : Tout sélectionner
du mauvais serveur SMTP
du mauvais port
d’un pare-feu
d’un port bloqué par l’hébergeur
d’un serveur SMTP indisponible
d’un problème DNSLe message d’erreur aide donc à déterminer l’étape qui échoue.
13. Vérifier si le serveur SMTP est joignable
Si vous disposez d’un accès SSH, vous pouvez vérifier si un serveur et un port sont accessibles.
L’outil disponible dépend de votre système.
Par exemple, certaines installations permettent d’utiliser :
Code : Tout sélectionner
openssl s_clientpour tester une connexion TLS.
Mais ne copiez pas une commande générique sans connaître le type de chiffrement utilisé par votre fournisseur.
Le but du test est simplement de répondre à cette question :
Mon serveur peut-il joindre le serveur SMTP sur le port prévu ?
14. Un hébergeur peut bloquer certains ports
Certains VPS ou hébergements limitent les connexions SMTP sortantes afin de réduire le spam.
Vous pouvez alors avoir :
Code : Tout sélectionner
configuration phpBB correcte
identifiants corrects
serveur SMTP correct
et malgré tout :
Code : Tout sélectionner
connexion impossibleDans ce cas, vérifiez la politique de votre hébergeur.
Changer dix fois les paramètres de phpBB ne débloquera pas un port filtré au niveau du réseau.
15. Vérifier les journaux phpBB
Le panneau d’administration peut enregistrer certaines erreurs liées aux e-mails.
Consultez les journaux d’erreurs disponibles dans le PCA.
Recherchez les erreurs apparues exactement au moment où vous avez essayé d’envoyer le message.
Ne vous contentez pas d’un message ancien enregistré plusieurs semaines auparavant.
16. Vérifier également les journaux PHP et serveur
Certaines erreurs apparaissent dans les journaux de PHP, Apache, Nginx ou PHP-FPM.
Cherchez notamment :
Code : Tout sélectionner
SMTP
mail
connection
authentication
timeout
TLS
SSL
certificate
stream_socket
fsockopenUne erreur précise vaut beaucoup plus que :
Code : Tout sélectionner
Les mails ne fonctionnent pas.17. phpBB dit que le message est envoyé, mais rien n’arrive
C’est un cas différent.
Si le serveur SMTP a accepté le message, phpBB peut considérer l’opération comme terminée.
Mais le message doit encore traverser :
Code : Tout sélectionner
le serveur d’envoi
→ le réseau
→ le serveur destinataire
→ les filtres antispamIl peut alors :
Code : Tout sélectionner
arriver normalement
être placé dans les spams
être retardé
être rejeté
être supprimé par un filtreIl faut donc distinguer :
envoi technique
et :
livraison finale
18. Commencez par vérifier le dossier spam
Cela paraît banal, mais faites-le.
Certaines configurations parfaitement fonctionnelles produisent des messages classés comme indésirables parce que le domaine d’envoi est mal authentifié ou possède une mauvaise réputation.
Testez également plusieurs fournisseurs.
Par exemple :
Code : Tout sélectionner
une adresse Gmail
une adresse Outlook
une adresse appartenant à votre propre domaineSi un fournisseur reçoit le message et un autre non, cette différence est très utile pour le diagnostic.
19. SPF : autoriser les serveurs d’envoi
SPF permet au propriétaire d’un domaine d’indiquer quels serveurs sont autorisés à envoyer des e-mails pour ce domaine.
Il est généralement publié dans le DNS.
Conceptuellement :
Code : Tout sélectionner
example.com
→ autorise tel serveur à envoyer des e-mailsSi votre forum envoie avec :
Code : Tout sélectionner
From: forum@example.commais que le serveur utilisé n’est pas autorisé par la politique SPF du domaine, certains destinataires peuvent considérer le message comme suspect.
Ne créez pas un enregistrement SPF au hasard.
La valeur dépend de votre fournisseur d’e-mail.
20. Attention aux multiples enregistrements SPF
Une erreur fréquente consiste à créer plusieurs enregistrements SPF séparés.
Par exemple :
Code : Tout sélectionner
un SPF pour l’hébergeur
+
un autre SPF pour un service SMTP
+
un autre SPF ajouté plus tardSPF possède des règles précises.
Il faut généralement construire une politique cohérente plutôt que multiplier les enregistrements contradictoires.
Si vous n’êtes pas certain de la configuration, consultez la documentation de vos fournisseurs avant de modifier le DNS.
21. DKIM : signer les messages
DKIM ajoute une signature cryptographique aux messages sortants.
Le serveur du destinataire peut vérifier cette signature grâce à une clé publique publiée dans le DNS.
Cela permet de vérifier notamment que :
Code : Tout sélectionner
le message a réellement été signé par une infrastructure autorisée
et
son contenu n’a pas été modifié après signatureLa configuration DKIM est généralement réalisée par le fournisseur SMTP ou le serveur de messagerie, pas directement par phpBB.
22. DMARC : définir la politique du domaine
DMARC utilise notamment les résultats de SPF et DKIM pour aider les serveurs destinataires à décider comment traiter les messages.
Une politique DMARC trop stricte avec une configuration SPF ou DKIM incorrecte peut provoquer des rejets.
Encore une fois :
ce problème se situe au niveau de l’infrastructure e-mail et du DNS, pas dans le moteur phpBB lui-même.
23. Le domaine d’expédition doit être cohérent
Imaginez :
Code : Tout sélectionner
Forum :
forum.example.com
Adresse expéditeur :
no-reply@autre-domaine.net
Serveur SMTP :
smtp.troisieme-domaine.comCette configuration peut fonctionner si elle est correctement autorisée.
Mais elle devient plus difficile à diagnostiquer.
Pour une configuration simple, privilégiez autant que possible une infrastructure cohérente.
Par exemple :
Code : Tout sélectionner
Site :
forum.example.com
Expéditeur :
no-reply@example.com
Serveur SMTP :
celui autorisé à envoyer pour example.com24. Attention à l’adresse Reply-To
L’adresse utilisée pour répondre à un message peut être différente de l’adresse technique utilisée pour l’envoi.
Ne confondez pas :
Code : Tout sélectionner
From
Reply-To
adresse de contact du forumChacune peut avoir une fonction différente.
Si votre adresse no-reply ne reçoit réellement aucun message, évitez d’encourager les utilisateurs à y répondre.
25. Les e-mails d’activation n’arrivent pas
Commencez par vérifier si :
Code : Tout sélectionner
les autres e-mails phpBB fonctionnentPar exemple :
Code : Tout sélectionner
notification de message privé
récupération du mot de passe
notification de sujetSi aucun e-mail ne fonctionne, vous avez probablement un problème général d’envoi.
Si seules les activations posent problème, vérifiez également la configuration d’inscription et d’activation des comptes.
Ne confondez pas :
Code : Tout sélectionner
phpBB n’a pas généré d’e-mailavec :
Code : Tout sélectionner
phpBB a généré l’e-mail mais il n’est pas arrivé26. La récupération du mot de passe est un bon test
Lorsque cela est approprié, une demande de récupération de mot de passe peut constituer un test utile du système d’e-mail.
Mais faites le test avec un compte dont vous contrôlez l’adresse.
Ne multipliez pas les demandes sur des comptes d’utilisateurs réels.
27. Les notifications ne sont pas toutes automatiques
Un membre peut dire :
Code : Tout sélectionner
Je ne reçois plus les e-mails du forum.Avant de conclure à une panne SMTP, vérifiez qu’il est réellement censé recevoir cette notification.
Selon les préférences et fonctions concernées, un utilisateur peut :
Code : Tout sélectionner
ne pas être abonné
avoir désactivé certains e-mails
avoir modifié ses préférences de notificationLe serveur ne peut pas envoyer un e-mail que phpBB n’a jamais décidé de générer.
28. Vérifier la file d’attente
phpBB peut utiliser un système de file d’attente pour certains e-mails.
Cela signifie qu’un message peut ne pas partir immédiatement.
Selon la configuration :
Code : Tout sélectionner
phpBB crée le message
→ le place dans une file
→ une tâche ultérieure l’envoieUn problème de cron ou de file d’attente peut donc donner l’impression que SMTP est en panne alors que le message attend simplement d’être traité.
29. Vérifier le cron phpBB
Certaines tâches de phpBB sont exécutées périodiquement.
Si votre cron ne fonctionne plus, certaines opérations peuvent être retardées.
Si vous utilisez un cron système, vérifiez notamment :
Code : Tout sélectionner
qu’il existe encore
qu’il pointe vers le bon dossier
qu’il utilise le bon PHP
qu’il s’exécute réellementUn changement de chemin après une migration serveur est une cause classique.
30. Le test SMTP ne doit pas modifier dix paramètres à la fois
Imaginez que les e-mails ne fonctionnent pas.
Vous changez simultanément :
Code : Tout sélectionner
le serveur
le port
le mot de passe
le chiffrement
l’adresse expéditeurPuis cela fonctionne.
Vous ne savez pas ce qui était réellement incorrect.
Préférez :
Code : Tout sélectionner
observer
→ modifier une chose
→ tester
→ noter le résultatCette méthode est plus lente pendant quelques minutes mais beaucoup plus rapide pour trouver la cause.
31. Exemple : mauvais mot de passe SMTP
Situation :
Code : Tout sélectionner
Le forum fonctionnait hier.
Aujourd’hui aucun e-mail ne part.
Le serveur SMTP répond.
L’erreur indique Authentication failed.Vous apprenez ensuite que le mot de passe de la boîte e-mail a été changé.
La piste logique est immédiatement :
Code : Tout sélectionner
mot de passe SMTP enregistré dans phpBBPas :
Code : Tout sélectionner
réinstaller phpBB32. Exemple : port SMTP bloqué
Situation :
Code : Tout sélectionner
Le même compte SMTP fonctionne depuis un autre serveur.
Les identifiants sont corrects.
Depuis votre VPS, la connexion expire systématiquement.La piste devient :
Code : Tout sélectionner
réseau
pare-feu
restriction de l’hébergeur
port sortantEncore une fois, phpBB n’est peut-être pas responsable.
33. Exemple : le message part mais arrive en spam
Situation :
Code : Tout sélectionner
phpBB ne signale aucune erreur.
Le fournisseur SMTP confirme l’envoi.
Le message apparaît dans les indésirables.Cherchez plutôt :
Code : Tout sélectionner
SPF
DKIM
DMARC
réputation du domaine
réputation de l’adresse IP
contenu du messageChanger le port SMTP n’améliorera pas nécessairement la délivrabilité.
34. Exemple : Gmail reçoit mais pas un autre fournisseur
C’est un indice très intéressant.
Si plusieurs destinataires reçoivent les messages mais qu’un fournisseur précis les rejette, l’envoi phpBB fonctionne probablement.
Il faut alors rechercher :
Code : Tout sélectionner
le motif de rejet
la politique du fournisseur
la réputation
SPF/DKIM/DMARC
les journaux du serveur d’envoi35. Vérifier les messages de retour
Lorsqu’un serveur destinataire refuse un message, le serveur d’envoi peut recevoir un message de retour.
On parle souvent de :
Code : Tout sélectionner
bounceCes messages peuvent contenir des informations précieuses :
Code : Tout sélectionner
adresse inexistante
domaine refusé
SPF failed
DKIM failed
message considéré comme spam
quota dépassé
boîte pleineConsultez donc également la boîte ou l’interface utilisée par votre système d’envoi.
36. Une boîte pleine n’est pas un problème phpBB
Si un seul utilisateur ne reçoit plus rien, vérifiez également des causes très simples :
Code : Tout sélectionner
boîte pleine
adresse incorrecte
compte supprimé
filtre personnel
adresse placée en liste noireNe modifiez pas la configuration générale du forum uniquement parce qu’un destinataire rencontre un problème.
37. Ne testez pas avec cent e-mails
Lors d’un diagnostic, quelques messages bien contrôlés suffisent.
Envoyer des dizaines ou centaines de tests peut :
Code : Tout sélectionner
déclencher une limitation
aggraver la réputation
faire considérer votre serveur comme suspect
remplir les files d’attenteTestez progressivement.
38. Attention aux limitations du fournisseur SMTP
Certains services imposent :
Code : Tout sélectionner
un nombre maximal d’e-mails par heure
un nombre maximal par jour
un nombre maximal de connexions
des limites par destinataireLorsque la limite est atteinte, les premiers e-mails de la journée peuvent fonctionner puis les suivants échouer.
Consultez les limites de votre offre.
39. Les forums très actifs ont des besoins différents
Un petit forum envoyant quelques dizaines de messages par jour peut fonctionner avec une configuration très simple.
Un forum envoyant plusieurs milliers de notifications doit réfléchir davantage à :
Code : Tout sélectionner
la délivrabilité
la réputation
les quotas
la file d’attente
les rebonds
les performancesIl n’existe donc pas une configuration universelle adaptée à tous les forums.
40. Ne publiez jamais vos secrets SMTP
Si vous demandez de l’aide, ne fournissez jamais :
Code : Tout sélectionner
mot de passe SMTP
clé API
jeton d’authentification
mot de passe de boîte e-mailMême si quelqu’un vous demande :
Code : Tout sélectionner
Montrez toute votre configuration.masquez les secrets.
Vous pouvez fournir :
Code : Tout sélectionner
serveur SMTP
port
type de chiffrement
type d’authentification
nom du fournisseursans communiquer le mot de passe.
41. Informations utiles pour demander de l’aide
Préparez :
Code : Tout sélectionner
Version phpBB :
Version PHP :
Méthode d’envoi : PHP ou SMTP
Fournisseur SMTP :
Serveur SMTP :
Port :
Chiffrement :
Authentification activée : oui/non
Type d’erreur :
Message exact dans les logs :
Tous les utilisateurs concernés : oui/non
Certains fournisseurs seulement : oui/non
Les messages arrivent dans les spams : oui/non
SPF configuré : oui/non/inconnu
DKIM configuré : oui/non/inconnu
DMARC configuré : oui/non/inconnuNe fournissez jamais le mot de passe SMTP.
42. Méthode de diagnostic recommandée
Procédez dans cet ordre :
Vérifier que les e-mails sont activés dans phpBB.
Identifier si phpBB utilise PHP ou SMTP.
Vérifier l’adresse expéditeur.
Vérifier serveur, port et chiffrement.
Vérifier les identifiants sans les publier.
Envoyer un seul message de test.
Lire immédiatement les erreurs.
Déterminer si le serveur SMTP a accepté le message.
Vérifier le dossier spam.
Tester un deuxième fournisseur de messagerie.
Vérifier SPF, DKIM et DMARC si le message est envoyé mais mal délivré.
Vérifier les quotas et restrictions de l’hébergeur.
43. Ce qu’il ne faut pas faire
Évitez :
changer cinq paramètres SMTP simultanément ;
publier votre mot de passe SMTP ;
désactiver TLS au hasard ;
utiliser une adresse Gmail comme expéditeur depuis un serveur non autorisé ;
créer des enregistrements SPF au hasard ;
modifier phpBB si le serveur destinataire indique clairement un problème DNS ;
envoyer des centaines de messages de test ;
conclure qu’un e-mail n’a pas été envoyé simplement parce qu’il n’apparaît pas dans la boîte de réception.
44. Checklist rapide
L’envoi des e-mails est activé dans phpBB.
Je sais si j’utilise PHP ou SMTP.
L’adresse expéditeur est correcte.
Le serveur SMTP est correct.
Le port correspond à la documentation du fournisseur.
Le chiffrement est correctement configuré.
Les identifiants SMTP sont valides.
Le serveur est joignable depuis mon hébergement.
J’ai lu le message d’erreur exact.
J’ai vérifié les spams.
J’ai testé plusieurs fournisseurs de messagerie.
J’ai vérifié les quotas éventuels.
J’ai vérifié SPF, DKIM et DMARC lorsque nécessaire.
Je n’ai publié aucun secret.
À retenir
Lorsqu’un utilisateur dit :
« phpBB n’envoie plus mes e-mails »
il faut déterminer à quelle étape le message s’arrête.
La bonne démarche est :
Code : Tout sélectionner
phpBB a-t-il généré le message ?
→ le serveur SMTP a-t-il été contacté ?
→ l’authentification a-t-elle réussi ?
→ le serveur SMTP a-t-il accepté le message ?
→ le serveur destinataire l’a-t-il accepté ?
→ le message a-t-il été classé comme spam ?Chaque réponse élimine une partie des causes possibles.
Un problème SMTP ne se résout pas en changeant des paramètres au hasard.
Il se diagnostique étape par étape.
Et lorsqu’un e-mail est accepté par votre serveur SMTP mais n’arrive pas en boîte de réception, le problème n’est plus nécessairement dans phpBB.
Il faut alors examiner la délivrabilité, le DNS et le serveur destinataire.
Si vous utilisez HUCIAL Diagnostic, son rapport peut également fournir une partie des informations relatives à l’environnement phpBB et à la configuration d’envoi, sans exposer les mots de passe ou autres secrets.