6.4Mail-Grundlagen

Aus Anwendersicht ist das Senden und Empfangen von E-Mails eine einfache Angelegenheit. Hinter den Kulissen sind die Vorgänge, die dabei stattfinden, aber nicht so trivial. Dieser Abschnitt gibt Ihnen daher einige Hintergrundinformationen zum Thema E-Mail. Noch mehr in die Tiefe geht Kapitel 35, »Postfix und Dovecot«, wo es um die Konfiguration eines eigenen Mail-Servers geht.

Wenn in diesem Kapitel von E-Mail-Clients die Rede ist, dann gehe ich davon, dass Sie Ihre E-Mails mit einem eigenen E-Mail-Programm bearbeiten möchten und nicht mit einer Weboberfläche (wie https://gmx.net oder https://mail.google.com). Beide Verfahren haben Vorteile, die sich sogar kombinieren lassen: Die Weboberfläche kann ja parallel zu einem Mail-Client verwendet werden, z.B. im Urlaub.

In diesem Kapitel stelle ich Ihnen fünf E-Mail-Clients näher vor – Thunderbird, Evolution (Gnome), Kontact bzw. KMail (KDE), Geary (Elementary OS) und Mutt. Daneben gibt es eine Reihe weiterer Programme. Für Rechner mit begrenzten Ressourcen bieten sich beispielsweise Claws Mail oder Slypheed an: Beide Programme haben ansprechende Benutzeroberflächen, kommen aber mit vergleichsweise wenig RAM aus.

Im riesigen Mail-Client-Angebot unter Linux klafft eine offensichtliche Lücke: Es gibt kaum Programme, die für IT-Laien optimiert sind. Am ehesten ist Geary für diese Zielgruppe geeignet – aber leider ist dieses Programm noch nicht ganz ausgereift.

Wenn Ihnen ein Mail-Anbieter eine E-Mail-Adresse zur Verfügung stellt, wird dieser Service auch als E-Mail-Konto oder -Account bezeichnet. Viele Leute besitzen mehrere E-Mail-Adressen, daher können die meisten E-Mail-Programme mehrere Konten verwalten. Damit Sie E-Mails von Ihrem Account lesen und neue Nachrichten versenden können, stellt Ihnen Ihr E-Mail-Provider Zugangsdaten zur Verfügung, die so ähnlich wie in Tabelle 6.3 aussehen:

Parameter

Beispiel

E-Mail-Adresse

kathrin.hofer@mailxxx.de

Postfach-Adresse für eingehende E-Mail (IMAP/POP)

imap.mailxxx.de oder pop.mailxxx.de

Server-Adresse für ausgehende E-Mail (SMTP)

smtp.mailxxx.de

Login-/Benutzername für das Postfach

khofer oder 12345678

Passwort

xxxxxxxx

Tabelle 6.3Account-Zugangsdaten mit Beispielen

Mitunter wird als Login-Name für das Postfach die gesamte E-Mail-Adresse verwendet. Bei vorwiegend für die Benutzung über einen Webbrowser konzipierten E-Mail-Accounts (z.B. GMX, Google Mail) müssen Sie möglicherweise zuerst in der Weboberfläche einige Optionen ändern, bevor eine POP- oder IMAP-Nutzung möglich ist.

Die drei Abkürzungen POP, SMTP und IMAP bezeichnen verschiedene Protokolle zur Übertragung von E-Mails zwischen Ihrem Rechner und dem E-Mail-Provider:

Während der Account-Konfiguration können Sie bei einigen E-Mail-Programmen Port-Nummern für POP, IMAP und SMTP angeben. Üblich sind die folgenden Ports:

POP:

IMAP:

SMTP:

110 (STARTTLS oder unverschlüsselt) bzw. 995 (SSL/TLS-verschlüsselt)

143 (STARTTLS oder unverschlüsselt) bzw. 993 (SSL/TLS-verschlüsselt)

25 (STARTTLS oder unverschlüsselt) bzw. 465 (SSL/TLS-verschlüsselt)

Die meisten Mail-Clients und Mail-Server unterstützen STARTTLS: Dabei beginnt die Kommunikation unverschlüsselt. Client und Server vereinbaren dann das bestmögliche Verschlüsselungsverfahren und setzen die Kommunikation am selben Port (also z.B. 25 bei SMTP) verschlüsselt fort.

Microsoft kocht bei E-Mails mit dem Exchange-Server sein eigenes Süppchen. Der Exchange-Server verwendet standardmäßig eigene Protokolle zur Kommunikation mit dem E-Mail-Client, weswegen die meisten Benutzer wohl oder übel Outlook verwenden. POP, IMAP und SMTP werden nur bei spezieller Konfiguration bzw. mit Zusatz-Software unterstützt. Das einzige Linux-Mail-Programm, das gut mit dem Exchange-Server kooperiert, ist Evolution.

Traditionell verwendet Unix bzw. Linux E-Mails auch als lokales Kommunikationsmedium. Manche Netzwerkdienste protokollieren Fehler daher nicht nur in einer Logging-Datei, sondern versenden auch eine E-Mail an root.

Derartige E-Mails werden dann in einer lokalen Datei auf dem Rechner gespeichert, häufig in /var/spool/mail/root. Die Gefahr ist groß, dass Sie derartige E-Mails nie zu sehen bekommen – und das gleich aus zweierlei Gründen: Erstens ignorieren die meisten grafischen E-Mail-Clients /var/spool/mail/loginname, und zweitens sind System-Mails meist an root adressiert, während Sie als gewöhnlicher Benutzer arbeiten.

Die Lösung für das erste Problem besteht darin, zum Lesen der lokalen E-Mails ein Programm zu verwenden, das /var/spool/mail/loginname berücksichtigt. Für diese Zwecke besonders gut geeignet ist das textbasierte Programm Mutt. Um die E-Mails zu lesen, loggen Sie sich vorübergehend als root ein (su -l oder sudo -s) und führen dann in einem Terminalfenster das Kommando mutt aus.

Noch eleganter ist es, alle an root adressierten E-Mails mit /etc/aliases in die Inbox des Benutzers umzuleiten, der normalerweise für die Administration des Rechners verantwortlich ist:

# am Ende von /etc/aliases ... root: kofler

Die geänderte Einstellung wird erst wirksam, wenn Sie das Kommando newaliases ausführen. Sie müssen aber weiterhin ein Programm verwenden, das die lokale Mailbox auswertet. Neben textbasierten Programmen wie mutt kommen hierfür auch Evolution und KMail infrage, wenn ein zusätzlicher Account entsprechend eingerichtet wird.

Alle E-Mail-Programme bieten die Möglichkeit, eingetroffene oder selbst verfasste E-Mails in Verzeichnissen zu speichern. Dabei kommt oft das mbox-Format zur Anwendung: Alle E-Mails eines Verzeichnisses werden einfach zu einer langen Textdatei verbunden. Zur Trennung zwischen den E-Mails dienen Zeilen, die mit From beginnen. Das Format ist im Internet dokumentiert, z.B. unter:

http://www.qmail.org/qmail-manual-html/man5/mbox.html

Die meisten E-Mail-Clients erzeugen neben den mbox-Dateien zusätzliche Indexdateien. Diese beschleunigen den Zugriff auf einzelne E-Mails, sind aber nicht zwischen den E-Mail-Programmen kompatibel.

Neben dem mbox-Format unterstützen manche E-Mail-Programme und die meisten E-Mail-Server auch das maildir-Format. Dabei wird jede einzelne E-Mail in einer eigenen Datei gespeichert. Eine Mailbox besteht aus allen Dateien innerhalb eines Verzeichnisses. Der offensichtliche Vorteil besteht darin, dass einzelne Nachrichten einfacher gelöscht werden können.

Lokale Mails von Windows zu Linux bringen

Unter Windows verwenden die meisten E-Mail-Clients jeweils ihr eigenes Format. Wenn Sie bisher unter Windows mit Microsoft Mail gearbeitet haben und nun unter Linux auf Thunderbird umsteigen möchten, sollten Sie einen Zwischenschritt einlegen und zuerst die Windows-Version von Thunderbird installieren. Damit können Sie nämlich Outlook-Express-E-Mails importieren. Anschließend kopieren Sie das gesamte E-Mail-Verzeichnis nach Linux. Alternativ können Sie Ihre lokalen E-Mails auch über ein ausreichend großes IMAP-Konto transferieren. Bei großen E-Mail-Archiven ist das aber ein recht zeitaufwendiger Prozess.

Viele E-Mail-Programme enthalten auch Funktionen zur Adress- und Terminverwaltung. Das ist insbesondere praktisch, um E-Mail-Adressen und andere Kontaktdaten einheitlich zu erfassen und zu verwalten. Wenn diese Daten über mehrere Programme hinweg synchronisiert werden sollen, bieten sich hierfür Google oder eine eigene ownCloud-Installation an (siehe Kapitel 36).

Signierung und Verschlüsselung von E-Mails

Für technisch versierte Personen ist es relativ einfach, E-Mails mit falschen Absenderadressen zu versenden oder von Ihnen an andere Personen versandte E-Mails zu lesen oder gar zu manipulieren. Noch immer sind viele Mail-Server so konfiguriert, dass eine unverschlüsselte Nachrichtenübertragung erlaubt ist. Aus diesem Grund sollten Sie niemals wirklich vertrauliche Daten in einer nicht verschlüsselten E-Mail versenden (z.B. eine Kreditkartennummer).

Durch die Signierung und Verschlüsselung können Sie Ihre E-Mail-Kommunikation wesentlich sicherer machen. Alle in diesem Kapitel vorgestellten E-Mail-Programme sind in der Lage, E-Mails zu signieren und zu verschlüsseln und können natürlich auch mit derart behandelten E-Mails umgehen.

Trotz der unbestrittenen Vorteile signierter bzw. verschlüsselter E-Mails werden Sie in der Praxis nur selten auf derartige E-Mails stoßen. Bequemlichkeit, die relativ komplexe Schlüsselverwaltung und zwei zueinander inkompatible Standards (PGP und S/MIME) stehen einer weiten Verbreitung im Wege.

Zum Signieren bzw. Verschlüsseln werden sogenannte Schlüssel verwendet. Ein elektronischer Schlüssel ist einfach ein langer Zahlencode.

Zum Signieren und Verschlüsseln von E-Mails werden die sogenannten asymmetrischen Verfahren eingesetzt. Jeder Schlüssel besteht daher aus zwei Teilen: aus einem geheimen Schlüssel, der normalerweise nur auf der Festplatte des Besitzers gespeichert ist, und aus einem öffentlichen Schlüssel, der z.B. im Internet publiziert wird. Das Besondere an den asymmetrischen Verfahren besteht darin, dass zum Signieren oder Verschlüsseln der eine Teil des Schlüssels verwendet wird, zur Kontrolle der Signatur bzw. zum Entschlüsseln dagegen der andere Teil des Schlüssels.

Das Signieren einer E-Mail bedeutet, dass vor dem Versenden einer Nachricht eine Prüfsumme errechnet wird. Diese Prüfsumme wird verschlüsselt. Der Empfänger kann anhand der Prüfsumme sicherstellen, dass die E-Mail tatsächlich vom angegebenen Empfänger stammt und dass sie nach dem Versenden nicht manipuliert wurde.

Wenn Sie eine E-Mail signieren, verwendet das E-Mail-Programm dazu Ihren geheimen Schlüssel. Zur Kontrolle der Signatur reicht aber der öffentliche Schlüssel aus. Das bedeutet: Nur Sie selbst können Ihre E-Mails signieren (weil nur Sie Ihren geheimen Schlüssel besitzen). Es kann aber jeder Ihre signierte E-Mail kontrollieren, weil jeder über das Internet Zugang zu Ihrem öffentlichen Schlüssel hat.

Ihre signierte E-Mail kann jeder lesen, auch wenn der Empfänger Ihren öffentlichen Schlüssel nicht kennt oder ein E-Mail-Programm ohne Signaturfunktionen verwendet (z.B. ein Webmail-Interface). In solchen Fällen wird unterhalb der E-Mail der Signaturcode angezeigt. Dieser Code behindert das Lesen der eigentlichen Nachricht nicht. Ein Empfänger ohne Signaturmöglichkeiten kann aber nicht kontrollieren, ob die E-Mail tatsächlich von Ihnen stammt.

Das Verschlüsseln einer E-Mail bedeutet, dass die E-Mail nicht im Klartext versendet wird, sondern in einer verschlüsselten Form. Niemand kann den Inhalt dieser E-Mail lesen, wenn er nicht den richtigen Schlüssel kennt, um die Verschlüsselung wieder aufzuheben.

Zum Verschlüsseln wird der öffentliche Schlüssel des Empfängers (!) verwendet. (Wenn Sie also eine verschlüsselte E-Mail an Gabi versenden möchten, müssen Sie sich zuerst den öffentlichen Schlüssel von Gabi besorgen.) Die verschlüsselte E-Mail kann anschließend nur noch durch den geheimen Schlüssel des Empfängers entschlüsselt werden. (Diesen Schlüssel hat nur Gabi.) Ihre verschlüsselte E-Mail kann nur der Empfänger lesen, der den geheimen Teil des Schlüssels besitzt, dessen öffentlicher Teil zur Verschlüsselung eingesetzt wurde. Wenn der Empfänger seinen geheimen Schlüssel verloren oder irrtümlich gelöscht hat oder wenn er ein E-Mail-Programm ohne Verschlüsselungsfunktionen verwendet, sieht er nur eine lange Liste von Zahlen und Zeichen. Die Nachricht ist dann vollkommen wertlos.

Es wäre zu einfach, wenn es zum Signieren, Verschlüsseln und zur Schlüsselverwaltung nur ein Verfahren gäbe! Etabliert haben sich vielmehr zwei Verfahren, die beide als sicher gelten:

Leider sind die beiden Verfahren zueinander inkompatibel. Eine PGP-verschlüsselte E-Mail kann nicht mit den Mitteln von S/MIME gelesen werden und umgekehrt. Es gibt zwar E-Mail-Programme, die mit beiden Verschlüsselungsmechanismen zurechtkommen, aber in diesem Fall benötigen Sie für beide Verfahren jeweils eigene Schlüssel. Außerdem kann eine E-Mail immer nur mit einem Verfahren verschlüsselt werden, nicht mit beiden. Kurz und gut: PGP bietet nach dem aktuellen Wissensstand alles, um sicher und ohne zusätzliche Kosten miteinander zu kommunizieren. Der wesentliche Vorteil von S/MIME besteht darin, dass es bei der Verwendung von qualifizierten X.509-Zertifikaten einen verbindlicheren rechtlichen Charakter hat.

Die meisten E-Mail-Clients können die zum Senden und Empfangen erforderlichen Schlüssel selbst verwalten bzw. bei Bedarf einen neuen Schlüssel erzeugen. Da die Schlüssel aber oft auch für andere Aufgaben benötigt werden, ist es zweckmäßig, die Schlüsselverwaltung losgelöst vom E-Mail-Programm durchzuführen. Gnome unterstützt Sie bei dieser Aufgabe durch das Programm Seahorse, KDE durch KGpg und Kleopatra (für S/MIME).

Die primäre Aufgabe der Schlüsselverwaltung besteht darin, die öffentlichen Teile der Schlüssel Ihrer Kommunikationspartner in einem sogenannten Schlüsselbund zu sammeln. Beim Import neuer Schlüssel müssen Sie diese »signieren«. Das bedeutet, dass Sie davon überzeugt sind, dass der importierte Schlüssel tatsächlich von der richtigen Person stammt. Sofern Sie mit PGP-Schlüsseln arbeiten, befinden sich alle Verwaltungsdateien im Verzeichnis .gnupg.