So führen Sie Ihren eigenen Mail-Server mit Mail-in-a-Box unter Ubuntu 14.04 aus

Einführung

Mail-in-a-Box ist ein Open-Source-Softwarepaket, mit dem Sie Ihren Ubuntu-Server auf einfache Weise in eine Full-Stack-E-Mail-Lösung für mehrere Domänen verwandeln können.

Mail-in-a-Box verwendet zur Sicherung des Servers Fail2ban und ein SSL-Zertifikat (standardmäßig selbstsigniert). Es konfiguriert automatisch eine UFW-Firewall mit allen erforderlichen offenen Ports. Zu den Antispam- und anderen Sicherheitsfunktionen zählen Graylisting, SPF, DKIM, DMARC, opportunistisches TLS, starke Chiffren, HSTS und DNSSEC (mit DANE TLSA).

Mail-in-a-Box wurde entwickelt, um SMTP, IMAP / POP, Spam-Filter, Webmail und sogar DNS als Teil seiner All-in-One-Lösung zu verarbeiten. Da der Server selbst Ihr DNS verwaltet, erhalten Sie eine für E-Mails optimierte Standard-DNS-Lösung. Grundsätzlich bedeutet dies, dass Sie anspruchsvolle DNS-Einträge für Ihre E-Mail erhalten (einschließlich SPF- und DKIM-Einträge), ohne diese manuell recherchieren und einrichten zu müssen. Sie können Ihre DNS-Einstellungen später nach Bedarf anpassen, die Standardeinstellungen sollten jedoch für die meisten Benutzer, die ihre eigenen E-Mails hosten, sehr gut funktionieren.

Dieses Tutorial zeigt, wie Sie Mail-in-a-Box auf einem DigitalOcean Droplet einrichten, auf dem Ubuntu 14.04 x86-64 ausgeführt wird.

Voraussetzungen

Mail-in-a-Box legt besonderen Wert auf die verfügbaren Ressourcen. Insbesondere erfordert es:

  • Ein Ubuntu 14.04 x86-64 Droplet

  • Der Server muss mindestens 768 MB RAM haben (1 GB empfohlen)

  • Stellen Sie sicher, dass der Server gemäß den Anweisungen in this tutorial eingerichtet wurde, einschließlich des Hinzufügens eines Sudos Benutzer und Kennwort deaktivieren SSH-Zugriff für den Root-Benutzer (und möglicherweise alle Benutzer, wenn Ihre SSH-Schlüssel eingerichtet sind)

  • Bei der Einrichtung des DigitalOcean Droplets sollte der Name auf ** gesetzt werden. Das Festlegen des Hostnamens wird später in diesem Lernprogramm erläutert

  • Wir werden später ausführlicher darauf eingehen, aber Ihr Domain-Registrar muss das Festlegen benutzerdefinierter Nameserver und Leimdatensätze unterstützen, damit Sie Ihr eigenes DNS auf Ihrem Droplet hosten können. Der Begriff vanity nameservers wird häufig verwendet

  • (Optional) Kaufen Sie ein SSL certificate, um es anstelle von zu verwenden selbstsignierte; Dies wird für Produktionsumgebungen empfohlen

Bei der RAM-Anforderung wird das Installationsskript mit der folgenden Ausgabe abgebrochen, wenn die RAM-Anforderung nicht erfüllt ist:

ErrorYour Mail-in-a-Box needs more memory (RAM) to function properly.
Please provision a machine with at least 768 MB, 1 GB recommended.
This machine has 513 MB memory

Stellen Sie vor dem Starten sicher, dass Sie einen Ubuntu-Server mit 1 GB RAM haben.

In diesem Artikel wird davon ausgegangen, dass die Domain, für die Sie einen E-Mail-Server einrichten, ** ist. Von Ihnen wird natürlich erwartet, dass Sie dies durch Ihren tatsächlichen Domainnamen ersetzen.

Schritt 1 - Konfigurieren Sie den Hostnamen

In diesem Schritt erfahren Sie, wie Sie den Hostnamen richtig festlegen, sofern er noch nicht festgelegt ist. Dann ändern Sie die Datei "+ / etc / hosts +" entsprechend.

Von nun an wird davon ausgegangen, dass Sie in Ihrem DigitalOcean-Konto angemeldet sind und auch als sudo-Benutzer über SSH beim Server angemeldet sind.

