• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Fetchmail nach Cyrus über lmtp

Status
Für weitere Antworten geschlossen.

Frankie777

Advanced Hacker
Hallo,
die Übergabe der emails an Cyrus funktionierte nicht zuverlässig, nachdem ich prefork=1 für den socket gesetzt habe, scheint es stabiler zu sein. Dennoch geht es manchmal und machmal nicht:

Vielleicht kann sich das mal einer anschauen, 5 min vorher ging es noch.

Ein Tip für ein ultimatives HowTo wäre auch hilfreich!

fetchmail: LMTP> RCPT TO:<user@/var/lib/imap/socket>
fetchmail: LMTP< 501 5.5.4 Syntax error in parameters
fetchmail: LMTP error: 501 5.5.4 Syntax error in parameters
fetchmail: LMTP listener doesn't like recipient address `user@/var/lib/imap/socket

fetchmail: SMTP< 220 linux.test.local ESMTP Postfix
fetchmail: SMTP> HELO localhost
fetchmail: SMTP< 250 linux.test.local
fetchmail: SMTP> MAIL FROM:<FETCHMAIL-DAEMON@linux.test.local>
fetchmail: SMTP< 250 Ok
fetchmail: SMTP> RCPT TO:<user>
fetchmail: SMTP< 454 <user>: Relay access denied
fetchmail: SMTP> QUIT
fetchmail: SMTP< 221 Bye
fetchmail: SMTP> RCPT TO:<user@/var/lib/imap/socket>
fetchmail: SMTP< 501 5.5.4 Syntax error in parameters
fetchmail: can't even send to user!
fetchmail: SMTP> RSET
 
OP
Frankie777

Frankie777

Advanced Hacker
Jetzt geht alles erstmal ohne SSL.
Ich hatte den fetchmaildaemon mit der Option --smtphost /var/lib/imap/socket/lmtp gestartet was aber nicht zuverlässig funktioniert hat.
Richtig ist mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp in der main.cf.
Ich hätte lieber Yast benutzen sollen anstatt zuviel in der man von fetchmail zu lesen.

Sieveshell klappt ebenfalls prima,
Smartsieve zum erstellen der Scripte funktioniert einwandfrei.
 

dermichel

Advanced Hacker
smtphost und lmtp *kopfschuettel*

ausserdem ist es besser wenn die mails erst mal durch den mta gehen als direkt an den mda zu uebergeben. viren/spamfilter kommen so garnicht erst zum einsatz.
lies dich mehr in die materie ein - das ist wesentlich komplexer als du denkst :)

den transport wuerde ich auf den deliver umstellen - weil du so mehr funktionen nutzen kannst (z.b. multidrop).
 
OP
Frankie777

Frankie777

Advanced Hacker
Du meinst ich soll die Mails erst mit deliver von FetchMail an PostFix übergeben und dann mit Postfix in Cyrus absortieren.

Ich müßte also FetchMail dazu bringen an den smtpd zu liefern.
Im Prinzip hast Du Recht, ich nehme ja auch direkt emails an und da ist es wohl sinnvoll alle gleich zu behandeln.

Sieveshell gefällt mir sehr gut, das könnte ich aber weiterhin nutzen...
 

dermichel

Advanced Hacker
an postfix werden die uebergeben wenn du als smtphost localhost und port 25 angibst.

mit deliver meinte ich den deliver von cyrus wie er in der master.cf angegeben ist.

setze die flags "DOR" in der master.cf....



main.cf:

mailbox_transport = cyrus
 
OP
Frankie777

Frankie777

Advanced Hacker
Hallo,

was meinst Du mit Flags DOR in der master.cf?

In master.cf wird auf das man master verweisen, aber außer -D für debug habe ich da keine weiteren Infos zu Flags gefunden.

Ich gebe zu, daß ich immer noch nicht richtig weitergekommen bin. Es ist in der Tat deutlich komplexer als es zuerst aussah.
 

dermichel

Advanced Hacker
master.cf:

cyrus unix - n n - - pipe
flags=DOR user=cyrus argv=/usr/lib/cyrus/bin/deliver -e -m ${extension} ${user}



main.cf:

mailbox_transport = cyrus



in der fetchmailrc gibst du localhost 25 als smtphost an.
dann werden die abgerufenen emails brav an den postfix weitergegeben.


so sollte es dann im log aussehen:

Aug 17 11:11:14 mail postfix/pipe[6283]: 419EE6E6D: to=<michael@domaine.tld>, relay=cyrus, delay=0, status=sent (mail.domaine.tld)
 
OP
Frankie777

Frankie777

Advanced Hacker
danke, das funktioniert soweit und das DOR zu pipe gehört habe ich nun auch verstanden.

nur den localhost/25 konnte ich nicht in der /etc/fetchmailrc eingeben. da hat er gemeckert.

Ich habe ihn nun in der /etc/suseconfig als option eingegeben, so daß der daemon korrekt startet.

Ein weiteres Problem war noch, daß ich die Anzahl der Prozesse auf mindestens 5 setzten mußte, das herauszufinden hat mich alleine eine Stunde gekostet...
 
Status
Für weitere Antworten geschlossen.
Oben