Perdition für SMTP

CentY

Registered User
Hi zusammen,

kennt jemand einen Dienst der ähnliches leistet wie Perdition für IMAP und POP3? Nämlich einen transparenten Proxy vor den eigentlichen IMAP Servern zu haben, welcher auf Grund des Loginnamens (benutzername@server.tld) entscheidet an welchen Server weitergeleitet werden muss? Und den User dort authentifiziert, so dass der Benutzer quasi über diesen Server sendet?

Ich wäre wirklich dankbar wenn mir da jemand weiter helfen kann.

Grüße
 
Ich kenne Domains, die lösen das Problem über den Hostnamen des SMTP-Rechners (benutzer.domain.tld), so dass es leicht per DNS zu verwalten ist. Bei IMAP, etc. verfahren die nach einem ähnlichen Schema.
 
Bei SMTP-Servern bzw. MTAs im Allgemeinen hat man gegenüber einem IMAP- oder POP3-Server bzw. einem Mailstore einen großen Vorteil: Man kann einfach n zusätzliche Server einrichten und via DNS Round Robin eine einigermaßen gleichmäßige Lastverteilung erreichen.

Ein Load-Balancing Proxy wie Perdition oder nginx sind für SMTP-Server in der Regeln nicht notwendig.
 
Hi,

ich glaube es wurde nicht ganz verstanden was ich erreichen will ;)

Und zwar eben kein Roundrobin sondern ein bestimmter Benutzer muss immer auf seinem SMTP Server ankommen.
Sonst passiert nämlich z.B. folgendes wenn ich es einfach per zentralem Server mache:
user1@host1.tld schickt an user2@host1tl.de eine E-Mail der Relay Server liefert diese bei host1.tld ein. Dieser lehnt
dann die E-Mail ab wegen "Sender address rejected User not logged in".

Dieses Problem möchte ich eben umgehen. Ein zentraler SMTP für alle User scheidet wegen verschiedenen Paneln (Confixx,
Plesk, PDADMIn usw.) aus.

Danke
 
user1@host1.tld schickt an user2@host1tl.de eine E-Mail der Relay Server liefert diese bei host1.tld ein. Dieser lehnt
dann die E-Mail ab wegen "Sender address rejected User not logged in".
Das klingt für mich nach einer Fehlkonfiguration bzw. einer zu restriktiven Konfiguration.

Vorausgesetzt dein "Relay Server" ist vertrauenswürdig: Warum muss der sich überhaupt bei dem zuständigen MTA authentifizieren?

Und wenn es unbedingt sein muss, lässt sich mit http://www.postfix.org/postconf.5.html#sender_dependent_relayhost_maps, http://www.postfix.org/postconf.5.html#smtp_sasl_password_maps und http://www.postfix.org/postconf.5.html#smtp_sender_dependent_authentication sicherlich etwas basteln.
 
Last edited by a moderator:
Er muss sich authentifizerien, da der finale Host sonst auch E-Mails aus dem Internet mit gefaktem Absender einfach fressen würde.
 
Eben das lässt Postfix nicht zu. Er checkt dann trotzdem ob der User authentifiziert ist der da reinschiebt wenn es ein lokal vorhandener User ist.
 
Dann hast Du die restrictions in der falschen Reihenfolge drin!

Code:
smtpd_recipient_restrictions =
...
        permit_sasl_authenticated,
        permit_mynetworks,
...

soll vor den anderen resctrictions kommen, und schon lässt Postfix brav durch, wenn auth ok ist, oder der andere Server in my_network steht.

Grüsse
Basti
 
So nachdem es doch einige Verwirrung gab hier ein Schaubild des Setups. Eine zentrale Userdatenbank fällt aus, da die Server unterschiedliche Backends verwenden.

Der IMAP/POP weg wäre mir der Liebste für SMTP, POP und IMAP werden mit Perdition erledigt welcher folgende Sache macht:
-User connected zur Zentrale
-Username hat folgendes Format: benutzer@zielserver.de
-Perdition baut Verbindung zum zielserver.de auf und logged den Benutzer ein, mit den von ihm gesendeten Benutzernamen und Passwort

=> Keine Datenbank usw. nötig.

Ich hoffe so ist es etwas klarer.
 

Attachments

  • Mailserverproblem.jpg
    Mailserverproblem.jpg
    198.5 KB · Views: 212
Last edited by a moderator:
Schaubild gesehen, verstanden, abgehakt. Und jetzt versuche nochmal uns zu erklären, weshalb dein "zentraler Mailserver" nicht einfach E-Mails bei MX1 und MX2 abladen können soll, wenn seine IP-Adresse entsprechend freigeschaltet wurde.
 
Da kann ers ja abladen. Nur wenn die MX Server dann bei Mailserver1 usw. einliefern und der Mailserver1 kennt den Absender d.h. es ist einer von seinen Adressen kommt "Sender address rejected not logged in". Dem MX prinzipiel zu erlauben alle Nachrichten der MX anzunehmen ist ne schlechte Idee, da sonst auch Spam ankommt der von einem Benutzer auf dem System zu stammen scheint.

Deswegen Suche ich ja nach einer Lösung ohne über die MX gehen zu müssen wie eben Perdition und noch dazu Datenbank frei, da sich dass in dem Setup auf Grund der verschiedenen Architekturen, MailAgents und Datenbanktypen nicht realisieren lässt.

Stichwort wäre also Smarthost, der aber eben auf Grund des Loginnamens ein Suchen des richtigen Mailservers beginnt wie eben Perdition bei IMAP und POP.
 
Dem MX prinzipiel zu erlauben alle Nachrichten der MX anzunehmen ist ne schlechte Idee, da sonst auch Spam ankommt der von einem Benutzer auf dem System zu stammen scheint.
Dafür gäbe es immer noch die Lösung, den "zentralen Mailserver" einfach direkt bei Mailserver 1-3 einliefern zu lassen. Bei Postfix eignen sich dafür die transport_maps, bei Exim wäre ein eigener Router dafür zuständig und auch andere MTAs können das.
 
Womit wir wieder bei Datenbanken wären ;) Welcher User wo liegt. Eben dies ist nicht möglich weil sich die Datenbestände zu schnell ändern und konvertiert werden müssten usw..
 
Back
Top