ssh

Offiziell wird empfohlen, den Hostnamen Ihres Servers auf "++" zu setzen. Dies sollte auch der Name des Droplets sein, wie er auf Ihrem DigitalOcean-Dashboard angezeigt wird. Wenn der Name des Droplets nur auf den Domänennamen festgelegt ist, benennen Sie ihn um, indem Sie auf den Namen des Droplets und dann auf * Einstellungen> Umbenennen * klicken.

Nachdem Sie den Namen des Droplets wie empfohlen festgelegt haben, überprüfen Sie, ob er mit dem übereinstimmt, was in der Datei "+ / etc / hostname +" angezeigt wird, indem Sie den folgenden Befehl eingeben:

hostname

Die Ausgabe sollte ungefähr so ​​lauten:

Output

Wenn die Ausgabe nicht mit dem Namen übereinstimmt, der auf Ihrem DigitalOcean-Dashboard angezeigt wird, korrigieren Sie ihn, indem Sie Folgendes eingeben:

sudo echo "" > /etc/hostname

Schritt 2 - Ändern Sie die Datei / etc / hosts

Die Datei "+ / etc / hosts +" muss geändert werden, um den Hostnamen mit der IP-Adresse des Servers zu verknüpfen. Um es zu bearbeiten, öffnen Sie es mit nano oder Ihrem Lieblingseditor mit:

sudo nano /etc/hosts

Ändern Sie die IPv4-Adressen so, dass sie lauten:

/ etc / hosts

127.0.0.1

Sie können die ++ Zeile genau kopieren. Verwenden Sie in der zweiten Zeile Ihre eigene IP-Adresse und Domain.

Speichern und schließen Sie die Datei.

Schritt 3 - Erstellen Sie Klebeprotokolle

Es ist zwar möglich, dass ein externer DNS-Dienst, wie der von Ihrem Domain-Registrar bereitgestellte, alle DNS-Auflösungen für den Server verarbeitet, es wird jedoch dringend empfohlen, die DNS-Zuständigkeiten an den Mail-in-a-Box-Server zu delegieren.

Das bedeutet, dass Sie bei Verwendung von Mail-in-a-Box klebende Datensätze einrichten müssen. Die Verwendung von Leimdatensätzen erleichtert die sichere und korrekte Einrichtung des Servers für E-Mails. Bei dieser Methode ist es sehr wichtig, dass alle DNS-Verantwortlichkeiten an den Mail-in-a-Box-Server delegiert werden, auch wenn eine Website mit der Zieldomäne aktiv ist.

Das Einrichten von Leimeinträgen (auch als private Nameserver, vanity Nameserver und child Nameserver bezeichnet) muss bei Ihrem Domain-Registrar durchgeführt werden.

Um einen Leimsatz anzulegen, müssen folgende Aufgaben erledigt werden:

  1. Stellen Sie die Leimrekorde selbst ein. Dazu müssen benutzerdefinierte Nameserver-Adressen erstellt werden, die den vollständig qualifizierten Hostnamen des Servers sowie die Präfixe * ns1 * und * ns2 * mit seiner IP-Adresse verknüpfen. Diese sollten wie folgt lauten:

    • * ns1.box. *

    • * ns2.box. *

  2. Übertragen Sie die DNS-Zuständigkeiten auf den Mail-in-a-Box-Server.

    • * NS ns1.box. *

    • * NS ns2.box. *

    • Beispiel: Namecheap *

Melden Sie sich zunächst beim Konto Ihres Domain-Registrars an. Wie das Konto-Dashboard Ihres Domain-Registrars aussieht, hängt vom verwendeten Domain-Registrar ab. In diesem Beispiel wird Namecheap verwendet. Die in diesem Lernprogramm verwendeten Schritte und Bilder sind also genau so, wie Sie sie finden, wenn Sie über ein Namecheap-Konto verfügen. Wenn Sie einen anderen Registrar verwenden, wenden Sie sich an den technischen Support oder lesen Sie die Knowledgebase, um zu erfahren, wie Sie einen Leimdatensatz erstellen.

Suchen Sie nach der Anmeldung eine Liste der von Ihnen verwalteten Domänen und klicken Sie auf die Zieldomäne. Dies ist derjenige, den Sie zum Einrichten des Mail-Servers verwenden werden.

