Problème Postfix Deferred

Tags: #<Tag:0x00007fc9deec3a60>

Bonjour à tous,

J’ai un serveur VPS sous debian 11 avec postfix dovecot etc … pour l’envois d’emails.
Sur mail-tester.com j’obtiens la note de 10/10 (tout est configuré DKIM, SPF, Reverse, …).

Je reçois bien les emails envoyés par mon serveur, pour autant quand j’en envois une grosse quantité (~ 700 actuellement en attente), ils partent par paquet de 10 environs en ensuite comme un cooldown.

Voilà le message d’erreur que j’obtiens (pas seulement google mais tous les autres FAI) :

postfix/error[1621201]: 0C70825BC5: to=<adresse@gmail.com>, relay=none, delay=56560, delays=56409/151/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to alt4.gmail-smtp-in.l.google.com[74.125.200.27]:25: Connection timed out

Auriez-vous une idée ?
Merci et bonne journée

Salut,

normalement c’est pas un gros problème, tu dois voir le nombre de messages dans la queue « deferred » avec qshape deferred, et ce nombre doit décroître régulièrement.
Mais pour éviter d’avoir trop de messages dans cette queue, tu peux gérer le rythme d’envoi vers les différents fournisseurs. Tu peux te référer à cet article wiki d’une boîte d’infogérance: Wiki Evolix - Howto Postfix

Par contre là où je bosse, gmail est en normal, on leur envoie un paquet de mails, mais ils absorbent sans râler… Tu as peut-être réellement une latence supérieure au délai de timeout, tu peux vérifier ton smtp_connect_timeout dans le fichier master.cf
Sinon, demande à ton hébergeur s’ils ont des règles filtrantes sur les connexions sortantes sur le port 25, c’est possible qu’ils limitent volontairement le trafic sortant SMTP pour lutter contre le SPAM et éviter de se faire inscrire leurs ranges d’adresses IP sur les listes noires.

Merci beaucoup pour ta réponse ! Je galère depuis hier et je trouvais rien.

Effectivement la liste dans la queue diminue mais très très lentement (il m’en reste encore 612 depuis hier en partant de plus de 700 …).
Je n’ai pas de smtp_connect_timeout dans ma config.

Par contre mon VPS est chez hostinger et je n’avais pas pensé à regarder leurs limitations :cry:
Si j’en crois ce post, c’est 5 mails par minutes, ça doit être ça je pense !

Est ce que tu sais comment je peux réguler ça automatiquement toutes les 5 minutes ?

Encore merci !

Oui effectivement, c’est sans doute ce qui explique le timeout. Tu peux vérifier plus précisément en analysant les logs dans /var/log/mail.log, en théorie tu dois avoir des séquences de 1 minute pendant laquelle 5 mails partent, puis les autres tombent en timeout, puis au bout d’une minute 5 autres messages qui partent, etc.

D’après Postfix manual - smtpd(8), tu peux tester avec

smtpd_client_message_rate_limit = 5
anvil_rate_time_unit = 60s # c'est la valeur par défaut, donc pas forcément utile de valoriser ce paramètre

Donc tu en as pour 2h pour 600 messages.

J’ai essayé de rajouter tes 2 paramètres mais pourtant la file d’attente ne bouge pas.
Dès que je modifie le main.cf, je relance postfix et je fais un postfix flush, la liste baisse de 5 messages puis plus rien … comme si les 60 secondes n’étaient pas appliquées.

J’ai aussi essayé de mettre queue_run_delay = 60s mais ça fait pareil

Edit : Les envois se sont relancés après 1h et tous d’un coup donc le smtpd_client_message_rate_limit n’a pas l’air d’être pris en compte non plus …

Alors peut-être plutôt avec smtpd_client_recipient_rate_limit = 5 ?
J’avoue n’avoir jamais joué avec ces paramètres, il y a peut-être des exemples en ligne ?