Installation und Einrichtung

Raspberry PI als Mailserver - so geht's

Mit dem Mini-PC Raspberry Pi kann man sich seinen eigenen Mail-Server nach Hause holen. Wir zeigen, wie man ihn einrichtet und ins Internet bringt. Von Christian Immler

Mit Raspberry Pi kann man sich einen Mail-Server nach Hause holen.

© Raspberry Pi Foundation

Mit Raspberry Pi kann man sich einen Mail-Server nach Hause holen.

Wir erklären, wie Sie Raspberry Pi als Mail-Server einrichten können. Ein Mailserver zu Hause ist auf den ersten Blick für viele eine ungewohnte Vorstellung, kann aber durchaus Vorteile haben. Wer Angst vor Prism oder auch deutschen Spionagebehörden hat, lässt seine E-Mails ungern auf einem Server liegen, über den man keine Kontrolle hat. Die ideale Basis für den heimischen Mailserver ist der Raspberry Pi: Er läuft absolut lautlos ohne Festplatte oder Lüfter, hat die Größe eines Päckchens Spielkarten und begnügt sich zur Stromversorgung mit einem Handyladegerät.

Wir gehen davon aus, dass die aktuelle Version des Betriebssystems Raspbian Wheezy installiert ist. Wie die Installation genau abläuft, erklärt der Infokasten NOOBS. Verwenden Sie zur Installation eine ausreichend große Speicherkarte mit 8 oder 16 GByte, um neben dem Betriebssystem Platz für die Mailserversoftware und vor allem für die eigenen E-Mails zu haben. Sie sparen sich dann eine externe Festplatte am Raspberry Pi, die nur zusätzlich Strom verbrauchen würde.

1. Die IP-Adresse des Raspberry Pi ermitteln

Um den Raspberry Pi im eigenen Netzwerk nutzen zu können, ist es wichtig, dessenIP-Adresse zu kennen, die in der Standardkonfiguration per DHCP automatisch vomRouter übernommen wird. Geben Sie dazu auf dem Raspberry Pi in einem LXTerminalden Befehl ip addr ein. Im Bereich eth0: wird unter inet die lokale IP-Adresse desRaspberry Pi im Netzwerk angezeigt. Wenn Sie diese IP-Adresse kennen, brauchenSie am Raspberry Pi keinen Bildschirm und Tastatur mehr. Über die bereits bei derErsteinrichtung festgelegte SSH-Verbindung (Secure Shell) können Sie sich mit der Freeware Putty für Windows von einem PC per Kommandozeile auf demRaspberry Pi anmelden. 

Raspberry Pi, Shell, IP

© Hersteller

"ip addr" zeigt die IPAdresse des Raspberry Pi im lokalen Netzwerk an.

Falls Sie bei der Ersteinrichtung des Raspberry Pi den SSH-Server nicht aktiviert hatten, holen Sie das jetzt mit sudo raspiconfig nach. Legen Sie in Putty eine neue Verbindung zur IP-Adresse des Raspberry Pi an, über Port 22 und Verbindungstyp SSH. Nachdem die Verbindung aufgebaut ist, melden Sie sich auf dem Raspberry Pi mit dem Benutzernamen pi und dem Passwort raspberry an.

2. IP-Adresse im Router und Portweiterleitung festlegen

In Netzwerken mit dynamischen IP-Adressen kann sich die Adresse des Raspberry Pi unter Umständen bei einem Neustart ändern. Damit der Router nicht ständig neueAdressen an den Raspberry Pi vergibt, reservieren Sie in der Routerkonfiguration eine Adresse für den Raspberry Pi. In den meisten Fällen ist das einfacher, als direktauf dem Raspberry Pi eine feste IP-Adresse festzulegen. Die meisten Router bietendazu im Konfigurationstool im Bereich der LAN-Konfiguration die Möglichkeit, die aktuell an ein bestimmtes, über seine MACAdresse identifiziertes Gerät, vergebeneIP-Adresse festzuschreiben und in Zukunft nicht mehr neu zu vergeben.

Raspberry Pi, IP, SSH

© Herstellrr

Bietet der Router die Möglichkeit, für bestimmte Geräte DHCP-Adressen zu reservieren, erspart man es sich, die Netzwerkkonfiguration auf dem Raspberry Pi zu verändern.

Sollte es nicht möglich sein, über den Router eine IP-Adresse zu reservieren, geben Sie dem Raspberry Pi eine feste IP-Adresse innerhalb des eigenen Subnetzes, aber außerhalb des Adressbereichs, in dem der DHCP-Server IP-Adressen vergibt. Dazu braucht nur eine Konfigurationsdatei mit Root-Rechten bearbeitet zu werden, direkt auf dem Raspberry Pi mit dem komfortablen Leafpad-Editor mit dem Kommando

