M
misco
Threadstarter
hier;
eMails abholen leicht gemacht
Fetchmail ist in Zusammenarbeit mit Sendmail der Partner, wenn es darum geht, eMails von verschiedenen POP3-Postfächern zusammenzutragen. Bitte beachten Sie, dass zuvor der MTA Sendmail richtig konfiguriert werden muss.
Auch hier wieder der Hinweis, dass die beschriebene Konfiguration später automatisch über die ServerTools erfolgt.
Konfiguration
Die Konfiguration gestaltet sich ganz einfach. Es ist lediglich notwendig, eine Konfigurationsdatei namens .fetchmailrc (bitte auf den Vorhergehenden Punkt achten!) im Homeverzeichnis vom Benutzer root (also in /root ) zu erstellen:
touch /root/.fetchmailrc
Da in dieser Datei die eMail-Passwörter im Klartext gespeichert werden, müssen die Zugriffsrechte auf lesen/schreiben für den Benutzer root gesetzt werden:
chmod 700 /root/.fetchmailrc
Editieren Sie nun die Datei mit einem Editor Ihres Vertrauens
.
Folgende Einträge sind dort zu machen (bitte entsprechend anpassen):
set postmaster "postmaster"
set bouncemail
set properties ""
poll pop.puretec.de protocol POP3 timeout 30
user "pt1234567-user1" password "mypasswd1" to benutzer1
user "pt1234567-user2" password "mypasswd2" to benutzer2
options fetchall warnings 3600
antispam 571 550 501 554
postconnect "/usr/sbin/sendmail -q"
Die ersten drei Zeilen beinhalten einige Standard-Vorgaben. Die dritte Zeile beschreibt, welcher Server abgefragt werden soll und das zu verwendende Protokoll. Danach kommen für jedes Postfach, dass auf diesem Server abgefragt werden soll, jeweils eine Reihe mit Angabe des Benutzers, des Passwortes und des lokalen Benutzers, an den die empfangenen eMails zugestellt werden sollen. Möchte man nun noch eMails von einem anderen Server abholen, so muss man lediglich in einer neuen Zeile einen anderen Server bestimmen. Ganz zum Schluss stehen noch einige Optionen und schließlich das Kommando, alle noch im Speicher befindlichen eMails zu verschicken. Dass heisst, mit einem Aufruf von Fetchmail mit fetchmail -a -v werden zunächst die eMails abgeholt und dann, falls vorhanden, die wartenden verschickt. Möchten Sie nun also die eMails aus Ihren Postfächern abholen bzw. die zwischengespeicherten eMails versenden, geben Sie einfach folgenden Befehl in:
fetchmail -a –v
Die Option '-v' könnte auch weggelassen werden. Sie gibt lediglich an, dass Sie sehen, was vor sich geht (verbosety level).
Abholung und Versand von eMails automatisieren
Für die meisten dürfte es ziemlich umständlich sein, jedes Mal den Befehl zum Versenden und Abholen eingeben zu müssen. Es gibt da eine sehr gute Möglichkeit, dass die eMails automatisch in einem bestimmten Zeitintervall versendet und abgeholt werden. Hierzu werden die Datein namens 'ip-up.local' und 'ip-down.local' im Verzeichnis /etc/ppp erstellt.
touch /etc/ppp/ip-up.local
touch /etc/ppp/ip-down.local
Nun müssen noch die Benutzerrechte richtig gesetzt werden:
chmod 755 /etc/ppp/ip-up.local
chmod 755 /etc/ppp/ip-down.local
Diese beiden Dateien werden automatisch nach dem Verbindungsauf- bzw. Abbau ausgeführt. In der Datei 'ip-up.local' sollte folgende Zeile stehen:
/usr/bin/fetchmail -d 200 &
Fetchmail wird hier als Dämon gestartet. Dass bedeutet, solange die Verbindung zum Internet besteht, werden regelmäßig alle 60 Sekunden die eMails abgeholt und verschickt. Das Intervall sollten Sie individuell an das Timeout für Ihre Internetverbindung anpassen, falls Sie später eine Dial-On-Demand-Lösung verwenden möchten. Ich habe bei mir ein Timeout von 180 Sekunden eingestellt. Damit auch wirklich die Verbindung beendet wird und nicht gleich wieder aufgebaut wird, muss das Intervall für Fetchmail höher sein, als 180 Sekunden.
In der Datei 'ip-down.local' wird nach Beenden der Internetverbindung der Dämon wieder beendet. Fügen Sie dazu folgende Zeile in 'ip-down.local' ein:
/usr/bin/fetchmail -q
Bei jedem Verbindungsaufbau werden jetzt automatisch sofort die eMails abgeholt und versand. Während der Verbindung wird das alle 200 Sekunden wiederholt. Bei einer normalen ISDN-Verbindung fällt dieser geringe Traffic kaum ins Gewicht, so dass Sie auch nicht merken, dass die eMails überprüft werden, während Sie im Internet surfen.
Zusätzlich zu dieser Automatisierung kann man noch z.B. tagsüber von 6.00 - 24.00 Uhr zu jeder vollen Stunde die eMails abgeholen und versenden lassen. Dies kann man ganz einfach durch einen Cron-Job erreichen, der zu diesen Zeiten ausgeführt wird. Hier genügt der ganz einfache Befehl zur Einwahl ins Internet, da bei der bestehenden Verbindung ja mindestens 1 Mal Fetchmail ausgeführt wird:
ping –c 3 www.heise.de
Einen Cron-Job kann man ganz einfach und bequem mit Webmin unter 'System - Geplante Cron Jobs' anlegen.
eMails abholen leicht gemacht
Fetchmail ist in Zusammenarbeit mit Sendmail der Partner, wenn es darum geht, eMails von verschiedenen POP3-Postfächern zusammenzutragen. Bitte beachten Sie, dass zuvor der MTA Sendmail richtig konfiguriert werden muss.
Auch hier wieder der Hinweis, dass die beschriebene Konfiguration später automatisch über die ServerTools erfolgt.
Konfiguration
Die Konfiguration gestaltet sich ganz einfach. Es ist lediglich notwendig, eine Konfigurationsdatei namens .fetchmailrc (bitte auf den Vorhergehenden Punkt achten!) im Homeverzeichnis vom Benutzer root (also in /root ) zu erstellen:
touch /root/.fetchmailrc
Da in dieser Datei die eMail-Passwörter im Klartext gespeichert werden, müssen die Zugriffsrechte auf lesen/schreiben für den Benutzer root gesetzt werden:
chmod 700 /root/.fetchmailrc
Editieren Sie nun die Datei mit einem Editor Ihres Vertrauens