Suchen Sie nach einem Menüelement, mit dem Sie die Adressinformationen des Nameservers ändern können. Auf dem Namecheap-Dashboard heißt dieses Menüelement * Nameserver-Registrierung * in der Menükategorie * Erweiterte Optionen *. Sie sollten eine Schnittstelle erhalten, die wie folgt aussieht:

image: http: //i.imgur.com/HGGLt7q.png [Ändern der Nameserver]

Wir richten zwei Leimsätze für den Server ein:

  • **

  • **

Da nur ein benutzerdefiniertes Feld bereitgestellt wird, müssen diese nacheinander konfiguriert werden. Geben Sie, wie in der Abbildung unten gezeigt, ** ein, wobei die Nummer * 1 * angezeigt wird, und geben Sie dann die IP-Adresse des Mail-in-a-Box-Servers in das Feld IP-Adresse ein (angegeben durch die Nummer * 2 *). Klicken Sie abschließend auf die Schaltfläche * Nameserver hinzufügen *, um den Datensatz hinzuzufügen (Nummer * 3 *).

Wiederholen Sie diesen Vorgang für den anderen Datensatz und achten Sie darauf, ** zusammen mit demselben Domainnamen und derselben IP-Adresse zu verwenden.

Suchen Sie nach dem Erstellen beider Datensätze nach einem anderen Menüeintrag mit der Aufschrift * DNS an Webhost übertragen *. Sie sollten ein Fenster erhalten, das genauso aussieht wie das im Bild unten gezeigte. Wählen Sie die benutzerdefinierte DNS-Option aus und geben Sie die ersten beiden Felder ein:

  • **

  • **

image: http: //i.imgur.com/LmXg3ZW.png [Benutzerdefiniertes DNS]

Klicken Sie auf, um die Änderungen zu übernehmen.

Die Weitergabe von Änderungen an DNS dauert einige Zeit. Die Übertragung der Änderungen an der Testdomäne konnte bis zu 24 Stunden dauern, dauerte jedoch nur etwa 15 Minuten.

Sie können überprüfen, ob die DNS-Änderungen verbreitet wurden, indem Sie https://www.whatsmydns.net [whatsmydns.net] besuchen. Suchen Sie nach den * A * - und * MX * -Datensätzen der Zieldomäne. Stimmen sie mit den Einstellungen in diesem Schritt überein, können Sie mit Schritt 4 fortfahren. Führen Sie andernfalls diesen Schritt erneut aus oder wenden Sie sich an Ihren Registrar, um Unterstützung zu erhalten.

Schritt 4 - Mail-in-a-Box installieren

In diesem Schritt führen Sie das Skript aus, um Mail-in-a-Box auf Ihrem Droplet zu installieren. Das Mail-in-a-Box-Installationsskript installiert jedes Paket, das zum Ausführen eines vollständigen E-Mail-Servers erforderlich ist. Sie müssen also nur einen einfachen Befehl ausführen und den Anweisungen folgen.

Angenommen, Sie sind noch am Server angemeldet, wechseln Sie in Ihr Ausgangsverzeichnis:

cd ~

Mail-in-a-Box installieren:

curl -s https://mailinabox.email/bootstrap.sh | sudo bash

Das Skript fordert Sie mit der einleitenden Meldung in der folgenden Abbildung auf. Drücken Sie + ENTER.

image: http: //i.imgur.com/rwyVRUO.png [Mail-in-a-Box-Installation]

Sie werden nun aufgefordert, die erste E-Mail-Adresse zu erstellen, mit der Sie sich später beim System anmelden. Sie können ** oder eine andere E-Mail-Adresse in Ihrer Domain eingeben. Akzeptieren oder ändern Sie die vorgeschlagene E-Mail-Adresse und drücken Sie die Eingabetaste. Danach werden Sie aufgefordert, ein Kennwort für das E-Mail-Konto anzugeben und zu bestätigen.

Bild: http: //i.imgur.com/Y2MHRk0.png [Ihre E-Mail-Adresse]

Nach dem Einrichten der E-Mail werden Sie aufgefordert, den Hostnamen des Servers zu bestätigen. Es sollte mit dem in Schritt 1 festgelegten übereinstimmen. In diesem Beispiel ist dies **. Drücken Sie + ENTER.

image: http: //i.imgur.com/LGHOcar.png [Hostname]

