|
|
| (91 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) |
| Zeile 4: |
Zeile 4: |
| Siehe dazu auch [[MySQL installieren]]. | | Siehe dazu auch [[MySQL installieren]]. |
|
| |
|
| == Dovecot == | | == Einrichtung == |
|
| |
|
| === Installation ===
| | [[PostfixAdmin]] |
| <pre style="white-space: pre-wrap;
| |
| white-space: -moz-pre-wrap;
| |
| white-space: -pre-wrap;
| |
| white-space: -o-pre-wrap;
| |
| word-wrap: break-word;">
| |
| sudo apt-get install dovecot-core
| |
| sudo apt-get install dovecot-imapd dovecot-pop3d
| |
| sudo apt-get install dovecot-mysql
| |
| </pre>
| |
|
| |
|
| === Datenbank erstellen ===
| | [[Dovecot]] |
| <pre style="white-space: pre-wrap;
| |
| white-space: -moz-pre-wrap;
| |
| white-space: -pre-wrap;
| |
| white-space: -o-pre-wrap;
| |
| word-wrap: break-word;">
| |
| mysql -u root -p
| |
| mysql> create database if not exists mails;
| |
| mysql> create user 'dovecot'@'%' identified by '<password>';
| |
| mysql> grant usage on *.* to 'dovecot'@'%' identified by '<password>';
| |
| mysql> grant all privileges on mails.* to 'dovecot'@'%';
| |
| mysql> flush privileges;
| |
| mysql> use mails;
| |
| mysql> CREATE TABLE users (id INT UNSIGNED AUTO_INCREMENT NOT NULL, username VARCHAR(128) NOT NULL, domain VARCHAR(128) NOT NULL, password VARCHAR(128) NOT NULL, UNIQUE (id), PRIMARY KEY (username, domain));
| |
| mysql> quit;
| |
| </pre>
| |
|
| |
|
| Soll nur von ''localhost'' auf die Datenbank zugegriffen werden können, dann folgenden Befehl verwenden:
| | [[Postfix]] |
| <pre style="white-space: pre-wrap;
| |
| white-space: -moz-pre-wrap;
| |
| white-space: -pre-wrap;
| |
| white-space: -o-pre-wrap;
| |
| word-wrap: break-word;">
| |
| mysql> create user 'dovecot'@'localhost' identified by '<password>';
| |
| </pre>
| |
|
| |
|
| === Konfiguration ===
| | [[Mailserver Umgebung]] |
|
| |
|
| ==== SSL Zertifikat ====
| | [[Mailserver testen]] |
|
| |
|
| Hilfe zu Erstellung eines SSL-Zertifikates siehe [[SSL Zertifikat]]
| | [[Webmail]] |
|
| |
|
| Erstelltes Zertifikat in der Datei ''/etc/dovecot/conf.d/10-ssl.conf'' eintragen.
| | [[Amavis-Spam-Virenfilter]] |
| <pre style="white-space: pre-wrap;
| |
| white-space: -moz-pre-wrap;
| |
| white-space: -pre-wrap;
| |
| white-space: -o-pre-wrap;
| |
| word-wrap: break-word;">
| |
| ssl = required
| |
| ssl_cert = </etc/ssl/certs/dovecot.crt
| |
| ssl_key = </etc/ssl/private/dovecot.key
| |
| </pre>
| |
|
| |
|
| Key und Zeritikat müssen für den Benutzer ''mail'' lesbar sein:
| | [[Sieve Mailfilter]] |
| <pre style="white-space: pre-wrap;
| |
| white-space: -moz-pre-wrap;
| |
| white-space: -pre-wrap;
| |
| white-space: -o-pre-wrap;
| |
| word-wrap: break-word;">
| |
| sudo chown mail:mail /etc/ssl/certs/dovecot.crt
| |
| sudo chown mail:mail /etc/ssl/private/dovecot.key
| |
| </pre>
| |
|
| |
|
| ==== Speicherort der Mails ====
| | [[Fetchmail]] |
|
| |
|
| Für die beschriebene Installation werden virtuelle Benutzer verwendet. Virtuelle Benutzer sind Benutzer, die sich nicht am System anmelden können.
| | [[Mailman]] |
|
| |
|
| Zuerst erstellen wir ein Grundverzeichnis, das dem Benutzer <code>mail</code> gehört. Hier werden später in den entsprechenden Unterverzeichnissen die Mails einsortiert.
| | [[Leafnode]] |
| <pre style="white-space: pre-wrap;
| |
| white-space: -moz-pre-wrap;
| |
| white-space: -pre-wrap;
| |
| white-space: -o-pre-wrap;
| |
| word-wrap: break-word;">
| |
| sudo mkdir /var/vmails/
| |
| sudo chown mail:mail /var/vmails/
| |
| </pre>
| |
| | |
| Das Mailverzeichnis wird in der Datei ''/etc/dovecot/conf.d/10-mail.conf'' eingetragen:
| |
| <pre style="white-space: pre-wrap;
| |
| white-space: -moz-pre-wrap;
| |
| white-space: -pre-wrap;
| |
| white-space: -o-pre-wrap;
| |
| word-wrap: break-word;">
| |
| mail_location = maildir:/var/vmails/%d/%n
| |
| </pre>
| |
| | |
| 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)
| |
| <pre style="white-space: pre-wrap;
| |
| white-space: -moz-pre-wrap;
| |
| white-space: -pre-wrap;
| |
| white-space: -o-pre-wrap;
| |
| word-wrap: break-word;">
| |
| sudo addgroup --system --no-create-home --disabled-login --group vmail
| |
| sudo adduser --system --no-create-home --disabled-login --ingroup vmail vmail
| |
| sudo usermod -aG vmail mail
| |
| sudo mkdir /home/vmail/
| |
| sudo chown vmail:vmail /home/vmail/
| |
| </pre>
| |
| | |
| | |
| Datei <code>/etc/dovecot/conf.d/10-auth.conf</code>:
| |
| <pre style="white-space: pre-wrap;
| |
| white-space: -moz-pre-wrap;
| |
| white-space: -pre-wrap;
| |
| white-space: -o-pre-wrap;
| |
| word-wrap: break-word;">
| |
| # Folgende Zeile auskommentieren:
| |
| # !include auth-system.conf.ext
| |
| | |
| # Folgende Zeile einkommentieren:
| |
| !include auth-sql.conf.ext
| |
| </pre>
| |
| | |
| In der Datei <code>auth-sql.conf.ext</code> folgende Zeile ausbessern / einkommentieren:
| |
| <pre style="white-space: pre-wrap;
| |
| white-space: -moz-pre-wrap;
| |
| white-space: -pre-wrap;
| |
| white-space: -o-pre-wrap;
| |
| word-wrap: break-word;">
| |
| # Database driver: mysql, pgsql, sqlite
| |
| userdb {
| |
| driver = static
| |
| args = uid=vmail gid=vmail home=/home/vmails/%u
| |
| }
| |
| </pre>
| |
| | |
| Datei <code>/etc/dovecot/dovecot-sql.conf.ext</code>:
| |
| <pre style="white-space: pre-wrap;
| |
| white-space: -moz-pre-wrap;
| |
| white-space: -pre-wrap;
| |
| white-space: -o-pre-wrap;
| |
| word-wrap: break-word;">
| |
| # Database driver: mysql, pgsql, sqlite
| |
| driver = mysql
| |
| | |
| connect = host=localhost dbname=mails user=dovecot password=<password>
| |
| | |
| password_query = SELECT username, domain, password FROM users WHERE username = '%n' AND domain = '%d'
| |
| | |
| default_pass_scheme = SHA512-CRYPT
| |
| </pre>
| |
| | |
| ===== Benutzerdatenbank befüllen =====
| |
| | |
| Verschlüsseltes Passwot erstellen:
| |
| <pre style="white-space: pre-wrap;
| |
| white-space: -moz-pre-wrap;
| |
| white-space: -pre-wrap;
| |
| white-space: -o-pre-wrap;
| |
| word-wrap: break-word;">
| |
| doveadm pw -s SHA512-CRYPT
| |
| </pre>
| |
| | |
| Eintrag in Datenbank erstellen:
| |
| <pre style="white-space: pre-wrap;
| |
| white-space: -moz-pre-wrap;
| |
| white-space: -pre-wrap;
| |
| white-space: -o-pre-wrap;
| |
| word-wrap: break-word;">
| |
| insert into users (username, domain, password) values ('<benutzer>', '<domain.tld>', '$6$A3ZAyqvdkl4nc8BM$bz8YAW7/0B1DcE2I37epHO/p33MbdVKb0FbGH56Ey1KVO1.m3NPL/s5v35NwFrSZMPTBkrc6DDX6rx2MCQhUa0');
| |
| </pre>
| |
|
| |
|
| | [[Mails verschlüsseln]] |
|
| |
|
| == Links == | | == Links == |
|
| |
|
| [https://wiki.ubuntuusers.de/Dovecot_2/ https://wiki.ubuntuusers.de/Dovecot_2/] | | [https://help.ubuntu.com/community/PostfixDovecotSASL https://help.ubuntu.com/community/PostfixDovecotSASL] |
|
| |
|
| [https://help.ubuntu.com/community/PostfixDovecotSASL https://help.ubuntu.com/community/PostfixDovecotSASL] | | [https://thomas-leister.de/internet/mailserver-ubuntu-server-dovecot-postfix-mysql/ https://thomas-leister.de/internet/mailserver-ubuntu-server-dovecot-postfix-mysql/] |
|
| |
|
|
| |
|
| Zurück zu [[Ubuntu]] | | Zurück zu [[Mailserver einrichten (unterschiedliche Versionen)|Mailserver einrichten]] |