CONFIGURATION : Postfix probleme avec gmail

Bonjoour à tous,

J’ai un serveur dédié chez online.net sous esxi.
J’ai installé une debian.

J’essais de configurer postfix pour recevoir les mails sur gmail mais j’ai des soucis.

Quand je fais un :

echo test | mail -s "test message" monmail@gmail.com

Et je vérifie que le mail est bien envoyé.
Je teste avec la commande tail -f.

tail -f /var/log/mail.log

Il me met :

Sep 27 19:40:47 pfl postfix/bounce[17026]: D8678300069: sender non-delivery notification: 31031300070 Sep 27 19:40:47 pfl postfix/qmgr[16972]: 31031300070: from=<>, size=2956, nrcpt=1 (queue active) Sep 27 19:40:47 pfl postfix/qmgr[16972]: D8678300069: removed Sep 27 19:40:47 pfl postfix/cleanup[17021]: 31CEC300069: message-id=<20140927174047.31031300070@pfl.port-frejus-location.fr> Sep 27 19:40:47 pfl postfix/local[17024]: 31031300070: to=<root@pfl.port-frejus-location.fr>, relay=local, delay=0.01, delays=0/0/0/0, dsn=2.0.0, status=sent (forwarded as 31CEC300069) Sep 27 19:40:47 pfl postfix/qmgr[16972]: 31CEC300069: from=<>, size=3113, nrcpt=1 (queue active) Sep 27 19:40:47 pfl postfix/qmgr[16972]: 31031300070: removed Sep 27 19:40:47 pfl postfix/smtp[17025]: Host offered STARTTLS: [smtp.gmail.com] Sep 27 19:40:47 pfl postfix/smtp[17025]: 31CEC300069: to=<monmail@gmail.com>, orig_to=<root@pfl.port-frejus-location.fr>, relay=smtp.gmail.com[64.233.162.109]:587, delay=0.17, delays=0/0/0.12/0.04, dsn=5.7.0, status=bounced (host smtp.gmail.com[64.233.162.109] said: 530 5.7.0 Must issue a STARTTLS command first. z4sm3065728laz.39 - gsmtp (in reply to MAIL FROM command)) Sep 27 19:40:47 pfl postfix/qmgr[16972]: 31CEC300069: removed

Comment je peux faire?

J’ai oublié de vous mettre mon fichier de configuration de postfix :
/etc/postfix/main.cf

# See /usr/share/postfix/main.cf.dist for a commented, more complete version
# Debian specific: Specifying a file name will cause the first line of that file to be used as the name.  The Debian default is
#/etc/mailname. myorigin = /etc/mailname
#myorigin = port-frejus-location.fr
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h
readme_directory = no
[b]# TLS parameters[/b]
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_tls_security_level = may
smtpd_tls_auth_only = yes
smtp_tls_note_starttls_offer = yes
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
[b]#SASL parameters[/b]
smtp_sasl_auth_enable =yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
[b]# information on enabling SSL in the smtp client.[/b]
myhostname = pfl.port-frejus-location.fr
alias_maps = hash:/etc/aliases
#alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = port-frejus-location.fr, pfl.port-frejus-location.fr, localhost.port-frejus-location.fr, localhost
relayhost = [smtp.gmail.com]:587
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
#soft_bounce = yes
smtp_fallback_relay = [relay.google.com]

j’espère que j’ai rien oublié.

Merci

Cordialement,

Je ne suis pas un fort connaisseur dans ce domaine mais une question :
as-tu essayé avec une autre adresse direction que Gmail ?
Il me semble avoir déjà vu passer des problème avec ces adresses “Google”.
Sinon, tu as un tuto qui semble assez complet sur le wiki (barre rouge du haut à droite = taper “postfix”).

[quote=“ricardo”]Je ne suis pas un fort connaisseur dans ce domaine mais une question :
as-tu essayé avec une autre adresse direction que Gmail ?
Il me semble avoir déjà vu passer des problème avec ces adresses “Google”.
Sinon, tu as un tuto qui semble assez complet sur le wiki (barre rouge du haut à droite = taper “postfix”).[/quote]

Bonjour,

J’ai essayé avec plusieurs adresses mails mais idem même problème.

Merci

Comment puis je faire ?

