1944970

Den eigenen Mailserver einrichten - so geht's

13.06.2015 | 08:31 Uhr |

Ihre persönliche Korrespondenz müssen Sie nicht länger als nötig auf dem Server eines E-Mail-Anbieters liegen lassen. Ein eigener Mailserver kann den Datenschutz stark verbessern.

E-Mails empfangen Sie in der Regel über IMAP (Internet Message Access Protocol) oder POP (Post Office Protocol). Bei beiden Verfahren liegen die Nachrichten so lange auf dem Server des Mailanbieters, bis Sie sie löschen. Wenn die Mails nicht verschlüsselt sind, kann sie hier jeder lesen. Das gilt für die Server-Administratoren wie für Hacker und Geheimdienste aller Art.

Um das Risiko zu minimieren, könnten Sie jede Nachricht sofort nach dem Empfang auf dem Server löschen und nur noch lokal bevorraten. Das erscheint heute jedoch nicht mehr zeitgemäß, weil Sie die Nachrichten wahrscheinlich auch über Notebook und Smartphone abrufen möchten.

Eine interessante Alternative ist ein Mailserver im eigenen Netzwerk in Kombination mit dem Konto beim bisherigen E-Mail-Anbieter. Die Nachrichten werden beim E-Mail-Provider abgeholt und liegen dann auf dem eigenen Server. Der Zugriff kann über jedes Gerät sowohl im lokalen Netzwerk als auch über das Internet erfolgen. Für den Mailversand bleibt aber weiter der Server des Providers zuständig. Denn viele Empfänger stufen Nachrichten von IP-Adressen privater Internet-Anschlüsse automatisch als Spam ein.

Dieser Artikel stammt aus der LinuxWelt 3/2014

So klappt der Umstieg von XP zu Linux, Videoüberwachung mit Raspberry Pi einrichten, das beste Linux für jeden PC - das und mehr finden Sie in der neuen LinuxWelt 3/2014 .

1. Voraussetzungen für den eigenen Mailserver

Für einen E-Mail-Server eignet sich jedes Linux. Wir empfehlen jedoch Debian 7 („Wheezy“) oder Ubuntu 12.04 LTS. Die Systeme bieten ausgereifte Software-Pakete und sind für den Server-Einsatz besonders gut geeignet. Dieser Artikel beschreibt die Konfiguration am Beispiel von Debian 7 XFCE. Wir gehen davon aus, dass Debian bereits installiert und einsatzbereit sowie per Ethernet-Kabel mit dem Netzwerk verbunden ist.

Wenn Sie eine andere Distribution beziehungsweise Konfiguration verwenden, gehen Sie ähnlich vor. Die einzelnen Schritte und die Bezeichnungder Software-Pakete können dann jedoch abweichen.

Bitte beachten Sie: Ein Rechner, der seine Dienste auch über das Internet anbietet, ist besonderen Gefahren ausgesetzt. Regelmäßige Updates und sichere Passwörter sind hier Pflicht.

Als Hardware kommen beliebige PCs in Frage. Allerdings wirkt sich ein Server im 24-Stunden-Betrieb ungünstig auf die Stromrechnung aus. Sie sollten daher zu einem sparsamen Modell greifen oder einen Mini-PC wie Raspberry Pi oder Minix Neo verwenden. Zur Linux-Installation auf dem Minix Neo X5 lesen Sie folgenden Artikel .

So prüfen Sie, ob eine Mail-Adresse noch vorhanden ist

Netzwerkeinstellungen: Damit der Server immer über dieselbe IP-Adresse erreichbar ist, tragen Sie die Verbindungsdaten manuell in die Netzwerkkonfiguration ein.
Vergrößern Netzwerkeinstellungen: Damit der Server immer über dieselbe IP-Adresse erreichbar ist, tragen Sie die Verbindungsdaten manuell in die Netzwerkkonfiguration ein.

2. Linux für den Server-Einsatz konfigurieren

Ein Server sollte immer unter derselben IP-Adresse erreichbar sein. Das erleichtert die Konfiguration über den Fernzugriff per SSH oder den Zugriff auf den Webserver. Konfigurieren Sie daher am besten eine feste IP-Adresse. Dazu klicken Sie in der Taskleiste mit der rechten Maustaste rechts oben auf das Icon des Netzwerkmanagers und wählen dann im Menü „Verbindungsinformationen“.

