Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".

#1 Le 09/05/2008, à 10:43

Jeryagor

Envoi de mail via PHP avec SSMTP

Bonjour à tous, amis Linuxiens.

Je suis en train de tester quelques fonctions de PHP et je bloque sur l'envoi de mail.

J'ai installé et configuré SSMTP (j'ai utilisé smtp.orange.fr comme SMTP), modifié le fichier php.ini en conséquence et, malgré tout, l'envoi de mail est impossible (mail me renvoie false...).

A quoi cette erreur peut-elle être due ?

Merci d'avance pour votre aide.

Hors ligne

#2 Le 10/05/2008, à 09:50

Jeryagor

Re : Envoi de mail via PHP avec SSMTP

Je me permets un petit up, je suis toujours bloqué au même point hmm

Hors ligne

#3 Le 10/05/2008, à 11:15

Jeryagor

Re : Envoi de mail via PHP avec SSMTP

J'ai obtenu un peu de nouveau.

Voilà le message d'erreur que me donne SSMTP quand j'essaie d'envoyer un mail.

jeryagor@serveur:/$ ssmtp xxx@xxx.fr Salut ! .
*** glibc detected *** ssmtp: munmap_chunk(): invalid pointer: 0x080544ab ***
======= Backtrace: =========
/lib/tls/i686/cmov/libc.so.6(__libc_free+0x18a)[0xb7e52b4a]
ssmtp[0x804aeae]
ssmtp[0x804b88f]
ssmtp[0x804c2f7]
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xdc)[0xb7e018cc]
ssmtp[0x8049541]
======= Memory map: ========
08048000-0804e000 r-xp 00000000 03:01 24630      /usr/sbin/ssmtp
0804e000-0804f000 rwxp 00005000 03:01 24630      /usr/sbin/ssmtp
0804f000-08074000 rwxp 0804f000 00:00 0          [heap]
b7c63000-b7c6d000 r-xp 00000000 03:01 605040     /lib/libgcc_s.so.1
b7c6d000-b7c6e000 rwxp 00009000 03:01 605040     /lib/libgcc_s.so.1
b7c7a000-b7c83000 r-xp 00000000 03:01 605057     /lib/tls/i686/cmov/libnss_files-2.4.so
b7c83000-b7c85000 rwxp 00008000 03:01 605057     /lib/tls/i686/cmov/libnss_files-2.4.so
b7c85000-b7c8d000 r-xp 00000000 03:01 605059     /lib/tls/i686/cmov/libnss_nis-2.4.so
b7c8d000-b7c8f000 rwxp 00007000 03:01 605059     /lib/tls/i686/cmov/libnss_nis-2.4.so
b7c8f000-b7c96000 r-xp 00000000 03:01 605055     /lib/tls/i686/cmov/libnss_compat-2.4.so
b7c96000-b7c98000 rwxp 00006000 03:01 605055     /lib/tls/i686/cmov/libnss_compat-2.4.so
b7c98000-b7c9a000 rwxp b7c98000 00:00 0 
b7c9a000-b7cad000 r-xp 00000000 03:01 18596      /usr/lib/libz.so.1.2.3
b7cad000-b7cae000 rwxp 00012000 03:01 18596      /usr/lib/libz.so.1.2.3
b7cae000-b7cb0000 r-xp 00000000 03:01 605051     /lib/tls/i686/cmov/libdl-2.4.so
b7cb0000-b7cb2000 rwxp 00001000 03:01 605051     /lib/tls/i686/cmov/libdl-2.4.so
b7cb2000-b7dd4000 r-xp 00000000 03:01 50449      /usr/lib/i686/cmov/libcrypto.so.0.9.8
b7dd4000-b7de9000 rwxp 00121000 03:01 50449      /usr/lib/i686/cmov/libcrypto.so.0.9.8
b7de9000-b7dec000 rwxp b7de9000 00:00 0 
b7dec000-b7f19000 r-xp 00000000 03:01 605048     /lib/tls/i686/cmov/libc-2.4.so
b7f19000-b7f1b000 r-xp 0012c000 03:01 605048     /lib/tls/i686/cmov/libc-2.4.so
b7f1b000-b7f1d000 rwxp 0012e000 03:01 605048     /lib/tls/i686/cmov/libc-2.4.so
b7f1d000-b7f20000 rwxp b7f1d000 00:00 0 
b7f20000-b7f5b000 r-xp 00000000 03:01 50450      /usr/lib/i686/cmov/libssl.so.0.9.8
b7f5b000-b7f5f000 rwxp 0003b000 03:01 50450      /usr/lib/i686/cmov/libssl.so.0.9.8
b7f5f000-b7f71000 r-xp 00000000 03:01 605054     /lib/tls/i686/cmov/libnsl-2.4.so
b7f71000-b7f73000 rwxp 00011000 03:01 605054     /lib/tls/i686/cmov/libnsl-2.4.so
b7f73000-b7f76000 rwxp b7f73000 00:00 0 
b7f81000-b7f83000 rwxp b7f81000 00:00 0 
b7f83000-b7f9c000 r-xp 00000000 03:01 606727     /lib/ld-2.4.so
b7f9c000-b7f9e000 rwxp 00018000 03:01 606727     /lib/ld-2.4.so
bf9ac000-bf9c1000 rw-p bf9ac000 00:00 0          [stack]
ffffe000-fffff000 ---p 00000000 00:00 0          [vdso]
Abandon

