Problème envoi mail via php-mail et postfix

Bonsoir,

Je suis en train de configurer une architecture 3 tiers et j’ai des problemes d’envois de mail.

J’ai installé sur les filer et sur les web postfix et php-mail.

J’ai choisi configurer site internet dans postfix.

J’ai tout laissé par defaut car mon vrai serveur email est à l’exterieur du reseau.

Pourriez vous m’aider à configurer cet envois de mail via php-mail et postfix (je sais pas si il faut postfix)

Merci

Cordialement
Bratock

Postfix est surdimensionné s’il n’y a pas besoin de réception smtp sur les machines.
Dans un cas ou on veut juste envoyer des mails, il y a ssmtp, qui s’installe quasi sans configuration.

Mais bon, pour vérifier déjà si ton postfix fonctionne, si tu as installé le paquet mailx, tu t’envoies un mail avec la commande mail user@host.
Si tu reçois, c’est que ton postfix fonctionne.

Sinon, il faudrait voir le contenu de /etc/postfix/mail.cf et quelques extraits des logs /var/log/mail.log qui contiennent des infos sur les erreurs.

Aprés seulement, ça vaudra le coup de s’intéresser à l’articulation de php avec ton MTA (là, c’est plus souvent des problémes de mails qui tombent dans les spams cf: https://openclassrooms.com/fr/courses/1156346-e-mail-envoyer-un-e-mail-en-php).

Merci Matt

Voici ce que j’ai trouvé dans les logss mail.log

BD57A3F360: sender non-delivery notification: E45D03F362
 postfix/smtp[14998]: 310ED3F360: to=<contact@mon-domaine.tld>, relay=none, delay=0.06, delays=0.02/0/0.04/0, dsn=5.4.6, status=bounced (mail for mon-domaine.tld loops back to myself)

J’ai changé les dns et j’ai maintenant moins d’erreur

status=bounced (unknown user: "contact")

Pourtant j’ai declaré contact: contact@mon-domaine.tld dans /etc/aliases

Merci pour ton aide

Re

J’essais d’installer postfix et dovecot et j’ai une erreur dovecot dont je trouve pas la solition ni dans les logs ni sur google

Voic l’erreur dans syslog

vps dovecot[23446]: doveconf: Fatal: Error in configuration file /etc/dovecot/dovecot.conf: duplicate listener: /var/run/dovecot/dict
oct. 15 15:29:12 vps systemd[1]: dovecot.service: Control process exited, code=exited status=89
dovecot.service: Control process exited, code=exited status=89
oct. 15 15:29:12 vps systemd[1]: Failed to start Dovecot IMAP/POP3 email server.
oct. 15 15:29:12 vps 1 systemd[1]: dovecot.service: Unit entered failed state.
oct. 15 15:29:12 vps1 systemd[1]: dovecot.service: Failed with result ‘exit-code’.

Mon fichier dovecot.conf

!include_try /usr/share/dovecot/protocols.d/.protocol
protocols = imap lmtp
listen = *
!include conf.d/
.conf

quand je vide le ficher de conf dovecot demarre bien donc ca vien bien des parametres utilisé dans dovecot.conf

autre chose quand j’ajoute juste la ligne

!include conf.d/*.conf

J’ai la meme erreur donc le bug vien de cette ligne

Merci à vous

J’ia un peu corrigé le probleme mais google les bloques car il dit que ca peut etre une usurpation d’adresse ip

Pourtant le reverse dns est bien configuré.

Je ne comprens pas trop

voici mon main.conf

myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no

append_dot_mydomain = no

readme_directory = no

compatibility_level = 2

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = mail.mon-dmaine.tld
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = vpxxxxxxx.ovh.net,localhost.ovh.net, localhost, mon-dmaine.tld, mail.mon-dmaine.tld
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
default_transport = smtp
relay_transport = smtp
strict_mailbox_ownership = no

voici l’erreur dans les logs

E98553F53F: to=monnom@gmail.com, relay=alt1.gmail-smtp-in.l.google.com[64.233.164.27]:25, delay=2341, delays=2340/0.03/0.56/0.15, dsn=4.7.0, status=deferred (host alt1.gmail-smtp-in.l.google.com[64.233.164.27] said: 421-4.7.0 [mon-ip 15] Our system has detected that this message is 421-4.7.0 suspicious due to the very low reputation of the sending IP address. 421-4.7.0 To protect our users from spam, mail sent from your IP address has 421-4.7.0 been temporarily rate limited. Please visit 421 4.7.0 https://support.google.com/mail/answer/188131 for more information. u18-v6si2990230lfd.39 - gsmtp (in reply to end of DATA command))
Oct 15 19:24:40 vpsxxxx postfix/smtp[1190]: 46ED33F52F: to=monnom@gmail.com, relay=alt1.gmail-smtp-in.l.google.com[64.233.164.26]:25, delay=5766, delays=5765/0.01/0.58/0.16, dsn=4.7.0, status=deferred (host alt1.gmail-smtp-in.l.google.com[64.233.164.26] said: 421-4.7.0 [mon-ip 15] Our system has detected that this message is 421-4.7.0 suspicious due to the very low reputation of the sending IP address. 421-4.7.0 To protect our users from spam, mail sent from your IP address has 421-4.7.0 been temporarily rate limited. Please visit 421 4.7.0 https://support.google.com/mail/answer/188131 for more information. j18-v6si9168036ljc.149 - gsmtp (in reply to end of DATA command))

Merci à vous pour votre aide

Pour ta config:

  • je suis étonné par le fait que tu précises default_transport et relay_transport, vu que ce sont les valeurs par défaut,
  • Détail, tu as configuré tes mails rejetés pour renvoyer une erreur temporaire, les smtp qui t’envoient des mails risquent de revenir longtemps si tu ne les préviens pas que c’est définitif. Il faudrait plutôt mettre
    smtpd_recipient_restrictions =permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
  • ton mydestination me semble un peu foireux.
    Tu peux à la limite rajouter vpxxxxxxx.ovh.net et localhost.ovh.net “en dur” si tu penses que ce sont des domaines ou on va t’envoyer du mail, mais ça serait mieux de le définir plutôt dynamiquement comme ça:
    mydestination = vpxxxxxxx.ovh.net, localhost.ovh.net, $myhostname, localhost.$mydomain, localhost.localdomain, localhost
    En pensant à définir mydomain sur ton nom de domaine pur sans le nom de machine (mais rien n’empêche d’avoir myhostname = mydomain ).
  • Ton reverse est bien exactement identique à myhostname, tu es sûr et certain ?

C’est bizarre quand même, ça ne ressemble pas à une configuration générée par debian.
C’est mieux de partir de la config générée, et de l’ajuster.

Bon, mais les détails signalés peuvent avoir un impact sur la réception et le relay, mais ce n’est pas ça qui fait que google te bloque.
Le message ne parle pas de PTR, et de mémoire, google te le dit quand c’est un problème de PTR.
A mon avis, c’est plutôt que ton adresse ip a servi à spammer et doit figurer dans des listes noires.
Ou bien son score global de spam est trop bas, et il va falloir installer une vérification de la légitimité des mails apparemment émis de ton domaine soit par le dns (spf) soit par ton serveur (dkim) pour que google ai confiance.

Essayes http://www.mail-tester.com déjà, qu’est ce qu’il dit au niveau des bloquages par listes de spam ??

Si il ne trouve pas de blacklisting, ensuite, essayes d’installer juste le spf déjà.

Je te laisse trouver des tutos, sur comment fabriquer l’enregistrement TXT à ajouter à ta zone dns pour faire ça, mais à priori “v=spf1 +a +mx -all” devrait suffire si ta machine est déclarée comme MX du domaine.

Une fois ça fait, il faudrait que tu vérifies que tu reçois bien les mails sur la boite que tu utilises pour tester l’envoi depuis ton serveur (tu t’envoies un mail, puis tu vérifies que tu le reçois et que tu peux bien le lire d’une manière ou d’une autre).
Ensuite, tu envoies un mail à check-auth@verifier.port25.com et ça va te renvoyer tout un tas de diagnostics sur ton niveau de spam.
Une fois que le spf est bien en “pass”, tu pourras tester pour voir si ça passe l’antispam de google.

Merci matt

mon champ spf est bien configuré mais mon vrai serveur email est externe à ceux ou j’ai des erreurs.

Je veux juste pourvoir envoyer des mails depuis mon site formulaire contac de joomla.

Dans le champ spf j’ai declaré le serveur mx de mon founisseur mx.domaine.tld.

Je viens d’ajouter les 2 ip des mes deux serveur dans lles champs spf

Pense tu que c’est bon ?

Merci

Aucune idée.
Tu as vérifié avec check-auth@verifier.port25.com ?

Alors ne te prends pas forcément la tête avec le spf ou dkim:
ça, c’est juste pour pouvoir passer les filtres antispam de google.
Si tu n’envoies des mails que vers une boite à toi normale/saine (=qui n’est pas chez google), vérifie juste que le mail arrive bien.
Pas besoin de règler le probléme si tu n’en as pas.