Fetchmail // Centos 7

Ruediger newsletter at schwoon.info
Fr Jun 12 22:57:12 CEST 2015


OH, das ist dann doch etwas aufwendinger, als das bekannte Fetchmail. 
Aber ich werde das mal angehen.

Vielen Dank

Am 10.06.2015 um 21:21 schrieb m00nraker-gmx:
> 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.
>
> In /etc/systemd/system wird für unser Mailkonto test at gmx.de folgende
> Datei erstellt (root:root):
>
> /etc/systemd/system/getmail-test at gmx.de.service
>
> Inhalt der Datei:
>
> [Unit]
>
> Description=getmail imap-idle for test at gmx.de
>
> Wants=postfix.service
>
> After=postfix.service
>
> [Service]
>
> User=getmail
>
> Group=getmail
>
> ExecStart=/usr/bin/getmail --getmaildir=/home/getmail/.getmail --rcfile
> rc-m00nraker at gmx.net --idle INBOX
>
> Restart=always
>
> [Install]
>
> WantedBy=multi-user.target
>
> ###############
>
> Hier sieht man den Aufruf von getmail inkl. des --idle Parameters.
> --getmaildir und --rcfile verweisen auf die unter 3) erstelle
> Config-Datei für unser Mailkonto von test at gmx.de
>
> Pfade und Namen der Dateien können natütlich frei gewählt werden. Da ich
> einige Mailkonten habe, habe ich in die Dateinamen jeweils die Mail-Adr.
> mit aufgenommen. Ebenso in den Namen des systemd-Services.
>
> Möchte man kein imap-Idle könnte man hier auch andere Parameter angeben
> oder sich für den Weg über ein cron-Job entscheiden. Siehe getmail-Doku.
>
> 5)
>
> In /etc/systemd/system müssen nun folgende Befehle zum Einrichten des
> neuen systemd-Services aufgerufen werden:
>
> Zum Einrichten des systemd-services:
>
> systemctl enable getmail-test at gmx.de.service
>
> Nun noch den service starten:
>
> systemctl start getmail-test at gmx.de.service
>
> Zur Kontrolle, ob alles läuft:
>
> systemctl status getmail-test at gmx.de.service
>
> Dort müsste active (running) stehen.
>
> Zum stoppen bzw. deaktivieren folgende Befehle verwenden:
>
> systemctl stop/disable getmail-test at gmx.de.service
>
> 6)
>
> Tipp: Falls die rc-Datei für das jeweilige ext. Postfach einen Fehler
> enthält... Anstatt getmail über systemd zu starten kann man getmail mit
> dem Paramtern dahinter auch erstmal manuel in einer Shell aufrufen und
> dort sehen, ob der Abholvorgang funktioniert. Der Verbose-Level kann in
> der rc-Datei natürlich auch erhöht werden und die Log-Dateien geben dann
> jede Menge Hinweise. Wenn alles klappt, kann der systemd-service
> eingerichtet und gestartet werden.
>
> Unbedingt auf die Dateirechte achten, so dass getmail auch auf die
> rc-datei in /home/getmail/.getmail/... zugreifen kann, denn getmail
> läuft ja als user "getmail".
>
> ---------------------
>
> Ich habe für einen Kolab-User ca. 10 ext. Postfächer, die ich per
> getmail und imap-idle abrufen möchte. Dazu habe ich also wie im obigen
> Beispiel 10 rc Dateien angelegt, mit den jeweiligen Zugangsdaten und
> Einstellungen für jedes Postfach. Dann habe ich entsprechend 10
> systemd-services eingerichtet. Sobald eine Mail im ext. Postfach
> eintrudelt, holt gemail diese sofort ab und leitet sie an den Kolab-User
> weiter. Alles läuft bei mit in einer virtuellen Proxmox-Umgebung und
> zwar rock-solid.
>
> Vielleicht kannst Du damit was anfangen.
>
> Gr. Kai
>
> Am Mittwoch, 10. Juni 2015, 11:34:47 schrieb Ruediger:
>
>  > Interessant. Getmail. Davon höre ich zum ersten mal.;) Und ja, an der
>
>  > Konfig bin ich interessiert.
>
>  >
>
>  > Relevant sind bei mir Imap Konten, deren Mails aber auch je nach
>
>  > Anwender im Postfach verbleiben müssen..
>
>  >
>
>  > Am 10.06.2015 um 09:04 schrieb m00nraker:
>
>  > > Hi. Ich hätte eine sehr gut funktionierende Lösung via. Getmail. Das
>
>  > > ganze läuft bei mir pro Mailaccount via. systemd Service mit Imap-Idle.
>
>  > > Sobald eine neue Mail in einem ext. Postfach liegt wird sie sofort
>
>  > > abgeholt und im Postfach eines Kolab-Users abgelegt. Sollte die
>
>  > > Imap-Idle Verbindung abbrechen, startet systemd den Prozess automatisch
>
>  > > neu. Funzt seit 2 Monaten einwandfrei. Auf diese Weise führe ich meinem
>
>  > > persönlichen Kolab-Konto die Mails von 10 externen
>
>  > > Postfächern zu. Und Getmail ist die bessere Alternative zu Fetchmail.
>
>  > > Bei Interesse könnte ich Dir die Konfig. dazu mailen. Aber erst später
>
>  > > heute...
>
>  > > Gr. Kai
>
>  > >
>
>  > >
> ------------------------------------------------------------------------
>
>  > > *Von:* Ruediger <newsletter at schwoon.info>
>
>  > > *Gesendet:* 10. Juni 2015 08:32:48 MESZ
>
>  > > *An:* users-de at lists.kolab.org
>
>  > > *Betreff:* Fetchmail // Centos 7
>
>  > >
>
>  > > Hallo Moin
>
>  > >
>
>  > > Mein erster Post hier.;)
>
>  > >
>
>  > > Hab mich die letzte Zeit meist auf dem engl. IRC Chanel rumgetrieben,
>
>  > > aber gelegentlich ist es auch mal angenehm in der Muttersprache Fragen
>
>  > > verfassen zu können.
>
>  > >
>
>  > > Zum Thema:
>
>  > >
>
>  > > Ich habe mich als OS für Kolab auf Centos 7 festgelegt, weil das ja
> wohl
>
>  > > die Referenzplattform der Entwickler ist.
>
>  > >
>
>  > > Soweit läuft alles ganz gut, obwohl der Apache immer wieder nach Tagen
>
>  > > ausgestiegen war, was wohl mit einem Reload des httpd durch
> logrotate zu
>
>  > > tun hat. Nach Umstellung auf "restart" statt "graceful" ist das weg,
>
>  > > obwohl das eher als Workaround zu bezeichnen ist.
>
>  > >
>
>  > > Mein aktuelles Problem ist Fetchmail. Ich treffe hier zum ersten
> mal auf
>
>  > > systemd, und finde keine funktionierende Konfig, um das als Daemon bei
>
>  > > Start des Server zu starten. Per default ist kein Service dafür
>
>  > > angelegt, was ich merkwürdig finde. Manuell aufgerufen
>
>  > > läuft das dann..
>
>  > > Aber das ist dann der zweite Workaround.;(
>
>  > >
>
>  > > Hat jemand unter Centos 7 den Fetchmail schon regulär zum laufen
>
>  > > bekommen.?
>
>  > >
>
>  > > --
>
>  > > Rüdiger
>
>  > >
> ------------------------------------------------------------------------
>
>  > >
>
>  > > users-de mailing list
>
>  > > users-de at lists.kolab.org
>
>  > > https://lists.kolab.org/mailman/listinfo/users-de
>
>  >
>
>  > _______________________________________________
>
>  > users-de mailing list
>
>  > users-de at lists.kolab.org
>
>  > https://lists.kolab.org/mailman/listinfo/users-de
>



Mehr Informationen über die Mailingliste users-de