Als Nächstes werden Sie aufgefordert, Ihr Land auszuwählen. Wählen Sie es aus, indem Sie mit den Pfeiltasten nach oben oder unten scrollen. Drücken Sie + ENTER, nachdem Sie die richtige Wahl getroffen haben.

Bild: http: //i.imgur.com/6WxmdC3.png [Ländercode]

Irgendwann erhalten Sie folgende Eingabeaufforderung:

OutputOkay. I'm about to set up  for you. This account will also have access to the box's control panel.
password:

Geben Sie ein Kennwort für das Standard-E-Mail-Konto an, das auch das Standard-Administratorkonto für die Weboberfläche ist.

Nachdem die Installation erfolgreich abgeschlossen wurde, sollte eine Ausgabe nach der Installation angezeigt werden, die Folgendes enthält:

Outputmail user added
added alias [email protected] (=> [email protected])
added alias [email protected] (=> [email protected])
added alias [email protected] (=> [email protected])
updated DNS: example.com
web updated

alias added
added alias [email protected] (=> [email protected])
added alias [email protected] (=> [email protected])


-----------------------------------------------

Your Mail-in-a-Box is running.

Please log in to the control panel for further instructions at:

https:///admin

You will be alerted that the website has an invalid certificate. Check that
the certificate fingerprint matches:

1F:C1:EE:C7:C6:2C:7C:47:E8:EF:AC:5A:82:C1:21:67:17:8B:0C:5B

Then you can confirm the security exception and continue.

Schritt 5 - Melden Sie sich beim Mail-in-a-Box-Dashboard an

Jetzt melden Sie sich bei der Verwaltungsoberfläche von Mail-in-a-Box an und lernen Ihren neuen E-Mail-Server kennen. Verwenden Sie die in der Ausgabe nach der Installation angegebene URL, um auf die Administratoroberfläche zuzugreifen. Das sollte sein:

  • + https: /// admin # +

Da HTTPS und ein selbstsigniertes Zertifikat verwendet wurden, wird in Ihrem Browserfenster eine Sicherheitswarnung angezeigt. Sie müssen eine Sicherheitsausnahme erstellen. Wie dies geschieht, hängt vom verwendeten Browser ab.

Wenn Sie beispielsweise Firefox verwenden, wird ein Browserfenster mit der im nächsten Bild gezeigten Warnung angezeigt.

Um das Zertifikat zu akzeptieren, klicken Sie auf die Schaltfläche * Ich verstehe die Risiken * und dann auf die Schaltfläche * Ausnahme hinzufügen *.

image: http: //i.imgur.com/oSERTMV.png [Die Verbindung ist in Firefox nicht vertrauenswürdig]

Im nächsten Bildschirm können Sie überprüfen, ob der Fingerabdruck des Zertifikats mit dem in der Ausgabe nach der Installation übereinstimmt, und dann auf die Schaltfläche * Confirm Security Exception * (Sicherheitsausnahme bestätigen) klicken.

image: http: //i.imgur.com/jvRbbqX.png [Sicherheitsausnahme in Firefox hinzufügen]

Melden Sie sich nach dem Erstellen der Ausnahme mit dem Benutzernamen und dem Kennwort des während der Installation erstellten E-Mail-Kontos an. Beachten Sie, dass der Benutzername die vollständige E-Mail-Adresse ist, z. B. "+ contact @ +".

Wenn Sie sich anmelden, wird eine Systemstatusprüfung eingeleitet. Mail-in-a-Box überprüft, ob alle Aspekte des Servers, einschließlich der Leimdatensätze, korrekt konfiguriert wurden. Wenn dies zutrifft, sollte ein Meer von grünem (und gelblich-grünem) Text angezeigt werden, mit Ausnahme des Teils, der sich auf SSL-Zertifikate bezieht, die in Rot angezeigt werden. Möglicherweise wird auch eine Meldung zu einem Neustart angezeigt, um die Sie sich kümmern können.

Wenn die einzigen roten Texte aufgrund von SSL-Zertifikaten angezeigt werden, herzlichen Glückwunsch! Sie haben nun erfolgreich einen eigenen Mailserver mit Mail-in-a-Box eingerichtet.

Wenn Sie diesen Abschnitt erneut aufrufen möchten (z. B. nachdem Sie auf die Weitergabe von DNS gewartet haben), finden Sie ihn unter * System> Statusprüfungen *.