sudo leafpad /etc/network/interfaces

oder über SSH vom PC mit dem textbasierten Nano-Editor und dem Befehl

sudo nano /etc/network/interfaces.

In dieser Datei muss folgende Zeile, die für die DHCP-Adressierung verantwortlich ist, entfernt werden:

iface eth0 inet dhcp

Dafür müssen vier Zeilen mit einer statischen IP-Adresse, Subnetzmaske und Gateway passend zum eigenen Netzwerk eingefügt werden:

iface eth0 inet static address 192.168.0.100 netmask 255.255.255.0 gateway 192.168.0.1

Überprüfen Sie noch, ob in der Datei /etc/resolv.conf der richtige Nameserver eingetragen ist. In den meisten privaten Netzwerken übernimmt der Router diese Aufgabe. Hier muss also die gleiche IP-Adresse, wie bei gateway stehen.

3. Feste oder dynamische IP-Adressen

Damit der Mailserver von außen erreichbar ist, benötigt er am besten eine feste IP-Adresse im Internet, nicht nur im lokalen Netzwerk. Leider sind feste IP-Adressen bei deutschen Internetprovidern nur selten und teuer zu bekommen. Die großen Anbieter Telekom und Vodafone bieten feste IP-Adressen nur in Geschäftskundentarifen an. Bei Kabel Deutschland wechselt die IP-Adresse im Rhythmus von einigen Monaten, bei allen anderen Anbietern fast täglich.

Dynamische DNS-Dienste ersparen das manuelle Herausfinden und Weitergeben der eigenen IP-Adresse. Hier bekommt man einen virtuellen Servernamen. Dieser wird automatisch, üblicherweise vom Router, regelmäßig auf die derzeitige eigene IP-Adresse aktualisiert. So kann man wie bei einem echten Domainnamen im Internet immer den gleichen Namen verwenden, um einen eigenen Server trotz wechselnder IP-Adresse von außen zu erreichen.

Der bekannteste derartige Dienst DynDNS hat seine kostenlosen Angebote leider eingestellt. Kostenlose Benutzerkonten von früher laufen aber weiter beim Nachfolgedienst dyn.com. Wenn Sie hier noch ein Konto haben, ist die Wahrscheinlichkeit hoch, dass Ihr Router darüber seine IP-Adresse abgleichen kann. Haben Sie kein DynDNSBenutzerkonto, finden Sie ähnliche Angebote bei no-ip.com oder freedns.afraid.org. FritzBox-Router haben bereits einen solchen Dienst myfritz.net eingebaut.

Registrieren Sie bei einem der DDNS-Anbieter ein kostenloses Benutzerkonto und legen dabei einen virtuellen Host an, eine eindeutige Bezeichnung Ihres Servers unter einer der vom Anbieter vorgegebenen Domains. Tragen Sie diesen Hostnamen, sowie Benutzernamen und Passwort für die Aktualisierung der IP-Adresse beim DDNSDienst in Ihrer Routerkonfiguration ein. Sollte Ihr Router keinen der zurzeit kostenlosen DDNS-Anbieter unterstützen, richten Sie ein Benutzerkonto bei no-ip.com ein.

Dieser Anbieter liefert eine Software, mit der der Raspberry Pi als Server selbst den virtuellen Host aktualisieren kann. Das Programm wird als tar.gz-Archiv geliefert und enthält kein fertiges Installationspaket. Dieses muss mit einem im Archiv enthaltenen Script nach dem Entpacken mit

sudo make install

erst noch gebaut werden. Während der Einrichtung geben Sie Ihren Benutzernamen und Passwort für den no-ip Dienst an. Bei kostenlosen Benutzerkonten gibt es nur einen virtuellen Host.

Dieser wird automatisch eingetragen. Legen Sie noch ein Updateintervall fest. Die vorgeschlagenen 30 Minuten sollten in den meisten Fällen ausreichen. Zum Schluss beantworten Sie noch die Frage Do you wish to run something at successful update mit dem vorgeschlagenen No. Starten Sie nach abgeschlossener Installation den no-ip Client mit

sudo noip2

. Damit wird Ihre öffentliche IP-Adresse alle 30 Minuten bei no-ip.com aktualisiert. Der Server auf dem Raspberry Pi ist nun unter dem in der Konfiguration angegebenen Hostnamen von außen erreichbar. Jetzt kann mit der eigentlichen Installation des Mailservers begonnen werden.

4. MX-Eintrag beim Provider einrichten

Der MX-Eintrag im Domain Name System (DNS) sorgt dafür, dass E-Mails aus dem Internet auf den richtigen Mailserver gelangen. Dieser Eintrag legt fest, unter welcher IP-Adresse oder FQDN (Fully Qualified Domain Name) der Mailserver zu einer Domainzu finden ist. Um einen eigenen Mailserver zu Hause nutzen zu können, muss der Domainhoster Änderungen an den MX-Einträgen zulassen, was meist der Fall ist.