Bonjour,

Cela demanderait une réponse beaucoup plus poussée qui expliquerait les différents type de communication en SMTP, celle de client genre Icedove/Thunderbird vers serveur, celle de serveur à serveur, celle de serveur à serveur smarthost/proxy.

Mais bon, dans ta configuration la ligne [mono]relayhost = [smtp.gmail.com]:587[/mono] indique que tu demande aux serveurs de gmail d’envoyer ton email, comme si tu étais un Thunderbird en train d’envoyer un email avec une adresse d’expéditeur en gmail.com .
Ton serveur n’est pas un client sous Thunderbird, le mail n’est pas non plus avec un expéditeur en gmail.com : Il n’y a aucune chance que ça marche.

Il te faut faire fonctionner postfix comme un serveur de mails normal. Qui, quand il a un email à envoyer à une adresse en gmail.com, cherche le serveur de gmail dans les enregistrements MX du domaine gmail.com, s’y contacte sur le port 25, utilise éventuellement “starttls” puis envoie l’email.

Une fois que ce fonctionnement de serveur normal sera en place, tu recevras l’email, même si dans les spams. Il faudra alors se pencher sur la mise en place de SPF et DKIM.


AnonymousCoward

[quote=“AnonymousCoward”]Bonjour,

Cela demanderait une réponse beaucoup plus poussée qui expliquerait les différents type de communication en SMTP, celle de client genre Iceweasel/Thunderbird vers serveur, celle de serveur à serveur, celle de serveur à serveur smarthost/proxy.

Mais bon, dans ta configuration la ligne [mono]relayhost = [smtp.gmail.com]:587[/mono] indique que tu demande aux serveurs de gmail d’envoyer ton email, comme si tu étais un Thunderbird en train d’envoyer un email avec une adresse d’expéditeur en gmail.com .
Ton serveur n’est pas un client sous Thunderbird, le mail n’est pas non plus avec un expéditeur en gmail.com : Il n’y a aucune chance que ça marche.

Il te faut faire fonctionner postfix comme un serveur de mails normal. Qui, quand il a un email à envoyer à une adresse en gmail.com, cherche le serveur de gmail dans les enregistrements MX du domaine gmail.com, s’y contacte sur le port 25, utilise éventuellement “starttls” puis envoie l’email.

Une fois que ce fonctionnement de serveur normal sera en place, tu recevras l’email, même si dans les spams. Il faudra alors se pencher sur la mise en place de SPF et DKIM.


AnonymousCoward[/quote]

Merci de ta réponse.

Donc j’ai revu mon fichier main.cf de postfix.

J’ai juste changé :

Et là je reçois bien le mail de test depuis mon serveur

echo test | mail -s "test message" monmail@gmail.com

Par contre quand je vais sur le site j’ai une autre erreur :

il me met :

Sep 28 14:46:02 pfl postfix/sendmail[22720]: fatal: www-data(33): No recipient addresses found in message header

Est ce une histoire de droit sur un répertoire ou créer un nouveau dossier ?

Merci

Alain

Tu n’as pas tout à fait saisi la teneur de mon propos, je le crains.

Je vais donc être plus explicite : Il faut que tu vire la directive [mono]relayhost = [smtp.gmail.com]:587[/mono] de ton fichier de config !

[quote=“rezolinux”]Par contre quand je vais sur le site j’ai une autre erreur :

il me met :

Sep 28 14:46:02 pfl postfix/sendmail[22720]: fatal: www-data(33): No recipient addresses found in message header [/quote]
“No recipient addresses found in message header” : comme le dit le message, il faut que ton code PHP précise le destinataire dans les en-têtes de l’email.
Voici un bout de code que j’utilise en local pour tester l’envoi d’un email avec Postfix :

[code]#!/usr/bin/php5

<?php // http://lists.debian.org/debian-user-french/2001/09/msg00641.html // destinataire $recipient = "mon nom"; // objet $subject = "Test"; // corps du message $message = "Ceci est un message de test\n"; // ajoute les eventuels en-tetes From, Cc, Bcc $headers = ""; $headers .= "X-Mailer: PHP\r\n"; // et puis envoie mail($recipient, $subject, $message, $headers); ?>[/code]


AnonymousCoward