Schritt 6 - Auf Webmail zugreifen und Test-E-Mail senden

Um auf die Webmail-Oberfläche zuzugreifen, klicken Sie in der oberen Navigationsleiste auf * Mail> Anweisungen * und rufen Sie die auf dieser Seite angegebene URL auf. Es sollte ungefähr so ​​aussehen:

  • + https: /// mail +

Melden Sie sich mit der E-Mail-Adresse (einschließlich des Teils @example.com) und dem Kennwort an, die Sie zuvor eingerichtet haben.

Mail-in-a-Box verwendet Roundcube als Webmail-App. Versuchen Sie, eine Test-E-Mail an eine externe E-Mail-Adresse zu senden. Antworten Sie dann oder senden Sie eine neue Nachricht an die Adresse, die von Ihrem Mail-in-a-Box-Server verwaltet wird.

Die ausgehende E-Mail sollte fast sofort empfangen werden. Da jedoch die Grauliste auf dem Mail-in-a-Box-Server aktiviert ist, dauert es ungefähr 15 Minuten, bis die eingehende E-Mail angezeigt wird.

Dies funktioniert nicht, wenn DNS nicht richtig eingerichtet ist.

Wenn Sie sowohl Textnachrichten senden als auch empfangen können, betreiben Sie jetzt Ihren eigenen E-Mail-Server. Herzliche Glückwünsche!

(Optional) Schritt 7 - Installieren Sie das SSL-Zertifikat

Mail-in-a-Box generiert standardmäßig ein eigenes selbstsigniertes Zertifikat. Wenn Sie diesen Server in einer Produktionsumgebung verwenden möchten, empfehlen wir dringend, ein offizielles SSL-Zertifikat zu installieren.

Zunächst https://www.digitalocean.com/community/tutorials/installationsanleitung-an-sl-zertifikat-von-einer-kommerziellen-Zertifikatsautorität-kaufen Sie Ihr Zertifikat]. Informationen zum Erstellen eines kostenlos signierten SSL-Zertifikats finden Sie unter https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-with-a-free-signed-ssl- certificate-on-a-vps [So richten Sie Apache mit einem kostenlosen signierten SSL-Zertifikat in einem VPS ein] Tutorial.

Wählen Sie dann im Mail-in-a-Box-Administrator-Dashboard im oberen Navigationsmenü die Option * System> SSL-Zertifikate *.

Von dort aus klicken Sie auf die Schaltfläche * Install Certificate * (Zertifikat installieren) neben der entsprechenden Domäne oder Unterdomäne. Kopieren Sie Ihr Zertifikat und alle Kettenzertifikate und fügen Sie sie in die bereitgestellten Textfelder ein. Klicken Sie abschließend auf die Schaltfläche * Installieren *.

Jetzt sollten Sie und Ihre Benutzer in der Lage sein, ohne Browser-Warnungen auf Webmail und das Admin-Panel zuzugreifen.

Fazit

Es ist ganz einfach, Ihrem Mail-in-a-Box-Server weiterhin Domänen und zusätzliche E-Mail-Adressen hinzuzufügen. Um eine neue Adresse in einer neuen oder vorhandenen Domain hinzuzufügen, fügen Sie einfach ein weiteres E-Mail-Konto über * Mail> Benutzer * im Admin-Dashboard hinzu. Befindet sich die E-Mail-Adresse in einer neuen Domäne, fügt Mail-in-a-Box automatisch die entsprechenden neuen Einstellungen hinzu.

Wenn Sie eine neue Domain hinzufügen, stellen Sie sicher, dass Sie die Nameserver der Domain bei Ihrem Domain-Registrar auf und setzen (die gleichen, die wir zuvor für die erste Domain eingerichtet haben). Ihr Droplet übernimmt den gesamten DNS für die neue Domain.

Die aktuellen DNS-Einstellungen finden Sie unter * System> External DNS *. Um Ihre eigenen Einträge hinzuzufügen, rufen Sie * System> Benutzerdefiniertes DNS * auf.

Mail-in-a-Box bietet auch Funktionen, die über den Umfang dieses Artikels hinausgehen. Es kann als gehosteter Kontakt und Kalendermanager mit freundlicher Genehmigung von ownCloud dienen. Es kann auch zum Hosten statischer Websites verwendet werden.

Weitere Informationen zu Mail-in-a-Box finden Sie auf der Homepage von project.