Im Fenster sehen Sie die vom DHCP-Server des DSL-Routers vergebenen IPv4-Adressen. Rufen Sie über einen rechten Mausklick auf das Icon des Netzwerkmanagers „Verbindungen bearbeiten“ auf. Wählen Sie unter „Kabelgebunden“ die Netzwerkverbindung aus, klicken Sie auf „Bearbeiten“, und gehen Sie auf die Registerkarte „iPv4-Einstellungen“. Hinter „Methode“ wählen Sie den Eintrag „Manuell“. Tippen Sie unter „Adresse“ die IP-Nummer ein, die Ihnen im Fenster „Verbindungsinformationen“angezeigt wird. Unter „Netzmaske“gehört die Nummer hinter „Subnetz-Maske“, unter „Gateway“ die Nummer hinter „Vorgaberoute“, und bei „DNS-Server“ tragen Sie die IP hinter „Primärer DNS“ aus den „Verbindungsinformationen“ ein. Klicken Sie zum Abschluss auf „Speichern“.

Mailtransport mit Exim: Mit dem Befehl dpkg-reconfigure exim4-config rufen Sie auf der Kommandozeile die Exim-Konfiguration auf. Hier stellen Sie zuerst die markierte Option ein.
Vergrößern Mailtransport mit Exim: Mit dem Befehl dpkg-reconfigure exim4-config rufen Sie auf der Kommandozeile die Exim-Konfiguration auf. Hier stellen Sie zuerst die markierte Option ein.

Alternativ können Sie auch über den DSL-Router dafür sorgen, dass ein PC im Netz immer die gleiche IP erhält. Bei einer Fritzbox beispielsweise gehen Sie in der Konfigurationsoberfläche auf „Heimnetz -> Netzwerk“ und dann auf die „Bearbeiten“-Schaltfläche beim gewünschten PC. Setzen Sie dann ein Häkchen vor „Diesem Netzwerkgerät immer die gleiche IPv4-Adresse zuweisen“.

3. MTA Exim 4 unter Debian einrichten

Öffnen Sie in Debian 7 über das Anwendungsmenü und „Zubehör -> Terminal“ ein Terminal. Mit dem Befehl su und dem bei der Installation festgelegten root-Passwort verschaffen Sie sich administrative Rechte. Installieren und konfigurieren Sie den MTA (Mail Transfer Agent) Exim 4 über die Zeile

apt-get install exim4 dpkg-reconfigure exim4-config

Exim 4 ist für die Zustellung von Emails im System zuständig. Bei der menügeführten Konfiguration wählen Sie „Versand über Sendezentrale (Smarthost); Empfang mit SMTP oder Fetchmail“. „E-Mail-Name des Systems“lassen Sie leer. Bei „IP-Adressen, an denen eingehende SMTP-Verbindungen erwartet werden“ ergänzen Sie die IP-Nummer des PCs. Die Zeile sieht dann beispielsweise so aus:

127.0.0.1;::1;192.168.178.39
Mailversand konfigurieren: Exim leitet die Mails an den E-Mail-Anbieter weiter. Damit das mit jedem Gerät funktioniert, muss hier die IP-Adresse des Servers eingetragen sein.
Vergrößern Mailversand konfigurieren: Exim leitet die Mails an den E-Mail-Anbieter weiter. Damit das mit jedem Gerät funktioniert, muss hier die IP-Adresse des Servers eingetragen sein.

Unter „Weitere Ziele, für die E-Mails angenommen werden sollen“ tragen Sie nichts ein. In das Feld unter „Rechner, für die E-Mails weitergeleitet werden sollen (Relay)“ tragen Sie für unser Beispiel „192.168.178.0/24“ ein. Bei „IP-Adresse oder Rechnername der Sendezentrale für ausgehende E-Mails“ gehört die SMTP-Adresse Ihres E-Mail-Anbieters eingetragen – bei Google-Mail (Gmail) also beispielsweise smtp.gmail.com::587 . Infos zur Konfiguration des SMTP-Servers erhalten Sie von Ihrem E-Mail-Anbieter. Die nächsten beiden Fragen beantworten Sie mit „Nein“. Unter „Versandart bei lokaler E-Mail-Zustellung“ wählen Sie „Mbox-Format in /var/mail“, und die Frage „Einstellungen auf kleine Dateien aufteilen?“ beantworten Sie mit „Nein“.

Damit die SMTP-Anmeldung verschlüsselt wird, erstellen Sie mit nano /etc/exim4/exim4.conf.localmacros eine Konfigurationsdatei mit dem Inhalt MAIN_TLS_ENABLE = 1. Speichern Sie die Änderungen mit Strg-O und Enter, und verlassen Sie den Editor mit Strg-X. Mit /usr/share/doc/exim4-base/examples/exim-gencert erstellen Sie dann die nötigen SSL-Zertifikate.

Tragen Sie in die Datei „/etc/exim4/passwd.client“ die Anmeldeinfos für den SMPT-Server des Providers ein. Für Google Mail zum Beispiel in der Form

*.google.com:user@gmail.com:Passwort

Starten Sie Exim mit service exim4 restart neu. Anschließend testen Sie mit

echo "E-Mail-Test" | mail -s Test user@mail.de

