Probleme envoi de mail sur certains serveurs [RH 9.0] - Installation - Linux et OS Alternatifs
Marsh Posté le 23-06-2005 à 08:27:12
en gros pour simplifier la question:
est il possible d'anvoyer des mails depuis un shell linux (de partout) sans avoir de nom de domaine publie (en etant root@localhost) et si oui comment ?
(faut il modifier le resolv.conf et comment?)
Merci
Marsh Posté le 23-06-2005 à 08:56:39
en fait le probleme vient du fait que certains serveurs mail verifient l'addresse expediteur mais je vois pas trop comment contourner ce probleme
Marsh Posté le 23-06-2005 à 09:06:56
faire un mapping en sortie de ton serveur smtp.
Pour mes mails sortant je réécrit les adresses et ca passe.
Lien pour postfix:
http://www.postfix.org/rewrite.html
Marsh Posté le 23-06-2005 à 09:15:29
ok mais cela resoudra aussi le probleme lorsque je fais mon envoi depuis un script php?(et pas seulement avec la commande mail).
Merci beaucoup de ton aide
P.S:j'ai beau chercher depuis hier la solution a mon probleme je ne trouve que des changements de hostanme ou des trucs du style et j'ai un peu peur (je suis pas tres fortiche et l'on parle d'un serveur de production assez sensible) , ta solution me semble moins risquee (a mon niveau) maintenant je vais essayer de comprendre comment la mettre en oeuvre
Encore merci
Marsh Posté le 23-06-2005 à 09:42:25
est ce que faire un truc de ce style dans le mail.conf aiderait?
Code :
|
desole d'etre si lourd j'ai peur de faire une betise
d'autre part je me demande vraiment si php utilise postfix pour envoyer les mails etant donne que je retrouve exactement les memes problemes en utilisant mail de php et mail du shell
Marsh Posté le 23-06-2005 à 09:59:25
en utilisant la commande mail d'un shell, il pipe ton mail dans une autre comande "sendmail" qui est juste là pour une histoire de compatibilité avec le réel sendmail. Cette commande envoit ensuite le mail a postfix qui est chargé de le distribué à l'utilisateur final.
pour php c'est pareil.
ta confugration ci dessus n'est pas bonne, il demande un nom de domain/machine, pas une adresse mail.
Si tu utilises postfix lit le lien que je t'ai filé
Marsh Posté le 23-06-2005 à 10:02:25
ok , sendmail semble installe sur le serveur
j'ai beau lire la doc je n'arrive pas a etre sur
et si je lui donne un nom de domaine , il faudra certainemnt que user@cedomaine.com existe pour que le mail soit accepte non?
Marsh Posté le 23-06-2005 à 10:26:02
si tu utilise sendmail, tu peux jetter un oeil à ce topic : http://forum.hardware.fr/hardwaref [...] 0681-1.htm
J'ai fait ça pour un serveur qui emet beaucoup de mails.
Maintenant dans un shell, y'a pas besion d'autant. Simplement en utilisant une ligne de commande comme celle ci :
echo 'Test' | sendmail -s "Sujet du Mail" -f "turlututu@chapo.tu" -F "ShellTest" destinataire@domaine.org
et le tour est joué. Par contre je ne l'utilise pour des shells de controle en tant que root. Pas testé en mode utilisateur alors que le liens vers le topic fonctionne pour un grand nombre de cas
Marsh Posté le 23-06-2005 à 10:31:57
merci de ton aide mais le probleme c'est que je n'envoie des mails que depuis des scipts php (pour pouvoir envoyer des pj) il me semble donc devoir modifier dans la config du serveur de mail pour pouvoir changer cela
Marsh Posté le 23-06-2005 à 10:46:08
C'est postfix ou sendmail que tu as ?
Pour postfix:
http://x.guimard.free.fr/postfix/
http://x.guimard.free.fr/postfix/i [...] delivering
dans /etc/postfix/canonical j'ai mis ca
augure mon_adresse_valide@truc.com |
Et les mails de l'utilisateur augure sur cette machine sont mappés pour utiliser mon adresse valide.
Marsh Posté le 23-06-2005 à 10:58:21
apparement c'est pas postfix qui tourne (bien que j'aie tous les fichiers postfix sur mon serveur) car apres la modif que tu m'indiques j'ai fait :
Code :
|
et j'ai eu :
Code :
|
Marsh Posté le 23-06-2005 à 11:00:14
j'ai lance postfix et ca a rien change (du moins quand j'envoies avec la fonction mail)
Marsh Posté le 23-06-2005 à 11:28:58
j'ai trouve un moyen detourne de regler le probleme avec la classe Perl MIME::Lite
mais changer la configuration a la bas m'interesse toujours (c'est bien plus propre)
Marsh Posté le 23-06-2005 à 11:50:02
betsamee a écrit : merci de ton aide mais le probleme c'est que je n'envoie des mails que depuis des scipts php (pour pouvoir envoyer des pj) il me semble donc devoir modifier dans la config du serveur de mail pour pouvoir changer cela |
En même temps y'a pas forcément besoin de php pour envoyer des pièces jointes
un script bash avec uuencode ou base64 ça fonctione
Au fait t'as postfix ou sendmail comme MTA ?
Si t'as pas de serveur relais avec un domaine connu, tu peux usurper une identitée pour passer certain contrôle ( domaine du sender doit exister) par contre tu rencontrera peut être des problemes averc les serveur de mail qui exigent un reverse DNS.
Bref si ton user (celui qui execute ton script php) a un alias connu au niveau du MTA ( cf mon 1er lien sur l'usurpation), il n'est pas impossible que ça fonctionne !
Marsh Posté le 23-06-2005 à 12:17:54
apparement j'ai sendmail
le truc c'est qu'avec perl j'arrive a usurper un nom de dommaine sans trop de problemes
Marsh Posté le 23-06-2005 à 14:24:15
http://www.sendmail.org/m4/masquerading_relaying.html
je sais pas si tu generes ton sendmail.cf a partir de sendmail.mc
ou si tu bidouilles à la main le fichier de config
mais en tout cas:
ca devrait marcher avec la fonction masquerade tu dois pouvoir usurper un nom de domaine
par contre si tu es root et que tu veux pas que ca se voit faut faire un alias.
pareil y a une section sur sendmail.org
je te conseille aussi le site suivant qui explique bien comment config ton sendmail.
http://www.labo-linux.org/index.ph [...] les&id=491
Marsh Posté le 22-06-2005 à 17:07:00
Bonjour
Heureux detenteur d'un serveur tournant sur une Red Hat 9 je me retrouve avec un etrange probleme.
En effet lorsque j'envoies un mail (via la fonction mail dans un shell ou bien sous php) il arrive que le mail arrive sans problemes ou bien que le mail est rejete par le serveur distant
apparement parcequ'il ne reconnait pas l'expediteur (qui est en l'occurence root@localhost!! Donc cela me parait normal).
Mon serveur n'a pas de nom de domaine reference cependant j'aimerais pouvoir envoyer des mails de partout sans ce genre de retours .
Est ce possible sachant que de toutes manieres je n'aurais jamais de nom reference et que mon serveur se trouve dans un workgroup , ce workgroup etant derriere un cisco a ip fixe (qui redirige les http entrants vers mon serveur).
Voila une partie du message d'erreur que je recois dans mes logs :
Message édité par betsamee le 22-06-2005 à 19:23:48