Mon fichier de configuration pour SSMTP :

#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=jeryagor

# The place where the mail goes. The actual machine name is required no
# MX records are consulted. Commonly mailhosts are named mail.domain.com
mailhub=smtp.orange.fr

# Where will the mail seem to come from?
RewriteDomain=xxxxx@yahoo.fr

# The full hostname
hostname=orange.fr

# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
# FromLineOverride=YES

Peut-être que cela vous aidera...

Merci d'avance wink

Hors ligne

#4 Le 20/11/2008, à 15:27

Tgarfr

Re : Envoi de mail via PHP avec SSMTP

meme probleme

Hors ligne

#5 Le 21/11/2008, à 23:27

Dud

Re : Envoi de mail via PHP avec SSMTP

C'est normal que ce paramètre soit commenté?

# FromLineOverride=YES

Peux tu nous montrer une capture de paquets? (Follow TCP stream sous Wireshark)


EDIT :

Jeryagor a écrit :

malgré tout, l'envoi de mail est impossible (mail me renvoie false...)

J'ai aussi eu ce problème. Vérifie que :
- l'utilisateur www-data a bien le droit d'executer le binaire sendmail et qu'il peut lire le fichier de configuration /etc/ssmtp.conf
- as-tu fourni le chemin complet du binaire sendmail dans php.ini? Regarde dans /var/log/apache2/error.log si tu avais aussi cette erreur :

sh: sendmail: not found

Un petit tuto intéressant : http://www.davidhurst.co.uk/2007/06/19/php-mail-and-ssmtp-on-debian-linux/

Dernière modification par Dud (Le 22/11/2008, à 01:33)

Hors ligne

#6 Le 21/12/2008, à 01:06

Kljuka

Re : Envoi de mail via PHP avec SSMTP

Je ne parle pas Francais bien, mais je voudre aider un peux.

Vous avez fait un error. Vous devez ecrire asi en ssmtp.conf:
rewriteDomain=yahoo.fr

Mais non:
rewriteDomain=xx@yahoo.fr

#7 Le 22/01/2009, à 03:53

Tgarfr

Re : Envoi de mail via PHP avec SSMTP

Merci pour ta réponce Kljuka

Je vais essayé ce soir

Hors ligne

#8 Le 24/01/2009, à 01:22

MrWaloo

Re : Envoi de mail via PHP avec SSMTP

il faut installer 'mailx' en plus de 'ssmtp'
il faut personnaliser le fichier /etc/ssmtp/revaliases

root:adresse@exemple.com:smtp.serveur-smtp.com[:port]

et le fichier /etc/ssmtp/ssmtp.conf

root=adresse@exemple.com
mailhub=smtp.serveur-smtp.com[:port]
AuthUser=adresse@exemple.com
AuthPass=Mot-de-passe

il faut utiliser la commande 'mail'

echo Contenu du message | mail -s "sujet du mail" destinataire@loin-tres-loin.com

Dernière modification par MrWaloo (Le 24/01/2009, à 01:22)


"De tous ceux qui n'ont rien à dire, les plus agréables sont ceux qui se taisent !!" (Desproges)
UNIX is an operating system, OS/2 is half an operating system, Windows is a shell, MS-DOS is a boot sector virus.

Hors ligne

#9 Le 25/01/2009, à 10:03

Tgarfr

Re : Envoi de mail via PHP avec SSMTP

send-mail: Invalid response SMTP server
Can't send mail: sendmail process failed with error code 1

Avec Yahoo ca a l'aire impossible. Sa fait 6 mois je je regarde de temps en temps sur les forum et j'ai vu personne y arrivé

Hors ligne

#10 Le 25/01/2009, à 21:47

MrWaloo

Re : Envoi de mail via PHP avec SSMTP

je ne me souviens plus de la commande exacte, mais il est possible, avec une option du genre -b (à vérifier) de faire en sorte que la commande mail retourne dans le shell l'ensemble de l'échange smtp.
essai de trouver la dite option et donne nous le résultat

