PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MIME::Lite



otelo
03-03-2004, 13:36
Hi,

ich habe ein Problem beim Versenden von Mail per Perl.
Nach klicken auf einen Link verschickt das Script an eine aus einer DB ausgelesenen Adresse eine dynamisch zusammengesetzte Mail. Es benutzt dazu den auf dem gleichen Server laufenden sendmail daemon. Das ganze funktioniert solange gut, bis eine Mail verschickt wird, bei der die Zielmailadresse nicht stimmt. Die Mailerdaemonmail kriege ich nicht an meine Mailaddresse, die unter FROM angegeben ist. Sie läuft immer im Postkorb des Hauptpostmasters des Mailservers an.

Ich habe nun schon alle Headerfelder ausprobiert und weiß nicht mehr weiter.



$msg = MIME::Lite->new (
Return-Path => 'bla@bla1.de',
From => 'bla@bla1.de',
To => $email,
Reply-To => 'bla@bla1.de',
Sender => 'bla@bla1.de',
Subject => 'Bestellung',
Type => 'multipart/mixed');


Im Maillog sehe ich bei falscher Adresse immer:



Mar 3 14:19:52 web6 qmail: 1078319992.877900 info msg 1206207: bytes 57191 from <anonymous@blubb2.de> qp 20829 uid 99
Mar 3 14:19:52 web6 qmail: 1078319992.882612 starting delivery 50247: msg 1206207 to local abc.de-123@abc.de
Mar 3 14:19:52 web6 qmail: 1078319992.882699 status: local 1/10 remote 0/20
Mar 3 14:19:52 web6 qmail: 1078319992.898499 delivery 50247: failure: Sorry,_no_mailbox_here_by_that_name._vpopmail_(#5. 1.1)/
Mar 3 14:19:52 web6 qmail: 1078319992.898579 status: local 0/10 remote 0/20
Mar 3 14:19:52 web6 qmail: 1078319992.906838 bounce msg 1206207 qp 20834
Mar 3 14:19:52 web6 qmail: 1078319992.906928 end msg 1206207
Mar 3 14:19:52 web6 qmail: 1078319992.907821 new msg 1206208
Mar 3 14:19:52 web6 qmail: 1078319992.907865 info msg 1206208: bytes 57715 from <> qp 20834 uid 512
Mar 3 14:19:52 web6 qmail: 1078319992.912623 starting delivery 50248: msg 1206208 to local blubb2.de-anonymous@blubb2.de
Mar 3 14:19:52 web6 qmail: 1078319992.912669 status: local 1/10 remote 0/20
Mar 3 14:19:52 web6 qmail: 1078319992.925531 delivery 50248: success: POP_user_does_not_exist,_but_will_deliver_to_/home/vpopmail/domains/blubb2.de/postmaster/did_0+0+1/



wenn ich mir die Headerinfos bei erfolgreich gesendeten Mails anschaue steht im Header immer bei Return-Path <anonymous@blubb2.de> und eigentlich sollte da <bla@bla1.de> stehen.

Hat irgendjemand eine Ahnung woran das liegen kann?

Gruß und danke
otelo

ccc
07-03-2004, 11:40
hallo otelo

stimmen die mailadressen und pfad zu sendmail in deinem script ?
handelt es sich bei der absenderadresse wirklich um eine internet existierende domain
oder schickst du als absender z.B root@linux.local ?

kannst du mit einem einfachen perl script probieren,
ob du die mail bekommst .

#!/usr/bin/perl
$mail="deine\@mailadresse";
$linux="linux\@mailadresse";
open(MAIL, "|/usr/sbin/sendmail -t");
print MAIL "to:$mail\n";
print MAIL "from:$linux\n";
print MAIL "subject:sendmail test\n";
print MAIL "hi\n\n";
print MAIL "ONLY TEST\n\n";
close(MAIL);
}
exit;

gruss
ccc

otelo
07-03-2004, 14:54
nee, Du hast mich wahrscheinlich falsch verstanden.

Das rausmailen ansich funktioniert super. Ich benutze ordentliche Mailaccounts. Der Empfänger bekommt meine Daten richtig angezeigt. Trotzdem zieht die Einstellung Return-Path oder Reply-To bei einem MailerDaemon nicht.

Was ich damit meine ist. Maile ich eine korrekte Mailadresse an, ist alles toll. Die Mail kommt an und im FROM Feld steht meine Addi, bei Reply kommt auch meine Addi also alles toll.

Maile ich aber eine falsche Adresse an, weil ich mich vertippt habe, funktioniert der FROM - Kram auch nur die ReplyAdresse bzw. der ReturnPath funktioniert nicht. Der Mailerdaemon landet nicht in meinem Postkorb sondern in anonymous@bla.de sprich in dem Postkorb der auf dem Mailserver eingerichteten Hauptdomain (nennen wir sie hier mal Bla.de)

Ich habe mir daraufhin in Outlook mal selbst eine Mail zugeschickt und auf den ersten Blick sieht alles ok aus. FROM stimmt, reply kann ich machen. Wenn ich aber unter Optionen die Headerinfos anschaue sehe ich eindeutig

RETURN-PATH=anonymous@bla.de

und das obwohl ich wie oben geschrieben
RETURN-Path -> meineemailaddi@blubb.de

vorgebe.

Irgendwas stimmt also mit der Übergabe für diese Werte nicht...

Gruß
otelo

ccc
07-03-2004, 16:52
hallo otello

ich würde sagen das problem liegt eher bei den konfigurationen
von deinem sendmail.

und quck mal bitte zusätzlich unter:

http://forums.devshed.com/t58475/s.html&highlight=Return-Path
http://www.roe.ch/spam/return-path-rewriting.xml
http://www.faqs.org/contrib/mailhelp/c176.html

gruss
ccc

otelo
07-03-2004, 16:55
ok, da gucke ich mal rein.

ich benutze übrigens den sendmail nicht, sondern habe qmail installiert, der qmail emuliert den sendmail nur. aber da gabs eigentlich bisher keine Probleme.

Brauche ich evtl. ein anderes Perl Modul?

Gruß und schonmal Danke
otelo

otelo
07-03-2004, 17:16
gleich im ersten Beitrag, den Du mir gelinked hast, habe ich einen Tipp gesehen, der mein Problem löst.

$msg->send("sendmail", "/usr/sbin/sendmail -t -oi -f $ownermail");

Ich hatte da bisher auf die standard-Einstellung vertraut, die so aussieht

$msg->send();

Dabei zieht er auch sendmail an und setzt die Parameter -t -oi -oem

Vielen Dank für Deine Tipps, nun funzt mein Script so wie es sein soll, die Daemons kommt in dem Postkorb an, der die Mails auch rausschickt....

otelo