# 2.4.1-4 (7d8c0e5759): /etc/dovecot/dovecot.conf # Pigeonhole version 2.4.1-4 (0a86619f) # OS: Linux 6.12.75+rpt-rpi-v8 aarch64 Debian 13.4 ext4 # Hostname: email # 4 default setting changes since version 2.4.0 dovecot_config_version = 2.4.0 dovecot_storage_version = 2.4.0 fts_autoindex = yes fts_autoindex_max_recent_msgs = 999 fts_search_add_missing = yes mail_debug = yes mail_driver = maildir mail_gid = vmail mail_home = /var/vmail/%{user | domain}/%{user | username} mail_inbox_path = ~/Maildir/ mail_path = /var/vmail/%{user | domain}/%{user | username}/Maildir mail_privileged_group = mail mail_uid = vmail protocols = imap lmtp sieve sql_driver = mysql ssl = required namespace inbox { inbox = yes mailbox Drafts { auto = subscribe special_use = "\\Drafts" } mailbox Junk { auto = subscribe special_use = "\\Junk" } mailbox Trash { auto = subscribe special_use = "\\Trash" } mailbox Sent { auto = subscribe special_use = "\\Sent" } mailbox "Sent Messages" { special_use = "\\Sent" } } service imap-login { inet_listener imap { } inet_listener imaps { } } service pop3-login { inet_listener pop3 { } inet_listener pop3s { } } service submission-login { inet_listener submission { } inet_listener submissions { } } service lmtp { unix_listener lmtp { } unix_listener /var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0600 user = postfix } } service imap { } service pop3 { } service submission { } service auth { unix_listener auth-userdb { } unix_listener /var/spool/postfix/private/dovecot-auth { group = postfix mode = 0660 user = postfix } } service auth-worker { } service dict { unix_listener dict { } } ssl_server { cert_file = /etc/letsencrypt/live/exampel.com/fullchain.pem key_file = /etc/letsencrypt/live/exampel.com/privkey.pem } protocol lmtp { auth_username_format = mail_plugins = $mail_plugins sieve } service managesieve-login { inet_listener sieve { port = 4190 listen = 127.0.0.1 } inet_listener sieve_deprecated { port = 0 } } service managesieve { } mysql /var/run/mysqld/mysqld.sock { dbname = mailserver host = 127.0.0.1 password = # hidden, use -P to show it user = mailserver } userdb sql { iterate_query = SELECT email as user FROM virtual_users query = SELECT email as user, IF(quota > 0, CONCAT(quota, 'B'), NULL) AS quota_storage_size FROM virtual_users WHERE email='%{user}' } passdb sql { query = SELECT password FROM virtual_users where email='%{user}' } userdb static { fields { gid = vmail home = /var/vmail/%{user | domain}/%{user | username} uid = vmail } }