Dovecot (Ubuntu 16.04): Unterschied zwischen den Versionen
Zeile 71: | Zeile 71: | ||
''%d'' wird dann im laufenden Betrieb durch die Damain und ''%n'' durch den Benutzernamen ersetzt. | ''%d'' wird dann im laufenden Betrieb durch die Damain und ''%n'' durch den Benutzernamen ersetzt. | ||
=== Benutzer Authentifizierung === | |||
Anlegen eines Benutzergrundverzeichnisses, das dem Benutzer ''vmail'' gehört (Benutzer ''mail'' muss darauf auch Schreibrechte haben - daher zur Gruppe hinzufügen) | |||
<pre> | |||
sudo mkdir /home/vmail/ | |||
sudo chown vmail:vmail /home/vmail/ | |||
</pre> | |||
Datei <code>/etc/dovecot/conf.d/10-auth.conf</code>: | |||
<pre> | |||
sudo nano /etc/dovecot/conf.d/10-auth.conf | |||
</pre> | |||
<pre> | |||
disable_plaintext_auth = yes | |||
auth_mechanisms = plain login | |||
# Folgende Zeile auskommentieren: | |||
# !include auth-system.conf.ext | |||
# Folgende Zeile einkommentieren: | |||
!include auth-sql.conf.ext | |||
</pre> | |||
In der Datei <code>/etc/dovecot/conf.d/auth-sql.conf.ext</code> folgende Zeile ausbessern / einkommentieren: | |||
<pre> | |||
sudo nano /etc/dovecot/conf.d/auth-sql.conf.ext | |||
</pre> | |||
<pre> | |||
# Database driver: mysql, pgsql, sqlite | |||
userdb { | |||
driver = static | |||
args = uid=vmail gid=vmail home=/home/vmail/%u | |||
} | |||
</pre> | |||
Datei <code>/etc/dovecot/dovecot-sql.conf.ext</code>: | |||
<pre> | |||
sudo nano /etc/dovecot/dovecot-sql.conf.ext | |||
</pre> | |||
<pre> | |||
# Database driver: mysql, pgsql, sqlite | |||
driver = mysql | |||
connect = host=localhost dbname=(<mails>|<postfix>) user=<database user> password=<password> | |||
default_pass_scheme = SHA512-CRYPT | |||
</pre> | |||
Falls [[PostfixAdmin]] verwendet wird: | |||
<pre> | |||
password_query = SELECT local_part, domain, password FROM mailbox WHERE local_part = '%n' AND domain = '%d' | |||
</pre> | |||
Falls [[PostfixAdmin]] ''nicht'' verwendet wird: | |||
<pre> | |||
password_query = SELECT username, domain, password FROM users WHERE username = '%n' AND domain = '%d' | |||
</pre> | |||
== Links == | == Links == |
Version vom 3. März 2018, 13:30 Uhr
Noch in Bearbeitung
Installation
sudo apt-get install -y dovecot-core dovecot-imapd dovecot-pop3d dovecot-mysql
Virtuellen Benutzer anlegen
sudo addgroup --system --no-create-home --disabled-login --gid 126 vmail sudo adduser --system --no-create-home --disabled-login --uid 126 --ingroup vmail vmail
Konfiguration
SSL Zertifikat
Hilfe zu Erstellung eines SSL-Zertifikates siehe SSL Zertifikat
Erstelltes Zertifikat in der Datei /etc/dovecot/conf.d/10-ssl.conf eintragen.
sudo vi /etc/dovecot/conf.d/10-ssl.conf
ssl = required ssl_cert = </etc/ssl/certs/dovecot.crt ssl_key = </etc/ssl/private/apache.key
Key und Zeritikat müssen für den Benutzer vmail lesbar sein:
sudo chmod a+r /etc/ssl/certs/dovecot.crt sudo chmod a+r /etc/ssl/private/apache.key
Speicherort der Mails
Für die beschriebene Installation werden virtuelle Benutzer verwendet. Virtuelle Benutzer sind Benutzer, die sich nicht am System anmelden können.
Zuerst erstellen wir ein Grundverzeichnis, das dem Benutzer vmail
gehört. Hier werden später in den entsprechenden Unterverzeichnissen die Mails einsortiert.
sudo mkdir /var/vmail/ sudo chown vmail:vmail /var/vmail/
Das Mailverzeichnis wird in der Datei /etc/dovecot/conf.d/10-mail.conf eingetragen:
sudo vi /etc/dovecot/conf.d/10-mail.conf
mail_location = maildir:/var/vmail/%d/%n mail_privileged_group = vmail # 126 = uid of user vmail first_valid_uid = 126
Weiters wird hier noch das empfohlene Format maildir verwendet, was durch die Voranstellung von maildir: vor dem Pfad gekennzeichnet wird.
%d wird dann im laufenden Betrieb durch die Damain und %n durch den Benutzernamen ersetzt.
Benutzer Authentifizierung
Anlegen eines Benutzergrundverzeichnisses, das dem Benutzer vmail gehört (Benutzer mail muss darauf auch Schreibrechte haben - daher zur Gruppe hinzufügen)
sudo mkdir /home/vmail/ sudo chown vmail:vmail /home/vmail/
Datei /etc/dovecot/conf.d/10-auth.conf
:
sudo nano /etc/dovecot/conf.d/10-auth.conf
disable_plaintext_auth = yes auth_mechanisms = plain login # Folgende Zeile auskommentieren: # !include auth-system.conf.ext # Folgende Zeile einkommentieren: !include auth-sql.conf.ext
In der Datei /etc/dovecot/conf.d/auth-sql.conf.ext
folgende Zeile ausbessern / einkommentieren:
sudo nano /etc/dovecot/conf.d/auth-sql.conf.ext
# Database driver: mysql, pgsql, sqlite userdb { driver = static args = uid=vmail gid=vmail home=/home/vmail/%u }
Datei /etc/dovecot/dovecot-sql.conf.ext
:
sudo nano /etc/dovecot/dovecot-sql.conf.ext
# Database driver: mysql, pgsql, sqlite driver = mysql connect = host=localhost dbname=(<mails>|<postfix>) user=<database user> password=<password> default_pass_scheme = SHA512-CRYPT
Falls PostfixAdmin verwendet wird:
password_query = SELECT local_part, domain, password FROM mailbox WHERE local_part = '%n' AND domain = '%d'
Falls PostfixAdmin nicht verwendet wird:
password_query = SELECT username, domain, password FROM users WHERE username = '%n' AND domain = '%d'
Links
https://wiki.ubuntuusers.de/Dovecot_2/
Zurück zu Mailserver einrichten