PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Externe POP3-Mailbox für mehrere interne User?



tschloss
27.03.05, 09:07
Habe einen internen Mailserver (Postfix+Cyrus IMAP) laufen, der per Fetchmail externe Mailboxen leert und intern zustellt.

Wie kann ich am geschicktesten realisieren, dass ich eine externe Box betreibe (mit verschiedenen Alisasen z.B. mike@example.com und joe@example.com), die dann per fetchmail geleert wird aber sauber auf zwei interne Boxen user.mike und user.joe verteilt wird.

Habe in fetchmail was gelesen, aber es nicht wirklich verstanden.
Procmail habe ich (glaube ich) nicht, die Auslieferung erfolgt von Postfix per lmtp an Cyrus.

Wenn das Qual ist, dann richt eich halt doch 1:1 externe Mailboxen ein.

Thx
Thomas

tschloss
27.03.05, 10:07
Das sollte es sein. Eine Abbildung auf anderslautende interne Mailboxnamen sollte damit auch gehen!


Here’s what a simple retrieval configuration for a multi-drop mailbox looks like:

poll pop.provider.net:
user maildrop with pass secret1 to golux ’hurkle’=’happy’ snark here

This says that the mailbox of account ‘maildrop’ on the server is a multi-drop box, and that messages in it should be parsed for the server user names ‘golux’, ‘hurkle’, and ‘snark’. It further specifies that ‘golux’ and ‘snark’ have the same name on the client as on the server, but mail for server user ‘hurkle’ should be delivered to client user ‘happy’.

Here’s an example of another kind of multidrop connection:

poll pop.provider.net localdomains loonytoons.org toons.org:
user maildrop with pass secret1 to * here

This also says that the mailbox of account ‘maildrop’ on the server is a multi-drop box. It tells fetchmail that any address in the loonytoons.org or toons.org domains (including subdomain addresses like ‘joe@daffy.loonytoons.org’) should be passed through to the local SMTP listener without modification. Be careful of mail loops if you do this!

tschloss
27.03.05, 17:58
Schade, es klappt doch nicht!

Fetchmail kann die Zuordnung prima nach Envelope-Adressen vornehmen, ok.
Auf dem externen Server befinden sich in der Sammelbox "box002" Nachrichten für "mike@xyz.de" und "joe@xyz.de". Diese Empfänger sind aber wohl nur im Header sichtbar, im Envelope steht wohl "box002".



.....
Received: from tjs3 (dsl-000-000-059-000.arcor-ip.net [....])
by post.webmailer.de (8.13.1/8.13.1) with ESMTP id j2RF6xbY010974
for <mike@xyz.de>; Sun, 27 Mar 2005 17:07:01 +0200 (MEST)
From: "Thomas" <tschloss@web.de>
To: <mike@xyz.de>
.....


Jetzt dachte ich, dass ich es mal mit der "no envelope" Option probieren könnte:



poll "mail.server.de" protokoll pop3: no envelope user "box002" password "pass002" to "mike"="mike-intern" options no fetchall, keep ;


Aber fetchmail kümmerst sich nicht um die "received ...for" oder "To:" Informationen aus dem Header!

Hier noch ein Auszug aus der Verbose-Session von fetchmail:


Rewritten Version is To: <mike@xyz.de> // das ist ja noch ok!?!
No local match. Forwarding to posmaster@localhost. //aber das?


Hat jmd eine Idee, wir ich fetchmail doch dazu überreden könnte?

Thx i.a.
Thomas

Elvizz
27.03.05, 18:50
Also bei mir sieht das in etwa so aus:


poll exammple.com via pop.example.com proto pop3
user "USER" with pass "PASS" is <lokaler username> here

Wobei eben USER der POP-Username ist und <lokaler username> durch den Login-Namen des Besitzers der Mailbox zu ersetzen ist. Im Beispiel oben also joe oder mike.

Grüße,
Elvizz

tschloss
27.03.05, 21:01
Das klappt bei mir auch (wobei ich nicht weiss was das "via" macht - bei mir einfach "poll <servername>...").

Aber ich habe eine Box, in der Mails nicht nur für den einen User sondern für mehrere User auflaufen (per Alias landen die alle in dieser Sammelbox).

Multidrop heisst das bei fetchmail. Ich möchte das dann aber auf dem lokalen Mailserver hinter fetchmail wieder auseinandersortieren und in die separaten lokalen IMAP Fächer einordnen.

Und da muss man halt den lokalen User vom "To:" oder einem anderen Header-Feld abhängig auswählen.

Greetz
Thomas

tschloss
28.03.05, 16:04
Habe es jetzt geschafft:

Ich verwende nun folgendes Stateemnt in der fetchmailrc

##########
poll <server> proto pop3 localdomains xyz.de: user sammelbox password geheim to * here ;
##########

Außerdem habe ich noch die Alias-Map erweitert, dass alle Zuordnungen von externen e-Mailnamen nach internen Mailusern passen.
Und im main.cf die Domains ordentlich gesetzt (was ich bisher nicht hatte; ob das hier eine Rolle spielte, weiss ich nicht).

Jetzt schickt fetchmail alle Mails aus diesem POP3-Fach an alle Adressaten aus dem To-Feld des Headers. Das führt sogar zur mehrfachen Auslieferung an verschiedene To´s auch wenn im externen Fach nur eine Mail vorhanden ist.
Es scheint auch keine Probleme damit zu geben, dass im To-Feld auch "fremde" Adressen stehen können, die an dieser Stelle natürlich nicht verarbeitet werden können/dürfen.

Also eigentlich alles im Lot!

PS: Warum die fetchmail-Direktive aber entgegen der Doku nicht mehrere explizit aufgelistete Namen akzeptiert sondern nur "*", weiss uich nicht. Sobald man in der Liste einen zweiten Namen hinzugefügt hat, erkannte es auch den ersren nicht mehr richtig. Hmmmmm!?