Mail Server · 3 min read · Oct 05, 2025

Vollständige Mail-Server-Lösung mit virtuellen Domains und Benutzern (Debian Etch, Postfix, Mysql, Dovecot, DSpam, ClamAV, Postgrey, RBL) - Seite 12

C. Sicherer Dovecot

Dovecot-Server kann IMAPS so gut wie direkt nach der Installation… also lassen Sie es uns auf secure-mail installieren. Wie gewohnt, übernimmt Debian den Großteil der Arbeit für uns:

# apt-get install dovecot-imapd

Für unsere Zwecke benötigten wir kein POP3 (und wirklich, das sollten Sie auch nicht), aber wenn Sie es wollten, fügen Sie einfach dovecot-pop3d am Ende dieses Befehls hinzu.

Öffnen Sie die Dovecot-Konfigurationsdatei, die sich in /etc/dovecot/dovecot.conf befindet, und lassen Sie sie wie folgt aussehen. Es gibt wahrscheinlich bereits viele Standardkonfigurationen, sodass Sie wahrscheinlich nur bestimmte Abschnitte auskommentieren und kleinere Dinge ändern müssen. Achten Sie besonders auf die ssl_-Abschnitte der Datei, da sie auf diesem Server unterschiedlich sind.

## Dovecot-Konfigurationsdatei  
#  
base_dir = /var/run/dovecot/  
#  
# imap imaps pop3 pop3s (verwenden Sie imaps und pop3s, wenn für SSL konfiguriert)  
protocols = imaps  
#  
# Kommentieren Sie die ssl_listen-Anweisungen aus und kommentieren Sie listen aus, wenn Sie SSL verwenden  
protocol imap {  
# listen = *:143  
ssl_listen = *:993  
}  
#protocol pop3 {  
#listen = *:110  
# ssl_listen = *:995  
#}  
#  
log_timestamp = "%Y-%m-%d %H:%M:%S "  
syslog_facility = mail  
#  
# Kommentieren Sie diese aus, wenn Sie SSL verwenden  
ssl_cert_file = /etc/ssl/example.com/mailserver/mail-cert.pem  
ssl_key_file = /etc/ssl/example.com/mailserver/mail-key.pem  
#ssl_ca_file = /etc/ssl/mycompany/ca/mycompany.pem  
#ssl_verify_client_cert = yes  
ssl_parameters_regenerate = 168  
verbose_ssl = no  
#  
# Wo sich die Postfächer befinden  
mail_location = maildir:/vmail/%d/%u  
#  
mail_extra_groups = mail  
mail_debug = no  
first_valid_uid = 150  
last_valid_uid = 150  
maildir_copy_with_hardlinks = yes  
#  
protocol imap {  
login_executable = /usr/lib/dovecot/imap-login  
mail_executable = /usr/lib/dovecot/imap  
imap_max_line_length = 65536  
}  
#protocol pop3 {  
#login_executable = /usr/lib/dovecot/pop3-login  
#mail_executable = /usr/lib/dovecot/pop3  
#pop3_uidl_format = %08Xu%08Xv  
#}  
protocol lda {  
postmaster_address = [email protected]  
sendmail_path = /usr/lib/sendmail  
auth_socket_path = /var/run/dovecot/auth-master  
}  
#  
auth_verbose = no  
auth_debug = no  
auth_debug_passwords = no  
#  
auth default {  
 mechanisms = plain  
 passdb sql {  
 args = /etc/dovecot/dovecot-sql.conf  
 }  
 userdb sql {  
 args = /etc/dovecot/dovecot-sql.conf  
 }  
 user = nobody  
 socket listen {  
 master {  
 path = /var/run/dovecot/auth-master  
 mode = 0660  
 user = vmail  
 group = mail  
 }  
 client {  
 path = /var/spool/postfix/private/auth  
 mode = 0660  
 user = postfix  
 group = postfix  
 }  
 }  
 #  
 # Wenn Sie Client-Zertifikate verwenden möchten, verwenden Sie diese Zeilen  
 # ssl_require_client_cert = yes  
 # ssl_username_from_cert = yes  
}

HINWEIS: Sie können die obige Konfiguration nicht einfach kopieren und erwarten, dass sie funktioniert! Sie müssen alle oben genannten Änderungen in Ihre eigene Konfiguration einarbeiten.

Die Dovecot-Konfiguration ist fast abgeschlossen, aber genau wie bei der vorherigen Konfiguration müssen die MySQL-Einstellungen integriert werden.

Öffnen Sie die Datei /etc/dovecot/dovecot-sql.conf und stellen Sie sicher, dass Folgendes vorhanden ist.

driver = mysql  
connect = host=sql-1.internal.example.com dbname=virtual_mail user=vmail_user password=vmail_user_password  
# Der neue Name für MD5 ist MD5-CRYPT, daher müssen Sie dies je nach Version möglicherweise ändern  
default_pass_scheme = MD5  
# Holen Sie sich das Postfach  
user_query = SELECT '/vmail/%d/%n' AS home, 'maildir:/vmail/%d/%n' AS mail, 150 AS uid, 8 AS gid, CONCAT('dirsize:storage=', quota) AS quota FROM mailbox WHERE username = '%u' AND active = '1'  
# Holen Sie sich das Passwort  
password_query = SELECT username AS user, password, '/vmail/%d/%n' AS userdb_home, 'maildir:/vmail/%d/%n' AS userdb_mail, 150 AS userdb_uid, 8 AS userdb_gid FROM mailbox WHERE username = '%u' AND active = '1'  
# Wenn Sie Client-Zertifikate zur Authentifizierung verwenden, kommentieren Sie das Obige aus und kommentieren Sie das Folgende ein  
#password_query = SELECT null AS password, '%u' AS user

Da wir unser MySQL-Passwort in Klartextformat in diesem Dokument gespeichert haben, möchten wir sicherstellen, dass nur wir es lesen können!

# chmod 600 /etc/dovecot/*.conf  
# chown vmail /etc/dovecot/*.conf

Die externe/sichere Dovecot-Konfiguration ist jetzt abgeschlossen! Fahren Sie fort und starten Sie den Dovecot-Dienst neu:

# invoke-rc.d dovecot restart

… und Ihre externen/unsicheren Benutzer können jetzt E-Mails auf secure-mail.example.com abrufen!

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.