Um meine Mail-Unmengen zu verwalten nutze ich einen lokalen IMAP Mailserver unter Dovecot. Die aus dem Internet eintreffende Mail wird lokal gefiltert, in Ordner sortiert und hierbei in den lokalen IMAP Server geschoben. Meine Laptops synchronisieren ihren Mailbestand jeweils gegenüber dem zentralen Server zu Hause, so dass ich immer alle Mails dabei haben kann – diese liegen in meinem jeweiligen Homeverzeichnis in einem Maildir-Ordner. Meine Thunderbird-Installation auf den jeweiligen Geräten binden dann den lokalen Dovecot ein.
Unter Ubuntu ist ein derartiger Mailserver schnell eingerichtet:
sudo apt-get install dovecot-postfix
und dann läuft das Ding. Weitere Arbeiten sind nicht nötig – alle Komponenten lauschen nur an localhost, wenn man beim Setup die hierzu gestellte Rückfrage einmal abnickt.
Unter Fedora ist das alles nicht ganz so einfach, weswegen ich hier meine seit Fedora 16 genutzte Konfiguration dokumentiere.
Postfix
Erst einmal werden wir root:
su –
und installieren dann einen Postfix
yum -y install postfix
Dessen zentrale Konfigurationsdatei wird bearbeitet
vi /etc/postfix/main.cf
Die folgenden Eintragungen vornehmen (IPv4 reicht lokal völlig aus):
myhostname = localhost.localdomain
mydomain = localdomain
myorigin = $mydomain
inet_interfaces = localhost
inet_protocols = ipv4
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks_style = host
mynetworks = 127.0.0.0/8
home_mailbox = Maildir/
smtpd_banner = $myhostname ESMTP
Die Authentifizierung einrichten gegenüber dem lokalen Benutzeraccount:
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_client_restrictions = permit_mynetworks,reject_unknown_client,permit
smtpd_recipient_restrictions = permit_mynetworks,permit_auth_destination,permit_sasl_authenticated,reject
Der bei Fedora schon vorhandene Mailserver wird angehalten und abgeklemmt:
systemctl stop sendmail.service
systemctl disable sendmail.service
Postfix wird als neuer Standardmailserver eingerichtet. Im folgenden Schritt also Postfix auswählen:
alternatives –config mta
Dann Postfix starten und dafür sorgen, dass dieser immer beim Booten mit hochkommt:
systemctl start postfix.service
systemctl enable postfix.service
Postfix sollte nun laufen (mit telnet oder nmap kann man dies überprüfen). Als nächstes kommt der IMAP Server dran.
Dovecot
Dovecot installieren durch
yum -y install dovecot
Dann die Konfigurationsdateien bearbeiten. Meist sind entsprechende Zeilen schon vorhanden, so dass man diese schlicht ein/auskommentieren kann:
vi /etc/dovecot/dovecot.conf
Hier die Eintragungen für die Protokolle großzügig festlegen – genutzt wird später lokal nur IMAP, aber das ist Wurscht.
protocols = imap pop3 lmtp
listen = *, ::
Die nächste Konfigurationsdatei:
vi /etc/dovecot/conf.d/10-auth.conf
Auch hier können wir auf Grund der Tatsache, dass unser Dovecot nur auf dem jeweiligen Rechner lokal läuft, großzügig sein.
disable_plaintext_auth = no
auth_mechanisms = plain login
Und dann wäre da noch die folgende Datei …
vi /etc/dovecot/conf.d/10-mail.conf
… in der wir in unserem Home ein Mailverzeichnis einrichten:
mail_location = maildir:~/Maildir
Und noch die Konfigurationsdatei für die Authentifizierung des lokalen Benutzers:
vi /etc/dovecot/conf.d/10-master.conf
die wie folgt ergänzt wird:
unix_listener /var/spool/postfix/private/auth {
mode = 0666
user = postfix
group = postfix
}
Jetzt fehlt noch Einstellungen für die Verschlüsselung der Verbindung zum IMAP Server vornehmen
vi /etc/dovecot/conf.d/10-ssl.conf
auf die wir lokal schlicht verzichten:
ssl = no
Und am Ende wird der Dovecot noch als Dienst eingerichtet:
systemctl start dovecot.service
systemctl enable dovecot.service
SELinux
Wenn es mit der Verbindungsaufnahme zum lokalen Mailserver aus Thunderbird heraus nun nicht klappen will, dann muss man die Einstellungen für SELinux überprüfen und testweise auch so einschränken, dass diese zwar Warnmeldungen ausspuckt, jedoch nicht mehr dazwischen funkt:
vi /etc/selinux/config
Hier dann auf permissive umschalten und nochmal den Zugriff von Thunderbird aus probieren.
SELinux motzt dann zwar, aber der Zugriff auf den lokalen Mailspeicher sollte funktionieren.