Fetchmail // Centos 7
m00nraker-gmx
m00nraker at gmx.net
Mi Jun 10 21:21:00 CEST 2015
Hallo Rüdiger.
Ich habe das mal einfach so in einem Texteditor runtergeschrieben und hoffe, dass kein
Fehler drin ist:
getmail als systemd-service unter CentOS 7 und Kolab 3.4
getmail project-home/documentation:
http://pyropus.ca/software/getmail/
Warum getmail und nicht fetchmail?
Siehe FAQ:
http://pyropus.ca/software/getmail/faq.html#faq-about
Abschnitt "Why did you write getmail? Why not just use fetchmail?"
Ziel:
Externe Mailpostfächer bei diversen Providern (Unitymedia, GMX, Google, Web.de) sollen
via. imap-idle per getmail abgerufen werden und die Mails einem Postfach eines Kolab-
Users zugeführt werden.
1)
getmail ist ein Python-Skript und sollte nicht mit root-Rechten laufen, sondern mit User-
Rechten. Dazu legt man folgende user:group an:
getmail:getmail
2)
Der neu erstellte User sollte über ein Home-Verz. verfügen, also z.B. /home/getmail.
Dann bitte ein neues Unterverz. für die Mail-Konten und die Logs erzeugen:
z.B. "mkdir /home/getmail/.getmail"
3)
Exemplarisch verwende ich die Mailadr. "test at gmx.de" für ein ext. Postfach, dass ich mit
getmail abrufen möchte. Der Kolab-User heisst in diesem Beispiel "kolab-
user at kolab.domain". Dazu lege ich folgende Datei an:
/home/getmail/.getmail/rc-test at gmx.de
Diese Datei hat folgenden Inhalt:
# getmail-rc für test at gmx.de
[retriever]
type = SimpleIMAPSSLRetriever
server = imap.gmx.de
username = ***
password = ***
mailboxes = ALL
[destination]
type = MDA_external
path = /usr/sbin/sendmail
arguments = ('-f', 'test at gmx.de', '-oi', 'kolab-user at kolab.domain')
[options]
verbose = 0
message_log = /home/getmail/.getmail/log/test at gmx.de.log
message_log_verbose = true
read_all = true
delete = true
delivered_to = false
received = false
################
Diese Datei muss auf den jeweiligen Provider und auf die gewünschten Einstellungen
angepasst werden. Siehe dazu die getmail-Doku. Für die Weiterleitung an Kolab/Postfix
verwende ich sendmail. Siehe "man sendmail" für Parameter-Erklärung. Sobald der
getmail-retriever eine neue Mail bekommt, wird diese per sendmail Kommando an den
lokalen Postfix weitergeleitet und in das Postfach des gewünschten Kolab-User (hier:
kolab-user at kolab.domain) einsortiert. Weiterhin wird in dieser Datei der Name der Log-
Datei festgelegt. Die Logs packe ich in das home des getmail-users, also in
/home/getmail/.getmail/log
4)
In 3) wurde für ein ext. Postfach, also für eine Mail-Adr. eine Config-Datei für getmail
angelegt. Nun könnte getmail auf Shell-Ebene manuel mit dieser Datei als Parameter
aufgerufen werden und so ein Abholvorgang manuel gestartet werden. Periodisch kann
das natürlich auch via. cron-Job gemacht werden. Ich habe mich aber für eine Lösung via.
Imap-Idle entschieden, die als systemd-service implementiert ist, d.h. getmail wird auch
nach einem System-Neustart automatisch erneut gestartet und falls die imap-idle
Verbindung abreisst, startet systemd den Vorgang automatisch neu. Das ist sehr
komfortabel.
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://lists.kolab.org/pipermail/users-de/attachments/20150610/40aa5560/attachment-0001.html>
Mehr Informationen über die Mailingliste users-de