en ce qui me conserne, ça m'avait aidé

sinon, c'est quoi (dans la forme, pense à cacher tes identifiants, adresse mail et mot de passe, mais laisse le serveur et le port) tes paramètres pour yahoo ?


"De tous ceux qui n'ont rien à dire, les plus agréables sont ceux qui se taisent !!" (Desproges)
UNIX is an operating system, OS/2 is half an operating system, Windows is a shell, MS-DOS is a boot sector virus.

Hors ligne

#11 Le 20/04/2009, à 12:04

thewolfwood

Re : Envoi de mail via PHP avec SSMTP

MrWaloo a écrit :

il faut installer 'mailx' en plus de 'ssmtp'
il faut personnaliser le fichier /etc/ssmtp/revaliases

root:adresse@exemple.com:smtp.serveur-smtp.com[:port]

et le fichier /etc/ssmtp/ssmtp.conf

root=adresse@exemple.com
mailhub=smtp.serveur-smtp.com[:port]
AuthUser=adresse@exemple.com
AuthPass=Mot-de-passe

il faut utiliser la commande 'mail'

echo Contenu du message | mail -s "sujet du mail" destinataire@loin-tres-loin.com

Super ça marche nickel.

Merci bien.

#12 Le 17/07/2010, à 11:21

yamo

Re : Envoi de mail via PHP avec SSMTP

Salut,

J'ai apticron sur un serveur et j'ai configuré ssmtp grâce au tutoriel ssmtp.
Apticron m'envoie bien les mails sur l'adresse indiquée mais met en destinataire root@smtp.fai.com ( il indique bien le bon serveur  mais je l'ai remplacé par smtp.fai.com), ce n'est pas super confidentiel mais bon si la boîte mail root@smtp.fai.com existe le mailmaster va râler à force tongue

EDIT : J'ai trouvé c'est le fichier /etc/apticron/apticron.conf qu'il fallait modifier j'avais comme configuration EMAIL="root" donc forcément ...

Dernière modification par yamo (Le 17/07/2010, à 11:43)


Stéphane
--
Debian 7.0 XFCE 4.8   - #ubuntu sur freenode

sudo / matrix

Hors ligne

#13 Le 09/09/2012, à 02:27

salam312

Re : Envoi de mail via PHP avec SSMTP

Salut,
ça marche avec cette méthode :

apt-get install -y ssmtp mutt mailutils

on laisse le fichier /etc/ssmtp/revaliases comme il est par défaut (tout est commenté dedans)
le fichier /etc/ssmtp/ssmtp.conf

root=postmaster
mailhub=smtp.mail.yahoo.fr:587
hostname=<<PC-NAME>>
rewriteDomain=
FromLineOverride=YES
AuthUser=<<LOGIN>>
AuthPass=<<PASSWORD>>
UseTLS=NO
UseSTARTTLS=NO

Avec la commande 'mail'

echo message | mail -r LOGIN@yahoo.fr  -s sujet  destinataire@exemple.com

Avec la commande 'mutt'

zcat /usr/share/doc/mutt/examples/sample.muttrc.gz > /home/user/.muttrc
vim /home/user/.muttrc
--------------------------------------------------------------------------------
set sendmail="/usr/lib/sendmail -oi -oem -f LOGIN@yahoo.fr"
set from="LOGIN@yahoo.fr"         # Mettez ici votre adresse d'origine.
set realname="NOM_sans_espace"
set use_from=yes
set edit_headers=yes
set use_envelope_from=yes
--------------------------------------------------------------------------------
mkdir -p /home/user/Mail
touch /home/user/.muttrc-local
mutt destinataire@exemple.com -s "SUJET" -c  destinataire2@domaine.fr  -a  FichierJoint  <  FichierCorpsMessage 

Avec le client 'thunderbird'

serveur pop : pop.mail.yahoo.fr
identifiant : LOGIN
sécurité de connexion : SSL/TLS  995
--------------------------------------------------------------------------------
serveur SMTP : smtp.mail.yahoo.fr
identifiant : LOGIN
sécurité de connexion : SSL/TLS  465

Ouvrir les ports au niveau Firewall

iptables -A OUTPUT -p tcp --dport 465,587,995 -j ACCEPT
iptables -A INPUT -p tcp --dport 465,587,995 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 465,587,995 -j ACCEPT
iptables -A INPUT -p tcp --sport 465,587,995 -j ACCEPT

Dernière modification par salam312 (Le 09/09/2012, à 02:43)

Hors ligne

#14 Le 09/09/2012, à 02:49

Maisondouf

Re : Envoi de mail via PHP avec SSMTP

Avec openSSL installé, je suppose...


ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor,  OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)

Hors ligne

Haut de page ↑