ISPConfig/Automail
ISPConfig Automail - plugin zur automatischen Konfiguration von E-Mail-Clients
Beschreibung
Mit dem Plugin ISPConfig Automail kannst Du Email-Clients wie Thunderbird oder Outlook automatisch konfigurieren.
Ob Du einen oder mehrere Mailserver für die Domains verwendest, macht keinen Unterschied. Du definierst nur für jeden Mailserver die passenden Daten wie Hostname und Port; alles andere erfolgt durch eine kleine Webseite, die einen Autoconfig-Dienst (Thunderbird) oder Autodiscover-Dienst (Outlook) zur Verfügung stellt.
Autoconfig und Autodiscover fordern über unterschiedliche Adressen XML-Files an, mit denen dann der Email-Client nach Deinen Vorgaben konfiguriert wird.
Um den ISPConfig Automail nutzen zu können, brauchst Du nur eine aktuelle Version von ISPConfig und eine Webseite (Apache oder nginx).
Das Plugin besteht aus zwei Teilen
- die Erweiterung für ISPConfig zum Verwalten der Einstellungen
- ein Script, um die entsprechenden XML-Dokumente unter der jeweiligen Domain zu generieren.
In diesem Beispiel ist example.de Deine Domain, über die das automatische Einrichten der Mail-Clients laufen soll. Diese Domain kannst Du frei wählen. Die Domain kunde.de ist die Domain, die für die Einrichtung example.de abfragt.
- Thunderbird
- Outlook
Ob Sie einen oder mehrere Mailserver für die Domains verwenden, macht keinen Unterschied.
- Definieren Sie die entsprechenden Daten wie Hostname und Port für jeden Mailserver.
Alles andere wird über eine kleine Webseite erledigt, die einen
- Autoconfig-Dienst (Thunderbird) oder
- Autodiscover-Dienst (Outlook)
bereitstellt.
Autoconfig und Autodiscover fordern XML-Dateien über verschiedene Adressen an, um den E-Mail-Client nach Ihren Vorgaben zu konfigurieren.
Um ISPConfig Automail nutzen zu können, benötigen eine
- aktuelle Version von ISPConfig
- Webseite (Apache oder nginx).
Das Plugin besteht aus zwei Teilen
- das Schnittstellen-Plugin für ISPConfig, um die Einstellungen zu verwalten
- ein Skript zum Generieren der relevanten XML-Dokumente unter der jeweiligen Domain
In diesem Beispiel ist
- example.com Ihre Domain, über die die automatische Einrichtung der Mailclients laufen soll.
- client.com ist die Domäne, die example.com für die Einrichtung abfragt.
Installation
Plugin aktivieren
- Melden Sie sich als admin bei ISPConfig an
- Gehen Sie zu System / CP User
- Aktivieren Sie das Modul automail für den Benutzer admin.
- Nachdem Sie sich ab- und wieder angemeldet haben, steht Ihnen das Modul zur Verfügung.
Remote-Benutzer
- Erstellen Sie einen Remote-Benutzer, der die „Automail-Funktionen“ verwenden kann.
- Wenn Sie eine Konfiguration mit mehreren Servern haben, müssen Sie möglicherweise den Fernzugriff zulassen.
Plugin Konfigurieren
- Unter Provider-ID geben Sie eine eindeutige ID ein, die Ihr Setup identifiziert.
- Sie können den Domänennamen Ihres Servers verwenden.
- Die beiden Hostnamen sind die Namen, unter denen Mails abgerufen (IMAP/POP3) und versendet (SMTP) werden.
- Ports: Ports, die für Ihren Mailserver verwendet werden sollen.
DNS-Einträge
A/AAAA-Record
- autoconfig.example.com
- autodiscover.example.com
In jeder Kundendomäne
autoconfig.client.com. CNAME autoconfig.example.com. _autodiscover._tcp.client.com. SRV 0 0 443 autodiscover.example.com.
- Für die automatische Erkennung wird ein SRV-Eintrag empfohlen
- Dadurch erhalten Sie während der Einrichtung eine Zertifikatswarnung, aber es ist die einfachste Möglichkeit, beliebig viele Kundendomänen einzurichten
Website für ISPConfig:Automail
- Jetzt müssen Sie die Website autoconfig.example.com mit PHP-Unterstützung und ohne Auto-Subdomain in ISPConfig erstellen.
- Sie sollten diese Seite auch mit SSL sichern.
- Dies ist für die automatische Konfiguration nicht erforderlich, wird aber später für die automatische Erkennung benötigt. Sie können Let's Encrypt ganz einfach verwenden
Sie müssen die Anweisungen für Apache entsprechend setzen:
Apache
Serveralias autoconfig.*
Mit Alias oder Servername kann diese Domain später von beliebigen Kunden- oder E-Mail-Domains verwendet werden.
- Erstellen Sie die Aliasdomäne autodiscover.example.com und verweisen Sie sie auf autoconfig.example.com.
- Sie brauchen keine Weiterleitungen, wichtig ist, dass die Domain ein SSL-Zertifikat hat.
- A-Records im DNS reichen aus, um auf Ihren Webserver zu verweisen, damit Sie Let's Encrypt verwenden können.
Upload the script to the webseite
- Laden Sie die Dateien aus dem Website -Verzeichnis aus dem Archiv auf die neu erstellte Website hoch und passen Sie die Daten in der config.php an.
- Benennen Sie die htaccess in .htaccess um. Wenn Sie nginx verwenden, können Sie die Datei auch direkt löschen.
Prüfen
Autoconfig
wget http://autoconfig.client.com/config-v1.1.xml?emailaddress=test@client.com -O test
Im Dateitest finden Sie das Ergebnis. Die E-Mail-Adresse muss natürlich existieren.
Autodiscover
ISPConfig Automail
Installation ISPConfig Automail
cd /tmp wget https://download.schaal-it.net/ispconfig-automail.tgz tar xfz ispconfig-automail.tgz cd automail php install.php
Aktivieren des Plugins
Melde Dich in ISPConfig als Admin an, gehe zu System / ISPConfig Benutzer und aktiviere für den User Admin das Modul automail. Nach dem Du Dich einmal ab- und wieder angemeldet hast, steht Dir das Modul zur Verfügung.
Remote-User
Erstelle einen entfernten Benutzer an, der die „Automail functions“ nutzen kann. Wenn Du ein Multiserver-Setup hast, musst Du evtl. noch den entfernten Zugriff erlauben.
Konfigurieren des Plugins
Unter Provider-ID trägst Du eine eindeutige ID ein, die Dein Setup identifiziert. Du kannst dafür z.B. den Domainnamen Deines Servers nehmen.
Die beiden Hostnamen sind die Namen, über die Mails abgerufen (IMAP/POP3) und versendet werden (SMTP). Wenn Du alles über den gleichen Server laufen lässt, musst Du in beiden Feldern den gleichen Namen eintragen.
Bei Ports trägst Du die Ports ein, die für Deinen Mailserver genutzt werden sollen.
Wenn Du SSL aktivierst, wird das eingerichtete Email-Programm eine verschlüsselte Verbindung aufbauen. Dazu muss das Zertifikat zwingend zum Hostnamen passen.
Erstellen der erforderlichen DNS-Records
Du brauchst einen A-Record für autoconfig.example.de und autodiscover.example.de, die auf Deinen Web-Server zeigen. Wenn Du auch IPv6 nutzt, solltest Du zusätzlich noch AAAA-Records anlegen.
In jeder Kunden-Domain legst Du dann zwei Einträge an. Für autoconfig reicht ein einfacher CNAME:
autoconfig.kunde.de. CNAME autoconfig.example.de.
Bei autodiscover bietet sich ein SRV-Record an. Du bekommst damit zwar eine Zertifikat-Warnung während der Einrichtung, das ist aber der einfachste Weg für die Einrichtung beliebig vieler Kunden-Domains:
_autodiscover._tcp.kunde.de. SRV 0 0 443 autodiscover.example.de.
Einrichten der Website in ISPConfig
Als nächstes legst Du die Webseite autoconfig.example.de mit PHP-Unterstützung und ohne Auto Subdomain in ISPConfig an. Du solltest diese Seite auch über SSL absichern. Das ist zwar für autoconfig nicht erforderlich, wird aber später für autodiscover benötigt. Du kannst dazu ohne weiteres Let’s Encrypt einsetzen.
Bei den Optionen musst Du noch die Direktiven für Apache oder nginx entsprechend setzen:
Apache
ServerAlias autoconfig.*
nginx
location ^~ /config\.php { deny all; } location / { rewrite autodiscover\.xml$ /index.php last; rewrite Autodiscover\.xml$ /index.php last; rewrite config-v1\.1\.xml$ /index.php last; } server_name autoconfig.*;
Durch Alias bzw. server_name kann diese Domain später auch von jeden Kunden bzw. jeder Email-Domain genutzt werden.
Jetzt legst Du die Aliasdomain autodiscover.example.de an und lässt diese auf autoconfig.example.de zeigen. Du brauchst dazu keine Redirects, wichtig ist nur, dass die Domain ein SSL-Zertifikat hat. Dazu reichen A-Records im DNS, die auf Deinen Webserver zeigen, damit Du Let’s Encrypt nutzen kannst.
Script auf der Webseite einrichten
Lade die Dateien aus dem Verzeichnis website aus dem Archiv auf die neu angelegte Webseite hoch und passe die Daten in config.php an. Danach benennst Du die htaccess nach .htaccess um. Wenn Du nginx nutzt, kannst Du die Datei auch direkt löschen.