Emails mit fetchmail und SSL sicher abholen
Was ist fetchmail und was ist SSL?
fetchmail ist ein Linux-Konsolenprogramm, es dient zum Abholen der Emails von einem Emailserver. Es holt die Emails ab und übergibt sie dem lokalen Emailsystem. fetchmail wird meistens genutzt, um mehrere Emailserver hintereinander abzufragen, die empfangenen Emails werden dann an einen Emailverteiler (zum Beispiel: procmail) weitergeleitet.
fetchmail kann die Emails von folgenden Servern abholen (Version 5.4.0): POP2, POP3, IMAP4, MS Exchange Server (NTLM), Kerberos POP, ...
Man kann fetchmail direkt mit allen Parametern aufrufen, aber normalerweise legt man im Home-Verzeichnis die Datei .fetchmailrc an und schreibt dort alle Parameter rein.
SSL ist das Secure Sockets Layer Protocol und stammt von Netscape. Es kann:
- die übertragenen Daten versschlüsseln
- Benutzer authentifizieren
- laufende Sitzungen verifizieren
Viele Internethändler verwenden SSL, um die Benutzerdaten zu übertragen. Mit normalem HTTP kann nämlich jeder deine Kreditkartennummer mitlesen!
Das war eine (sehr) kurze Einleitung zu fetchmail und SSL. Nun kommen wir zum Vorteil, die beide zusammen bieten:
- Das Paßwort wird verschlüsselt gesendet
- Die Daten werden verschlüsselt abgeholt
Das ist eine sehr sinnvolle Funktion, leider bieten es nur wenige Emaildiensteanbieter und Provider.
GMX
GMX, der wohl größte deutsche Free-Emaildienst, stellt ab Juni 2000 diesen Service für alle Kunden bereit. GMX verwendet dafür den Port 995. Dieser Port ist der inoffizielle Port für POP3/SSL. Warum ich das erwähne, weiß jeder, der eine Firewall hat. Dort muß nämlich dieser Port freigeschaltet werden.
Installation von fetchmail mit SSL-Support
Nun wird es etwas kompliziert: Damit du fetchmail
mit SSL kompilieren kannst, braucht du OpenSSL und für OpenSSL brauchst du die zlib. Also, am besten installiert du OpenSSL von der Distribution und probierst mal, ob dein fetchmail
danach mit SSL läuft. Wie du das machst, erläutere ich weiter unten.
Für alle Kaltduscher, die direkt die Quellen kompilieren wollen:
Zuerst die zlib (verwendete Version 1.1.3 - bitte vorher README lesen und die neueste verfügbare Version nehmen):
tar xzvf zlib-1_1_3_tar.gz cd zlib-1.1.3 ./configure make test make install
dann OpenSSL (verwendete Version 0.9.5a - bitte vorher INSTALL lesen):
tar xzvf openssl-0.9.5a.tar.gz cd openssl-0.9.5a ./config make make test make install
und am Ende fetchmail (verwendete Version 5.4.0) mit der Option --with-ssl
configurieren. Die Datei INSTALL auf jeden Fall lesen, vielleicht brauchst du auch noch Support für Microsoft Exchange Server ;-)
tar xzvf fetchmail-5.4.0.tar.gz cd fetchmail-5.4.0 ./configure --with-ssl make make install
Achtung! Während des configure
sollte etwas in der Art »Enabling OpenSSL support in /usr/local/ssl« erscheinen. Nach ./configure
können einige »makedepend warnings« kommen, aber sieh genau hin: »You can ignore any makedepend error messages«, also alles in Ordnung!
Wenn bisher alles fehlerfrei lief, hast du es geschafft.
fetchmail Konfigurationsdatei
fetchmail
erwartet seine Konfigurationsdatei im Homeverzeichnis des Benutzers unter dem Namen .fetchmailrc. Die Emails bitte NICHT als root abholen, am besten einen Extra-Benutzer dafür erstellen!
Der Aufbau der Datei ist sehr einfach.
Hier mal ein Beispiel mit einem gmx.de POP-Server. Der Benutzer tux@gmx.de holt seine Emails mit SSL ab, löscht die Emails nicht (ist besser zum Testen) und gibt alle Emails an procmail
weiter. Dieser verteilt die Emails nach seinen Regeln (vieleicht schreibe ich mal was darüber). Die Konfigurationsdatei /home/tux/.fetchmailrc (Download) sieht dann so aus:
#Server und Protokoll server pop.gmx.de proto pop3 #Benutzer und Password user tux@gmx.net pass geheim #SSL und Dateien NICHT löschen ssl keep #Alle Emails an procmail geben mda /usr/bin/procmail
Nun einfach fetchmail -v
ausführen. Klappt SSL, bekommst du eine Meldung in der Art (bei gmx):
Issuer Organization: TC TrustCenter for Security in Data Networks GmbH
Andernfalls hängt fetchmail fest...
Sollte es nun funktionieren, solltest du das keep
entfernen, sonst bekommst du immer wieder die selben Emails ;-)
Eines solltest du aber noch bedenken: Du holst zwar die Emails sicher ab, aber wenn du die Email selber nicht verschüsselst (zum Beispiel mit PGP), kann die Emails trotzdem von jeden (der es will) gelesen werden! Der Cracker fängt die Email ab, bevor du sie abholst!
Hat dir der Artikel gefallen, hast du Probleme mit dem Artikel, oder hast du Fehler gefunden? Sag mir bitte Bescheid.
Quellen und weitere Doku
Eigentlich nur die Man-Pages und die zu den Programmen gelieferte Doku.
Lizenz
Dieser Artikel darf ausdrücklich kopiert und weitergegeben werden, solange die Quelle ersichtlich ist. Solltest du etwas ändern, ist dies nur erlaubt, wenn die Unterschiede zu dieser Version deutlich werden und der Autor informiert wird!