LinuxNetMag
Post verteilen mit fetchmail
Archiv | Home
Inhalt
   
LinuxNetMag #2

  Software
 MP3
Player
Encoder
Ripper
IDE
 Spiele
QuakeII: XQF, MODs
Action: Maelstrom, bzflag
Entwicklung
 Applikationen
Windowmaker/Gnome
TkBrief
  
 

Netzwerk

suck: News saugen
ISDN-Anrufbeantworter
Fetchmail Teil 1
ICQ-Clients
empfehlenswerte Links
  
 

Hardware

Zip-Laufwerk Teil I
SANE - Scannen
  
 

Sonstiges

Editorial
Leserbriefe-Meinungen
Mailing-Liste
Liste aller Artikel
Unterstützen Sie uns



Druckversion


  Mailbox Sie haben mehrere Mail-Accouts, oder mehrere Benutzer, die auf ihrem PC Arbeiten und alle e-mail benutzen wollen?
Oder auch wenn sie das gesamte lokale Netz mit Post aus dem Internet versorgen wollen, 
ist fetchmail das Programm, um derartige Prozesse zu automatiseren.

Automatismen

Der typische Windows Anwender ließt und schreibt seine Post mit Netscape oder IE. Mit diesen Programmen kann man dann auch die Post aus dem Internet herunterladen.
Unter Linux kann man genauso vorgehen, aber da Linux ein Mehrbenutzersystem ist, ist dieses Verfahren nicht mehr Praktikabel, sobald mehrere Personen an einen Rechner e-mail benutzen.

Einer für alle

Mit fetchmail kann man den Download der Post automatisieren. Fetchmail kann dabei für einen Rechner die Post aller Benutzer verwalten, oder sogar mit etwas weiterer Konfiguration das ganze lokale Netz (LAN) mit Post versorgen,oder für eine einzlene Person mehrere Post-Accounts verwalten.
Fetchmail ist bei den meisten Distributionen standardmäßig installiert, ansonsten muß dieses nachgeholt werden (bei S.u.S.E. das Paket fetchmail.rpm im aus dem Verzeichnis n (Netz) installieren). Nachdem man das Paket installiert hat, muß nur noch die Konfigurationsdatei angepaßt werden.
Für den Benutzer root wird die Datei .fetchmailrc angelegt, falls diese noch nicht existiert:

>> touch .fetchmailrc

und diese Datei dann entsprechend angepaßt:
 

Datei /root/.fetchmairc
#.fetchmailrc
# poll POPSERVER protocol POP3 
# user REMOTEUSERNAME to LOCAL_USERNAME 
# password REMOTEPASSWORD
#
#Erster Account
poll pop.meinpopserver.com protocol POP3 user meinmailname to meinlocalername password meinpasswort
# zweiter Account
poll pop.meinpopserver2.com protocol POP3 user meinmailname2 to meinlocalername  password merinpasswort2

In dieser Datei wird für jeden Benutzer angegeben, von wo die Post abgeholt werden soll, und an welchen Benutzer auf dem lokalen Rechner die Post weitergeleitet wird. 
Die Konfiguration sollte dabei pro Account je eine Zeile angelegt werden. 
Die Zeile beginnt mit poll, gefolgt mit dem Server im Internet, von dem die Post abgeholt werden soll. Danach spezifiziert man das Protokoll. Hierbei handelt es sich meistens um einen POP3 Server.
Mit user wird angegeben, wie der Name auf dem Pop3-Server lautet. Dies ist der Teil, der in der e-mail-Adresse vor dem "@" steht. 
Danach muß das Programm noch wissen, an welchen lokalen User die Post weitergeleitet wird. Hierfür wird hinter to der Name angegeben, mit dem sich der entsprechende User auf dem lokalen Rechner einloggt. Natürlich wird auch noch das Passwort benötigt mit dem die Post auf dem Pop3-Server geschützt ist.

Da in der Konfigurationsdatei die Passwörter unverschlüsselt abgeleg werden, darf diese Datei nur vom Root lesbar sein.  Wenn dies nicht der Fall ist, macht einen fetchmail sofort darauf aufmerksam.
Mit

>> chmod og-xrw ~/.fetchmailrc

kann man die Datei für andere Benutzer sperren.
Wenn man nun auf mehreren POP3-Server seine Post hat, ist es kein Problem mit einem weiteren Eintrag, auch von den weiteren Rechnern die Post zu holen und an den selben lokalen Benutzer weiterzuleiten.
Für weitere Benutzer auf dem lokalen System, wird einfach nur ein weiterer Eintrag in der .fetchmailrc angelegt.
Die heruntergeladene Post wird vom Programm erstmal im Verzeichnis /var/spool/mail/ zwischengespeichert. Für jeden Benutzer wird dort eine Datei angelegt, in der sich die Post ansammelt. Nun kann man mit einem beliebigen Mail-Programm seine Post lesen. Man muß nun nur als Pop3-Server den lokalen Rechner angeben (localhost oder 127.0.0.1)  Damit wird die Post statt aus dem Internet vom eigenen Rechner geladen, und man benötigt keine stehende Verbindung ins Netz.

Dämonen nehmen Arbeit ab

Nur wie startet man jetzt das Programm, um die Post herunterzuladen?
Zum ersten Testen stellt man ganz normal seine Verbindung zum Internet her, und startet dann das Programm von Hand mit dem Befehl

>> fetchmail -a

mit diesem Befehl wird die Post aus dem Internet geladen, auf diesem Server nach dem herunterkopieren gelöscht, und auf dem lokalen pop3-Server zwischengelagert.
Falls Probleme auftreten, sollte man zusätlich die Option -v benutzen, weil somit genauere Informationen über den Verbindungsaufbau geliefert werden, und man schneller den Fehler findet.
Sobald fetchmail fehlerfrei arbeitet, kann man das Programm als Deamon im Hintergrund arbeiten lassen. Dies geschieht mit dem Befehl

>> fetchmail -d 300

Dabei gibt die Zahl an, in welchen Zeitabständen in Sekunden nach neuer Post geschaut werden soll.
Da dies nur Sinn macht, wenn auch eine Internetverbindung besteht, sollte das Programm erst nach einem Verbindugsaufbau gestartet werden.
Durch einen Eintrag in die Datei /etc/ppp/ip-up kann dies erreicht werden.
Neben den anderen Befehlen, die hier ausgeführ werden, sollte auch die Befehle "fetchmail -quit" und "fetchmail -d 300" stehen, um erstmal einen möglicherweise noch laufenden fetchmail zu beenden, und danach den fetchmail in dem eigenen Intervall zu starten.
Nach Abbaud der Verbindung kann fetchmail wieder gestoppt werden, mit einem Eintrag in der Datei /etc/ppp/ip-down in der Form "fetchmail -quit"
wird dieses erreicht.
Somit startet fetchmail beim Einwählen ins Netz automatisch und beendet sich beim Auswählen. Der Mail-Transport ist somit komplett automatisiert.

Wie man nun mit fetchmail das gesamte lokale Netz versorgen kann, folgt in der nächsten Ausgabe von LinuxNetMag.


Platz für Kommentare & Fragen:
(selbst eintragen)

    -procmail - 4.9, Andreas Grund

 

 
Weitere Ausgaben Linux NetMag
[ #1 | #2 | #3 | #4 | Main ]