E-Mails von entferntem Konto abholen

TuxEs ist soweit! Man hat endlich auf seinem neuen Linux-Rechner sein E-Mail-Konto eingerichtet und möchte auch dieses nur mit seinem Mailprogramm (zum Beispiel Mozilla Thunderbird) abrufen. Bei Freemailern (z. B. web.de, gmx.de, usw.) existiert aber auch noch ein Mailkonto, welches man ebenfalls abfragen möchte.

Dazu sollte man einen Sammeldienst einrichten, der die Mails von entfernten Konten holt und in das eigene Mail-Postfach auf dem lokalen Rechner einordnet.

Das Programm, welches wir hierzu benötigen, heißt fetchmail und wird üblicherweise über die Kommandozeile aufgerufen. Die Konfiguration geschieht über die versteckte (dotted) Textdatei “.fetchmailrc“, die sich im Verzeichnis des Benutzers befinden sollte.

Als Beispiel nehmen wird einen fiktiven User an, der ein Konto bei web.de abfragen möchte. So müsste dann der Inhalt der .fetchmailrc aussehen:

#########################################################################
# Datei   : .fetcmailrc
# Funktion: Die automatische Abholung von Mails auf entfernten
#           Servern.
#########################################################################
 
#############################
# Server und Protokoll #
#############################
 
# Domainname des Mailservers
server pop3.web.de
 
# das verwendete E-Mail Protokoll (POP, POP2, POP3, IMAP4,
# NTLM (MS Exchange Server), Kerberos).
proto pop3
 
#############################
# Benutzername und Password #
#############################
 
# Benutzername
user "ich_der_user"
 
# Password
pass "mein_geheimes_passwort"
 
#############################
# Zielpostfach / Optionen #
#############################
 
# Zielpostfach / Benutzername
to "lokaler_benutzername_auf_dem_linux_pc"
 
# Diese Option bewirkt, dass Mails auf dem Server belassen werden.
# Existiert diese Option nicht, werden alle Mails auf dem
# Quellserver gelöscht.
#keep
 
# Auch bereits im Zielpostfach gelesene Mails abholen.
fetchall
 
# Die Mails verschlüsselt vom Zielserver holen (Wenn vom Zielserver
# unterstützt, dann Port 995).
# Dieses sollte man beim Provider erfragen oder natürlich die FAQ
# lesen!
#ssl
 
#########################################################################
#
#########################################################################

Nun sollte man sich als der User einloggen, in dessen Verzeichnis die Konfigurationsdatei fetchmailrc liegt. Anschließend muss man noch durch den Aufruf von ./fetchmail den Abrufvorgang starten.

Funktioniert nun alles so wie gewünscht, kann der Parameter keep auskommentiert werden. Jetzt ist es sinnvoll, diesen Abrufvorgang automatisch zu starten. Dazu muss fetchmail als Daemon gestartet werden.

fetchmail -–deamon xxx
Der Wert xxx legt die Zeitspanne in Sekunden fest.

fetchmail -–deamon xxx --syslog -f configfile
Alternative: Der Wert xxx legt die Zeitspanne in Sekunden fest. syslog sorgt dafür, das Meldungen in das Systemlog geschrieben werden. Der Parameter “f” ermöglicht es, eine andere Konfigurationsdatei statt fetchmailrc anzugeben.

fetchmail ––quit
Dieser Aufruf beendet den Daemonmodus. Auch ein Aufruf über einen Cronjob oder der Einsatz eines Initscriptes wäre denkbar.