Standardmäßig ist meist ein Server mit der Subdomain mail als Mailserver für eine Domain eingetragen, dessen IP-Adresse die gleiche ist, auf die die Domain angemeldet ist. Ändern Sie in der Konfiguration Ihrer Domain auf den Seiten des Webhosters den MX-Eintrag auf Ihre feste IP-Adresse bzw. den Hostnamen, den Sie über einen DDNS-Dienst verwenden.

5. Citadel-Server auf dem Raspberry Pi installieren

Citadel ist eine Softwarelösung, die die Server für IMAP/POP3 und SMTP in einem Paket zusammen mit einer Webmail-Oberfläche enthält. Zusätzlich werden noch grundlegende Groupware-Funktionen wie Kalender, Aufgaben und Adressbuch mitgeliefert.

Da Citadel bei der Installation davon ausgeht, neben dem üblichen IPv4 auch das IPv6-Protokoll nutzen zu können und abbricht, wenn dies nicht verfügbar ist, schaltenSie das IPv6-Modukl mit

sudo modprobe ipv6

ein. Legen Sie jetzt noch mit

sudo mkdir -p /etc/citadel/netconfigs/7

ein Konfigurationsverzeichnis für Citadel an. Das funktioniert leider im Installationsscript nicht automatisch und würde sonst während der Installation zu einer Fehlermeldung führen. Danach installieren Sie das Paket citadelsuite über die Debian-Paketverwaltung:

sudo apt-get update sudo apt-get install citadel-suite

Nach dem Herunterladen der Pakete startet automatisch die dialoggeführte Ersteinrichtung. Bestätigen Sie hier im ersten Schritt mit der Vorgabe 0.0.0.0, dass Citadel auf allen Adressen auf Anfragen warten soll. Als Authentifizierungsmethode für Benutzer verwenden Sie die interne Benutzerdatenbank von Citadel, die für kleine Mailserver die am einfachsten zu konfigurierende Lösung darstellt.

Raspberry Pi, Citadel, IP

© Hersteller

Bei der Installation des Citadel-Servers muss der Adressbereich 0.0.0.0 eingetragen werden.

Im nächsten Schritt muss ein Administrator eingerichtet werden, der den Citadel-Server verwaltet. Die Benutzer des Mailservers sind unabhängig von den Linux-Systembenutzern auf dem Raspberry Pi. Legen Sie einen Benutzer admin an und geben diesem ein Passwort, das zur Überprüfung nochmals bestätigt werden muss.

Citadel beinhaltet eine eigene Webmail-Oberfläche und liefert dazu einen kleinen Webserver "Webcit" mit. Sollte auf Ihrem Server bereits ein Apache-Webserver laufen, was auf einem Raspberry Pi nur in den seltensten Fällen der Fall sein wird, kann Citadel diesen mit nutzen. Im Normalfall wählen Sie die Option Intern, um den eingebauten Webserver für die Webmail-Oberfläche von Citadel zu nutzen. Diese benötigt wie alle Webserver Portweiterleitungen für den Http-Port 80 und den Https-Port 443. Wie Sie im letzten Konfigurationsschritt die Sprache der Benutzeroberfläche einstellen, spielt leider keine Rolle, da sich Citadel wegen eines Fehlers im aktuellen Installationspaket diese und noch ein paar weitere Einstellungen nicht merkt.

Wenn das Citadel-Installationspaket bis zum Erscheinen dieses Heftes nicht verbessert wurde, müssen Sie die Konfiguration mit

sudo /usr/lib/citadel-server/setup

noch einmal manuell starten. Geben Sie hier im ersten Schritt wieder den Benutzernamen admin an, das Passwort ist bereits gespeichert. Belassen Sie den Linux-Benutzernamen citadel in der Vorgabeeinstellung und tragen Sie bei der Listeningaddress wieder 0.0.0.0 ein. Die weiteren Einstellungen belassen Sie auf den gespeicherten Vorgabewerten. Danach wird der Citadel-Server automatisch neu gestartet.

6. Mailserver administrieren

Dank der mitgelieferten Weboberfläche ist die Administration des Citadel-Servers von jedem PC über einen Browser möglich. Der auf dem Raspberry Pi vorinstallierte Midori-Browser wird von Citadel nicht unterstützt. Geben Sie auf einem PC im lokalen Netzwerk die netzinterne IP-Adresse des Raspberry Pi in der Adresszeile des Browsers ein, erscheint das Anmeldeformular auf dem Citadel-Server.

