Mail über PHP an andere Hosts versenden

Postfix, QMail, Sendmail, Dovecot, Cyrus, Courier, Anti-Spam
transmitter
Posts: 147
Joined: 2005-01-20 03:07

Mail über PHP an andere Hosts versenden

Post by transmitter » 2005-07-22 16:01

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

dodolin
RSAC
Posts: 4009
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe

Re: Mail über PHP an andere Hosts versenden

Post by dodolin » 2005-07-22 16:46

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

transmitter
Posts: 147
Joined: 2005-01-20 03:07

Re: Mail über PHP an andere Hosts versenden

Post by transmitter » 2005-07-22 17:15

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 :)

dodolin
RSAC
Posts: 4009
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe

Re: Mail über PHP an andere Hosts versenden

Post by dodolin » 2005-07-22 20:08

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?

transmitter
Posts: 147
Joined: 2005-01-20 03:07

Re: Mail über PHP an andere Hosts versenden

Post by transmitter » 2005-07-23 00:01

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 :(

dodolin
RSAC
Posts: 4009
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe

Re: Mail über PHP an andere Hosts versenden

Post by dodolin » 2005-07-23 01:33

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.

transmitter
Posts: 147
Joined: 2005-01-20 03:07

Re: Mail über PHP an andere Hosts versenden

Post by transmitter » 2005-07-23 16:29

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. :(

dodolin
RSAC
Posts: 4009
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe

Re: Mail über PHP an andere Hosts versenden

Post by dodolin » 2005-07-23 18:17

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.