die Funktion des Mailversands, wobei Sie „user@mail.de“ durch Ihre eigene Adresse ersetzen.

4. IMAP-Server für den E-Mail-Empfang einrichten

Für den Empfang kommt der IMAP-Server Dovecot zum Einsatz. Sie installieren ihn über die Zeile apt-get install dovecot-imapd . Öffnen Sie mit nano /etc/dovecot/conf.d/10-mail.conf die Konfigurationsdatei des IMAP-Servers, und gehen Sie zur Zeile, die mit „mail_location“ beginnt. Ändern Sie diese wie folgt (eine Zeile):

mail_location = mbox:~/mail:LAYOUT=maildir++:INBOX=/var/mail/%u:CONTROL=~/mail/control
Dovecot für mehrere E-Mail-Konten: Die abgebildete Zeile hinter „mail_location“ sorgt dafür, das der IMAP-Server auch Unterordner im Posteingang (Inbox) anlegen kann.
Vergrößern Dovecot für mehrere E-Mail-Konten: Die abgebildete Zeile hinter „mail_location“ sorgt dafür, das der IMAP-Server auch Unterordner im Posteingang (Inbox) anlegen kann.

Speichern Sie die Änderungen mit Strg-O und Enter und verlassen Sie den Editor mit Strg-X. Diese Konfiguration ermöglicht es, Unterordner im Posteingang anzulegen. Das erhöht die Übersicht, wenn Sie die E-Mails von mehreren Konten abholen wollen. Mit service dovecot restart starten Sie den IMAP-Server neu, damit die Änderung wirksam wird. Eine weitere Konfiguration von Dovecot ist nicht erforderlich. Sie können jetzt in einem E-Mail-Programm wie Thunderbird das neue Mailkonto nutzen. Bei der automatischen Konfiguration über „Datei -> Neu -> Existierendes E-Mail-Konto“ geben Sie die E-Mail-Adresse in der Form „user@mailserver“ an, beispielsweise te@merkur oder te@merkur.fritz.box (siehe Kasten „Host-Name und Namensauflösung“). Nach einem Klick auf „Weiter“ ändern Sie über „Manuell bearbeiten“ die SSL-Einstellung für den Postausgangs-Server (SMTP) auf „STARTTLS“ und klicken auf „Fertig“. Danach müssen Sie dieSicherheitsausnahmeregel für das selbst erstellte SSL-Zertifikat abnicken. Beim SMTP-Server können Sie auch –wie bisher – den Server des Providers eintragen, es sei denn, Sie möchten bei bestimmten Geräten, dass lokal versendete E-Mails das eigene Netzwerk nicht verlassen.

Die perfekte E-Mail-Adresse

5. Nachrichten von E-Mail-Konten abholen

Der Transport der Nachrichten vom EMail-Anbieter auf Ihren lokalen Mailserver erfolgt über das Programm Fetchmail. Die erforderlichen Tools installieren Sie als Benutzer root mit der Zeile

apt-get install fetchmail procmail
E-Mails-abholen: Die Konfiguration von Fetchmail erfolgt über die Datei „.fetchmailrc“ im Home-Verzeichnis der Benutzer. Hier tragen Sie die Verbindungsdaten für den Mailabruf beim Provider ein.
Vergrößern E-Mails-abholen: Die Konfiguration von Fetchmail erfolgt über die Datei „.fetchmailrc“ im Home-Verzeichnis der Benutzer. Hier tragen Sie die Verbindungsdaten für den Mailabruf beim Provider ein.

Anschließend muss jeder Benutzer des Mailsystems in seinem Home-Verzeichnis eine Datei mit dem Namen „.fetchmailrc“ erstellen. Ein Beispiel für Google Mail sehen Sie in der Abbildung. Die Angaben hinter „user“ und „pass“ ersetzen Sie mit den Anmeldeinformationen für Ihr Google-Mail-Konto. Das Schlüsselwort „keep“ sorgt dafür, dass die Nachrichten nur abgeholt, aber nicht gelöscht werden. Testen Sie die Konfiguration mit fetchmail-v . In Thunderbird gehen Sie dann auf das Mailkonto, wählen im Kontextmenü „Abonnieren“ und setzen ein Häkchen unter „Inbox -> Gmail“. Die abgeholten Nachrichten tauchen danach im Unterordner „Gmail“ des Posteingangs auf. Für weitere Konten kopieren Sie den Konfigurationsblock, ändern die Server und Anmeldedaten und geben hinter „~/mail/.INBOX.“ einen Namen für den Eingangsordner an. Um die Abholung zu automatisieren, rufen Sie als root crontab -e auf und tragen die Zeile

0,10,20,30,40,50 * * * * /usr/bin/fetchmail -s