Melden Sie sich hier als Benutzer admin mit dem bei der Konfiguration festgelegten Passwort an, schalten Sie links oben die Sprache der Benutzeroberfläche auf Deutsch um und wählen als Erstes im Menü Verwaltung. Wählen Sie im Systemverwaltungsmenü die Option Domänennamens- und Internetmail- Konfiguration. Hier tragen Sie ganz oben bei Aliase für diese Maschine Ihre Domain ein, deren Mailserver Sie gerade einrichten.

Voraussetzung, dass die E-Mails auch wirklich zugestellt werden ist, dass der MX-Eintrag beim Domainverwalter funktioniert. Wählen Sie danach im Bereich Benutzer verwalten die Option Benutzer bearbeiten/löschen/anlegen und legen dort einen neuen Benutzer an. Dessen E-Mail-Adresse ergibt sich aus dem gewählten Benutzernamen und dem Domainnamen. Geben Sie dem Benutzer ein Passwort und schalten den Schalter Erlaubnis, Internet-Email zu senden ein.

7. Mailserver per Webmail nutzen

Citadel liefert eine eigene Webmail-Oberfläche mit, über die Sie von jedem PC per Browser auf Ihre E-Mails zugreifen können. Innerhalb des eigenen Netzwerkes gebenSie die IP-Adresse des Raspberry Pi in die Adresszeile eines Browser sein, außerhalbdes eigenen Netzwerkes verwenden Sie die feste IP-Adresse oder den DDNS-NamenIhres Routers.

Dazu muss die Portweiterleitung auf den Raspberry Pi geschaltet sein. Melden Sie sich jetzt mit einem der zuvor angelegten Benutzernamen an und schaltenoben links die Sprache wieder auf Deutsch. Die Oberfläche sieht für ,normale' Benutzerähnlich aus, es stehen nur keine Verwaltungsfunktionen zur Verfügung. KlickenSie auf Posteingang, sehen Sie Ihre E-Mails, können diese lesen und beantworten.Der Citadel-Mailserver kann auch dazu genutzt werden, E-Mails von anderen POP3-Servern abzuholen und bereitzustellen. Auf diese Weise lassen sich E-Mail-Adressenüber Webmail nutzen, die sonst diese Möglichkeit nicht bieten.

Wählen Sie dazu im Bereich Erweitert die Option Diesen Raum bearbeiten oder löschen und klicken auf der nächsten Seite auf Sammeldienste. Hier tragen Sie POP3-Server und die entsprechenden Zugangsdaten ein, von denen E-Mails in regelmäßigen Abständen abgeholt werden sollen. Schalten Sie Mails auf dem Server belassen aus, werden die EMails auf dem Originalserver beim Abholen gelöscht. Damit umgehen Sie das Problemüberlaufender Postfächer bei kostenlosen Mailanbietern.

Citadel, Webmail, Server

© Hersteller

Dank der mitgelieferten Weboberfläche ist die Administration von jedem PC über einen Browser möglich.

8. Mailkonto auf dem PC einrichten

Citadel stellt einen vollwertigen IMAP-Server zur Verfügung, den Sie in E-Mail- Programmen wie z.B. Thunderbird auf PCs im lokalen Netzwerk nutzen können.Allerdings versagen die automatischen Einrichtungsassistenten für neue Konten. Siemüssen das E-Mailkonto also manuell anlegen. Geben Sie als IMAP-Servernamen die lokale IP-Adresse des Raspberry Pi und den Port 143 an, als Benutzernamen und Passwort verwenden Sie die Zugangsdaten, die Sie in Citadel festgelegt haben. Der SMTP-Server hat die gleiche IP-Adresse und nutzt auch die gleichen Zugangsdaten.

9. Mailkonto auf dem Smartphone einrichten

Unterwegs können Sie vom Smartphone auf Ihren Mailserver zu Hause zugreifen.Richten Sie dazu auf Android-Smartphones in der vorinstallierten E-Mail-App, nicht zuverwechseln mit der GMail-App manuell ein neues Konto ein. Wählen Sie den KontotypIMAP und geben als Servernamen Ihre feste IP-Adresse zu Hause bzw. denDDNS-Namen ein. Durch die Verwendung von IMAP sehen Sie auf dem Smartphonedie gleichen Mails, wie auf den PCs im eigenen Netzwerk. Auf dem PC gelöschte Mailserscheinen auf dem Smartphone ebenfalls nicht mehr. Von unterwegs gesendete EMailsstehen im IMAP-Ordner Sent items auch auf dem PC zur Verfügung.

FRANZIS Kooperation

Franzis Raspberry Pi Maker Kit
SHARPEN projects professional

Mehr zum Thema

Der Test zu Outlook.com ist vorbei, das Portal geht in den Betrieb. Für Hotmail-Nutzer gibt es Updates.