Page 1 of 1
Postfix: Relaying nur erlauben, wenn Absender stimmt
Posted: 2005-05-30 11:35
by killerhorse
Hallo,
Habe eine kurze Frage zu Postfix.
Habe auf meinem Server Postfix mit sasl installiert. Zum Ganzen Mailserver gehören noch Courier amavisdnew usw.
Das Ganze funktioniert mit Virtuellen Usern in einer MySQL Datenbank.
Bis auf Kleinigkeit läuft das Ganze perfekt:
Das Problem ist, wenn sich ein User mit seinem User und Passwort authentifiziert hat, kann er jede beliebige Absenderadresse verwenden.
Habe einige Male gelesen, dass man dagegen zumindest mit Postfix nichts machen kann.
Wenn es doch geht wäre ich für ein paar Suchbegriffe Dankbar, wenn nicht, gibt es vielleicht ein kleines zusätzliches Programm, dass überprüfen kann ob User und eMailadresse zusammenpassen und das auch mit Postfix zur Zusammenarbeit zu bringen ist?
MfG
Christian
Re: Postfix: Relaying nur erlauben, wenn Absender stimmt
Posted: 2005-05-30 12:36
by m.c.s.
Hallo,
du kannst mit "reject_unknown_sender_domain" schonmal verhindern, dass der Absender fremde Domains verwenden kann. Wie man das aber soweit einengt, dass nur "die eine" Mailadresse verwendet werden kann, weiß ich leider auch nicht.
Re: Postfix: Relaying nur erlauben, wenn Absender stimmt
Posted: 2005-05-30 16:55
by Roger Wilco
smtpd_sender_restrictions -> reject_sender_login_mismatch
Re: Postfix: Relaying nur erlauben, wenn Absender stimmt
Posted: 2005-05-30 19:26
by killerhorse
Hallo,
Danke für die Antwort.
Hab das Ganze ausprobiert. Funktioniert aus irgendeinem Grund nicht. Habe ein Testmail versucht an mich selbst zu schicken. Fehler in der mail.log:
Code: Select all
postfix/smtpd[5183]: NOQUEUE: reject: RCPT from chello084113135038.1.13.vie.surfer.at[84.113.135.38]: 553 <test@lauf-forum.at>: Sender address rejected: not owned by user test@lauf-forum.at; from=<test@lauf-forum.at> to=<test@lauf-forum.at> proto=ESMTP helo=<[192.168.0.101]>
habe zu meiner main.cf folgendes hinzugefügt: smtpd_sender_restrictions = reject_sender_login_mismatch
Wo könnte da der Fehler liegen?
MfG
Christian[/code]
Re: Postfix: Relaying nur erlauben, wenn Absender stimmt
Posted: 2005-05-30 19:39
by Roger Wilco
killerhorse wrote:Wo könnte da der Fehler liegen?
An den
smtpd_sender_login_maps.
Re: Postfix: Relaying nur erlauben, wenn Absender stimmt
Posted: 2005-05-30 21:09
by killerhorse
OK, hab ich übersehen, dass ich die auch brauche... DANKE!!!
Jetzt hab ich nur noch ein Problem:
Da ich nun ausprobieren wollte wie das Ganze vom localhost aussieht und wie ich Squirrelmail zur Zusammenarbeit bringe, ist mir folgendes aufgefallen:
Ursrünglich war Postfix ja so konfiguriert, dass von 127.0.0.1 die Mails prinzipiell angenommen werden.
Nun ist es so, dass die Mails vom localhost nur dann angenommen werden, wenn als Absender eine Adresse verwendet wird die NICHT in der Datenbank existiert. Nur wenn man sich am SMTP authentifiziert, wir nur die eigene Adresse akzeptiert.
Das ganze funktioniert, dann recht gut, wenn ich Squirrelmail so konfiguriere, dass es sich am Postausgangsserver anmeldet. Die Mails von verschiedenen cronjobs und andere Systemmails, bei denen die User üblicherweise nicht in der MySQL Datenbank vorkommen werden aber trotzdem angenommen.
Was ich aber nicht verstehe: Wenn ich über das Forum (phpBB) ein Mail mit einer Absenderadresse die in der Datenbank steht sende, dann wird diese anegenommen (obwohl da keine authentifizierung stattfindet). Ist ja auch gut so, aber warum???
MfG
Christian
Re: Postfix: Relaying nur erlauben, wenn Absender stimmt
Posted: 2005-05-30 21:13
by Joe User
SMTP != /usr/{,s}bin/sendmail
Re: Postfix: Relaying nur erlauben, wenn Absender stimmt
Posted: 2005-05-30 21:24
by killerhorse
OK, sorry überseh mal wieder die Hälfte.
Was allerdings schlimmer ist: wenn von extern ein mail von irgendwer@irgendwo kommt und an eine Adresse auf dem Server geht wird das Mail angenommen.
Wenn allerdings ein Mail von irgendeinem Mailserver an eine Adresse auf dem Server geschickt wird, der Absender aber auch eine Adresse von meinem Server ist, dann wird diese nicht angenommen.
Das kann dann zustande kommen, wenn ich z.B. an die @chello.at Adresse eines Freundes ein Mail sende, der aber ein Forwarding auf seine Mailadresse auf meinem Server eingerichtet hat. Dann kommt das Mail nämlich nicht an.
MfG
Christian
EDIT: kann ich das oben beschriebene Problem eventuell beheben indem ich reject_authenticated_sender_login_mismatch anstelle von reject_sender_login_mismatch verwende?
OK, habs mit reject_authenticated_sender_login_mismatch ausprobiert. Scheint das zu sein was ich gesucht habe jetzt funktioniert alles.
Danke für eure Hilfe