Autokonfiguration von Thunderbird, kMail und Evolution
Am einfachsten haben wir es, wie soll es anders sein, im Open Source-Lager. Auf der Doku-Seite dem Mozilla Developer Network kann man im Detail nachlesen, nach welchen Kriterien die Abfrage der Konfiguration abläuft.
Kurz zusammengefasst läuft das wie folgt:
- ISPDB: Gibt es für die eMail-Domäne in der ISP-Datenbank einen Treffer, dann wird die dort hinterlegte Konfiguration verwendet.
- Provider: Als nächstes wird geprüft, ob der Mailprovider eine statische xml-Autokonfigurationsdatei für den Adressdomäinteil (z.B. @german.it-ignorant.de) auf einem Webserver autoconfig@<domain-part (z.B. autoconfig.german.it-ignorant.de) anbietet.
- trial and error: Bevor zum Schluß die manuelle Konfiguration angeboten wird, wird noch versucht, ob gängige Hostnamen wie imap.example.com oder pop.example.com oder smtp.example.com via DNS auflösbar sind.
- manuell Zum Schluß bleibt dann nur noch die manuelle Konfiguration der Einstellungen durch den Nutzer, genau das, was wir eigentlich vermeiden wollen.
Wir werden nun also eine Konfiguration mit allen Konfigurationsangaben auf einem Webserver zur Verfügung stellen, die der Mail-Client beim Einrichten des Nutzeraccounts abfragen und nutzen kann.
vHost für Apache einrichten
Als erstes richten wir uns nun einen vHOST auf unserem Web-Server ein, der die Konfigurationsdatei ausliefern wird. Dazu benötigen wir neben der Konfigurationsdatei ein entsprechendes Verzeichnis, in dem wir diese ablegen. Dieses Verzeichnis legen wir uns nun als erstes an.
# mkdir -p /var/www/autoconfig/mail
Als nächstes definieren wir die notwendige Konfigurationsdatei für unseren vHost im Apache Konfigurationspfad /etc/httpd/conf.d/.
# vim /etc/httpd/conf.d/autoconfig.conf
- autoconfig.conf
# # host für Autoconfig unseres Dovecot # <VirtualHost *:80> ServerAdmin webmaster@nausch.org ServerName autoconfig.nausch.org ServerAlias autoconfig.omni128.de autoconfig.it-ignorant.org autoconfig.it-ignorant.de ServerPath / DocumentRoot "/var/www/autoconfig/" <Directory "/var/www/autoconfig/"> Options FollowSymLinks AllowOverride All Order allow,deny Allow from all </Directory> DirectoryIndex index.html ErrorLog logs/autoconfig_error.log CustomLog logs/autoconfig_access.log combined </VirtualHost>
Jede Maildomäne die der betreffende Mailserver bedient, tragen wir dann einen Eintrag nach dem Muster autoconfig.domain.tld als ServerAlias in die Konfiguration unseres vHosts ein.
Bevor wir nun noch unsere Konfigurations scharf schalten, überprüfen wir noch unsere gerade angelegte Konfiguration unseres vHost einer syntaktischen Prüfung.
# service httpd configtest
Syntax OK
Da die Prüfung positiv ausfällt, starten wir unseren Webserver einmal durch.
# service httpd condrestart
Stopping httpd: [ OK ] Starting httpd: [ OK ]
DNS-Einträge
Damit der Mailclient über eine DNS-Abfrage unseren neuen vHOST finden kann, sind natürlich ein paar Einträge notwendig. Für den ServerName aus unserer vHost-Konfiguration definieren wir dann beim zuständigen Nameserver einen A-Record:
autoconfig.nausch.org. IN A 217.91.103.190
Für die weiteren Maildomänen, verwenden wir dann ebenfalls einzelne A-Records, oder wir verweisen mit einem CNAME auf den eigentlichen FQDN. Also:
autoconfig.omni128.de. IN A 217.91.103.190
oder:
autoconfig.omni128.de. IN CNAME autoconfig.nausch.org
Unsere Konfiguration aktivieren wir dann noch, nachdem wir die serial-Nummer im Configfile entsprechend angepasst haben.
# rndc reload
server reload successful
XML-Konfigurationsdatei
Die Konfigurations-Definitionen unseres Mailservers hinterlegen wir nun in einer einfachen XML-Datei, nach folgendem Musterbeispiel.
# vim /var/www/autoconfig/mail/config-v1.1.xml
- /var/www/autoconfig/mail/config-v1.1.xml
<?xml version="1.0" encoding="UTF-8"?> <clientConfig version="1.1"> <emailProvider id="nausch.org"> <domain>nausch.org</domain> <displayName>eMail-Service @ nausch.org</displayName> <displayShortName>nausch.org</displayShortName> <incomingServer type="imap"> <hostname>imap.nausch.org</hostname> <port>143</port> <socketType>STARTTLS</socketType> <authentication>password-cleartext</authentication> <username>%EMAILADDRESS%</username> </incomingServer> <incomingServer type="pop3"> <hostname>pop.nausch.org</hostname> <port>110</port> <socketType>STARTTLS</socketType> <authentication>password-cleartext</authentication> <username>%EMAILADDRESS%</username> </incomingServer> <outgoingServer type="smtp"> <hostname>mx01.nausch.org</hostname> <port>587</port> <socketType>STARTTLS</socketType> <authentication>password-cleartext</authentication> <username>%EMAILADDRESS%</username> </outgoingServer> <documentation url="http://dokuwiki.nausch.org/doku.php"> <descr lang="de">Supportseiten von nausch.org</descr> <descr lang="en">nausch.org's support-wiki</descr> </documentation> </emailProvider> </clientConfig>
Konfiguration Testen
Nun ist es an der Zeit unsere Konfiguration zu Testen. Dies Testen wir mit einem Mail-Client unserer Wahl, in diesem Beispiel verwenden wir Mozilla Thunderbird. Über den Menüpunkt E-Mail-Konto hinzufügen… im Menü Konten Einstellungen legen wir uns nun einen Test-Account an.
Dort Tragen wir nun wie gewohnt ein:
- Namen im Feld Ihr Name
- eMail-Adresse im Feld E-Mail-Adresse
- Passwort im Feld Passwort
und klicken auf die Schaltfläche [Weiter].
Der Mailclient findet nun in der für die Konfiguration zuständigen XML-Datei allen notwendigen Parameter und der User braucht nur noch auswählen, ob er die Nachrichten auf dem Server (IMAP) oder auf dem Computer (POP3) speichern möchte.
Mit einem abschließendem Klick auf die Schaltfläche [Fertig] ist dann die Einrichtung bereits abgeschlossen.