Page 1 of 1

Mail über PHP an andere Hosts versenden

Posted: 2005-07-22 16:01
by transmitter
Hi

Ich kann mit der mail ( ) Fkt von PHP eMails an Adressen versenden, die lokal auf dem Server liegen, nicht aber an andere eMail Adressen.

Das steht dann im mainlog von exim, wenn ich die Funktion aufrufe:

Code: Select all

2005-07-22 15:38:20 1DvxjI-0003c2-Rs <= MeinBenutzer@debian U=directort P=local S=377 T="Feedback"
2005-07-22 15:38:21 1DvxjI-0103c2-Rs ** webmaster@AndereDomain.de R=dnslookup T=remote_smtp: SMTP error from remote mailer after RCPT TO:<webmaster@AndereDomain.de>: host mx0.AnderDomain.de [81.37.128.xx]: 550-Verification failed for <MeinBenutzer@debian>n550-Unrouteable addressn550 Sender verify failed
2005-07-22 15:38:21 1DvxjJ-0003c7-3f <= <> R=1DvxjI-0003c2-Rs U=Debian-exim P=local S=1375 T="Mail delivery failed: returning message to sender"
Da ich lokal vesenden kann, brauche ich wohl keine SMTP Autentifizierung (die mail() ja nicht unterstützt), oder?
Oder liegt es doch da dran?
Kann mir jemand damit helfen? :-S

Danke schon mal
Bye, Transmitter

PS: Lokal geht es gut:

Code: Select all

2005-07-22 15:40:03 1Dvxkx-0003cQ-OC <= MeinBenutzer@debian U=directort P=local S=383 T="Feedback"
2005-07-22 15:40:03 1Dvxkx-0003cQ-OC => /var/opt/vmail/lokaleDomain.de/webmaster/Maildir <webmaster@lokaleDomain.de> R=virtual_domains T=virtual_de
livery
2005-07-22 15:40:03 1Dvxkx-0003cQ-OC Completed

Re: Mail über PHP an andere Hosts versenden

Posted: 2005-07-22 16:46
by dodolin
Ist daran irgendwas unklar?
SMTP error from remote mailer after RCPT TO:<webmaster@AndereDomain.de>: host mx0.AnderDomain.de [81.37.128.xx]: 550-Verification failed for <MeinBenutzer@debian>n550-Unrouteable addressn550 Sender verify failed
Verwende halt gueltige Absender, die auch Mails empfangen koennen. Vor allem auch inklusive einer gueltigen Domain.

http://www.php-faq.de/q/q-mail-absender.html

Re: Mail über PHP an andere Hosts versenden

Posted: 2005-07-22 17:15
by transmitter
Hmm .. habe beide der beschriebenen Versionen ausprobiert, aber im Log tauch immer noch das gleiche auf. :(

Muss ich "MeinBenutzer" noch zu den trusted_users von exim hinzufügen?
Aber das würde ja nur eine Warning unterdrücken, oder nicht?


EDIT:
Erst testen, dann fragen, ja, der PHP-Benutzer muss als trusted User hinzugefügt werden :)

Re: Mail über PHP an andere Hosts versenden

Posted: 2005-07-22 20:08
by dodolin
Wenn es jetzt daran scheitert, dass der PHP-/Web-User nicht in trusted_users ist, sollte die Logmeldung aber anders aussehen! Ausserdem ist es sicherheitstechnisch wirklich keine gute Idee, den PHP- oder gar Webserver-User zu den trusted_users von Exim hinzuzufuegen. Sinniger waere da schon eher untrusted_set_sender, das sollte voellig ausreichen.

Oder hast du mal vorher im Manual gelesen, welche Privilegien trusted_users alle erteilt und dir ueberlegt, was das bedeutet?

Re: Mail über PHP an andere Hosts versenden

Posted: 2005-07-23 00:01
by transmitter
dodolin wrote:Sinniger waere da schon eher untrusted_set_sender, das sollte voellig ausreichen.
untrusted_set_sender = *

Das habe ich jetzt eingefügt, das funktioniert.

Aber ist das nicht auch unsicher? So richtig verstehe ich da die Doku nicht, können mit einem * nicht auch alle senden?

Was könnte ich denn als alternative für den * nehmen?

webmaster@domain1.de;webmaster@domain2.de usw.?

Dazu habe ich leider auch keine Bsps gefunden :(

Re: Mail über PHP an andere Hosts versenden

Posted: 2005-07-23 01:33
by dodolin
Ich denke, die Doku unter http://www.exim.org/exim-html-4.50/doc/ ... tml#IX1547 eigentlich ziemlich eindeutig.

Man traegt dort keine Mailadressen ein, sondern die Systemuser. Es wuerde also ausreichen, www-user, apache oder wie auch immer der User heisst einzutragen, unter dem die PHP Skripte laufen.

Re: Mail über PHP an andere Hosts versenden

Posted: 2005-07-23 16:29
by transmitter
Leider funktioniert es mit einem Systemuser nicht:
Ich bekomme damit die gleiche Fehlermeldung im Logfile wie oben.
Wenn ich allerdings * eintrage, dann funktioniert es.

Es geht nicht mit dem PHP User und auch nicht mit dem Apache user. :(

Re: Mail über PHP an andere Hosts versenden

Posted: 2005-07-23 18:17
by dodolin
Wenn du diese Fehlermeldung hier bekommst:
2005-07-22 15:38:21 1DvxjI-0103c2-Rs ** webmaster@AndereDomain.de R=dnslookup T=remote_smtp: SMTP error from remote mailer after RCPT TO:<webmaster@AndereDomain.de>: host mx0.AnderDomain.de [81.37.128.xx]: 550-Verification failed for <MeinBenutzer@debian>n550-Unrouteable addressn550 Sender verify failed
Dann liegt es jedenfalls definitiv nicht an der untrusted_set_sender Option. Deine Aussagen passen irgendwie nicht zusammen.