Folgende Einträge sind dort zu machen (bitte entsprechend anpassen):
set postmaster "postmaster"
set bouncemail
set properties ""
poll pop.puretec.de protocol POP3 timeout 30
user "pt1234567-user1" password "mypasswd1" to benutzer1
user "pt1234567-user2" password "mypasswd2" to benutzer2
options fetchall warnings 3600
antispam 571 550 501 554
postconnect "/usr/sbin/sendmail -q"
Die ersten drei Zeilen beinhalten einige Standard-Vorgaben. Die dritte Zeile beschreibt, welcher Server abgefragt werden soll und das zu verwendende Protokoll. Danach kommen für jedes Postfach, dass auf diesem Server abgefragt werden soll, jeweils eine Reihe mit Angabe des Benutzers, des Passwortes und des lokalen Benutzers, an den die empfangenen eMails zugestellt werden sollen. Möchte man nun noch eMails von einem anderen Server abholen, so muss man lediglich in einer neuen Zeile einen anderen Server bestimmen. Ganz zum Schluss stehen noch einige Optionen und schließlich das Kommando, alle noch im Speicher befindlichen eMails zu verschicken. Dass heisst, mit einem Aufruf von Fetchmail mit fetchmail -a -v werden zunächst die eMails abgeholt und dann, falls vorhanden, die wartenden verschickt. Möchten Sie nun also die eMails aus Ihren Postfächern abholen bzw. die zwischengespeicherten eMails versenden, geben Sie einfach folgenden Befehl in:
fetchmail -a –v
Die Option '-v' könnte auch weggelassen werden. Sie gibt lediglich an, dass Sie sehen, was vor sich geht (verbosety level).
Abholung und Versand von eMails automatisieren
Für die meisten dürfte es ziemlich umständlich sein, jedes Mal den Befehl zum Versenden und Abholen eingeben zu müssen. Es gibt da eine sehr gute Möglichkeit, dass die eMails automatisch in einem bestimmten Zeitintervall versendet und abgeholt werden. Hierzu werden die Datein namens 'ip-up.local' und 'ip-down.local' im Verzeichnis /etc/ppp erstellt.
touch /etc/ppp/ip-up.local
touch /etc/ppp/ip-down.local
Nun müssen noch die Benutzerrechte richtig gesetzt werden:
chmod 755 /etc/ppp/ip-up.local
chmod 755 /etc/ppp/ip-down.local
Diese beiden Dateien werden automatisch nach dem Verbindungsauf- bzw. Abbau ausgeführt. In der Datei 'ip-up.local' sollte folgende Zeile stehen:
/usr/bin/fetchmail -d 200 &
Fetchmail wird hier als Dämon gestartet. Dass bedeutet, solange die Verbindung zum Internet besteht, werden regelmäßig alle 60 Sekunden die eMails abgeholt und verschickt. Das Intervall sollten Sie individuell an das Timeout für Ihre Internetverbindung anpassen, falls Sie später eine Dial-On-Demand-Lösung verwenden möchten. Ich habe bei mir ein Timeout von 180 Sekunden eingestellt. Damit auch wirklich die Verbindung beendet wird und nicht gleich wieder aufgebaut wird, muss das Intervall für Fetchmail höher sein, als 180 Sekunden.
In der Datei 'ip-down.local' wird nach Beenden der Internetverbindung der Dämon wieder beendet. Fügen Sie dazu folgende Zeile in 'ip-down.local' ein:
/usr/bin/fetchmail -q
Bei jedem Verbindungsaufbau werden jetzt automatisch sofort die eMails abgeholt und versand. Während der Verbindung wird das alle 200 Sekunden wiederholt. Bei einer normalen ISDN-Verbindung fällt dieser geringe Traffic kaum ins Gewicht, so dass Sie auch nicht merken, dass die eMails überprüft werden, während Sie im Internet surfen.
Zusätzlich zu dieser Automatisierung kann man noch z.B. tagsüber von 6.00 - 24.00 Uhr zu jeder vollen Stunde die eMails abgeholen und versenden lassen. Dies kann man ganz einfach durch einen Cron-Job erreichen, der zu diesen Zeiten ausgeführt wird. Hier genügt der ganz einfache Befehl zur Einwahl ins Internet, da bei der bestehenden Verbindung ja mindestens 1 Mal Fetchmail ausgeführt wird:
ping –c 3 www.heise.de
Einen Cron-Job kann man ganz einfach und bequem mit Webmin unter 'System - Geplante Cron Jobs' anlegen.