ein. Fetchmail holt dann die Mails im Zehn-Minuten-Takt ab. Wenn alles zuverlässig läuft, entfernen Sie das Schlüsselwort „keep“ aus der „.fetchmailrc,“ damit die Nachrichten vom Server gelöscht werden.

6. E-Mails über einen Webbrowser abrufen

Wenn Sie Mails lieber im Browser als in einem E-Mail-Programm lesen, verwenden Sie den Webmailer Roundcube. Dazu richten Sie zuerst als root mit

apt-get install apache2 mysqlserver php5-mysql

den Webserver Apache und die Datenbank My SQL ein. Die SSL-Verschlüsselung aktivieren Sie dann mit den vier Zeilen

mkdir /etc/apache2/ssl make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem a2ensite default-ssl a2enmod ssl
Mail im Browser: Der Webmailer Roundcube bietet eine übersichtliche und gut bedienbare Oberfläche. Darüber rufen Sie die Nachrichten auch von unterwegs bequem und sicher ab.
Vergrößern Mail im Browser: Der Webmailer Roundcube bietet eine übersichtliche und gut bedienbare Oberfläche. Darüber rufen Sie die Nachrichten auch von unterwegs bequem und sicher ab.

Mit apt-get install roundcube-core roundcube-mysql installieren Sie den Webmailer. Dabei wählen Sie als Datenbank „MySQL“ und übernehmen sonst alle Voreinstellungen. In der Datei „/etc/apache2/conf.d/roundcube“ müssen Sie noch die Kommentarzeichen „#“ vor der dritten und vierten Zeile entfernen.

Starten Sie den Webserver dann mit service apache2 restart neu. Im Browser rufen Sie dann die Adresse https://servername/roundcube auf. Wie in Thunderbird müssen Sie auch hier eine Ausnahmeregel für das selbst signierte Zertifikat bestätigen. Tragen Sie Benutzernamen und Passwort ein und hinter „Server“ entweder „localhost“ oder den Domainnamen des Servers, etwa merkur.local .

Host-Name und Namensauflösung

Bei der Debian-Installation haben Sie einen Namen für den Rechner festgelegt und wurden auch nach einem Domain-Namen gefragt. Letzterer spielt in privaten Netzwerken keine Rolle, da meist der Router automatisch für die Domain-Zuweisung sorgt. Bei einer Fritzbox beispielsweise erreichen Sie einen PC mit dem Namen „merkur“ mit merkur.fritz.box oder auch merkur.local oder nur merkur . Entsprechend liefert der Befehl ping merkur auf der Kommandozeile die aktuelle IP-Nummer sowie den Host- und Domain-Namen, also in unserem Beispiel „merkur.fritz.box“.

Das funktioniert aber nicht mit allen Routern zuverlässig, dort verwenden Sie bei der Konfiguration des E-Mail-Programms besser die feste IP-Nummer des Mailservers.

Zugriff auf den Mailserver über das Internet

Standardmäßig ist kein PC oder Dienst in Ihrem lokalen Netzwerk aus dem Internet erreichbar. Die Firewall im DSL-Router blockiert jeden direkten Zugriff. Um das zu ändern, richten Sie Port-Freigaben ein. Bei einer Fritzbox gehen Sie in der Konfigurationsoberfläche ( http://fritz.box ) auf „Internet -> Freigaben“ und die Registerkarte „Portfreigaben“. Klicken Sie auf „Neue Portfreigabe“, stellen Sie „HTTP-Server“ ein, wählen Sie hinter „an Computer“ Ihren Mailserver aus, und klicken Sie auf „OK“. Danach ist der Zugriff auf den Roundcube-Webmailer über die externe IP-Adresse des Routers von überall aus möglich. Entsprechend konfigurieren Sie bei Bedarf auch eine Port-Freigabe für den Port 993 des IMAP-Servers. Hier wählen Sie hinter „Portfreigabe aktiv für“ den Eintrag „Andere Anwendungen“ aus der Liste und tippen in alle Port-Felder „993“ ein. Den SMTP-Port 25 müssen Sie nicht umleiten. Konfigurieren Sie Ihr Mailprogramm einfach mit den Standardwerten für Ihren E-Mail-Anbieter.

Damit der Server auch einen eigenen öffentlichen Domain-Namen erhält, melden Sie sich beispielsweise beim kostenlosen Dienst www.twodns.de an und erstellen einen neuen Host-Namen. Unter „Internet -> Freigaben“ tragen Sie dann bei einer Fritzbox auf der Registerkarte „Dynamic DNS“ die Zugangsdaten ein wie in der FAQ auf www.twodns.de beschrieben. Das funktioniert ähnlich auch bei den Routern anderer Hersteller. Als Fritzbox-Nutzer können Sie alternativ auch den kostenlosen AVM-Dienst www.myfritz.net verwenden.

0 Kommentare zu diesem Artikel
1944970