For anonymization reasons, I have hidden the host and domain names:

# 2.4.2 (0962ed2104): /usr/local/dovecot/etc/dovecot/dovecot.conf
# Pigeonhole version 2.4.2 (767418c3)
# OS: Linux 6.12.0-157.el10.x86_64 x86_64 CentOS Stream release 10 (Coughlan)
# Hostname: xxx.domain.tld
dovecot_config_version = 2.4.2
auth_allow_cleartext = yes
auth_allow_weak_schemes = yes
auth_default_domain = domain.tld
auth_mechanisms = plain login
auth_socket_path = /usr/local/dovecot/var/run/dovecot/auth-userdb
auth_verbose = yes
auth_verbose_passwords = sha1
dovecot_storage_version = 2.4.2
first_valid_gid = 89
first_valid_uid = 89
fts_autoindex = yes
fts_autoindex_max_recent_msgs = 999
fts_search_add_missing = yes
hostname = xxx.domain.tld
last_valid_gid = 89
last_valid_uid = 89
listen {
  * = yes
  :: = no
}
log_path = /dev/stderr
mail_access_groups = 89
mail_driver = maildir
mail_gid = 89
mail_path = ~/Maildir
mail_plugins {
  notify = yes
  quota = yes
}
mail_privileged_group = 89
mail_uid = 89
mailbox_list_validate_fs_names = no
passdb_default_password_scheme = SHA512-CRYPT
postmaster_address = [email protected]
protocols {
  imap = yes
  sieve = yes
}
sql_driver = mysql
passdb sql {
  query = SELECT CONCAT(vpopmail.pw_name, '@', vpopmail.pw_domain) AS user, 
vpopmail.pw_passwd AS password, vpopmail.pw_dir AS userdb_home, 89 AS 
userdb_uid, 89 AS userdb_gid, CONCAT(REPLACE(SUBSTRING_INDEX(vpopmail.pw_shell, 
'S', 1), 'NOQUOTA', '0'), 'B') AS userdb_quota_storage_size FROM vpopmail LEFT 
JOIN aliasdomains ON aliasdomains.alias='%{user | domain}' LEFT JOIN limits ON 
limits.domain='%{user | domain}' WHERE vpopmail.pw_name='%{user | username}' 
AND (vpopmail.pw_domain='%{user | domain}' OR 
vpopmail.pw_domain=aliasdomains.domain) AND ('%{local_port}'!='995' OR 
!(vpopmail.pw_gid & 2)) AND ('%{remote_ip}'!='127.0.0.1' OR !(vpopmail.pw_gid & 
4)) AND ('%{remote_ip}'='127.0.0.1' OR '%{local_port}'!='993' OR 
!(vpopmail.pw_gid & 8)) AND ('%{remote_ip}'!='127.0.0.1' OR 
COALESCE(disable_webmail,0)!=1) AND ('%{remote_ip}'='127.0.0.1' OR 
COALESCE(disable_imap,0)!=1)
}
userdb prefetch {
  driver = prefetch
}
userdb sql {
  iterate_query = SELECT CONCAT(pw_name,'@',pw_domain) AS user FROM vpopmail
  query = SELECT vpopmail.pw_dir AS home, 89 AS uid, 89 AS gid, 
CONCAT(REPLACE(SUBSTRING_INDEX(vpopmail.pw_shell, 'S', 1), 'NOQUOTA', '0'), 
'B') AS quota_storage_size FROM vpopmail WHERE vpopmail.pw_name='%{user | 
username}' AND vpopmail.pw_domain='%{user | domain}'
}
namespace inbox {
  inbox = yes
  mailbox Drafts {
    auto = subscribe
    special_use = "\\Drafts"
  }
  mailbox Junk {
    autoexpunge = 30d
    special_use = "\\Junk"
  }
  mailbox Trash {
    autoexpunge = 30d
    special_use = "\\Trash"
    quota_storage_extra = 100M
  }
  mailbox Sent {
    special_use = "\\Sent"
  }
  mailbox "Sent Messages" {
    special_use = "\\Sent"
  }
}
maildir {
  broken_filename_sizes = yes
}
service imap-login {
  inet_listener imap {
    port = 143
  }
  inet_listener imaps {
    port = 993
    ssl = yes
  }
}
service imap {
}
service auth {
  user = $SET:default_internal_user
  unix_listener auth-userdb {
    group = vchkpw
    mode = 0660
    user = vpopmail
  }
}
service auth-worker {
  user = $SET:default_internal_user
}
service stats {
  unix_listener stats-reader {
    group = vchkpw
    mode = 0660
    user = vpopmail
  }
  unix_listener stats-writer {
    group = vchkpw
    mode = 0660
    user = vpopmail
  }
}
protocol lda {
  mail_plugins {
    sieve = yes
  }
}
protocol imap {
  mail_plugins {
    notify = yes
    mail_log = yes
    imap_sieve = yes
    imap_quota = yes
  }
}
service managesieve-login {
  inet_listener sieve {
    port = 4190
  }
}
service managesieve {
}
language en {
  default = yes
}
quota "User quota" {
  driver = maildir
  storage_grace = 10M
  quota_warning overquota {
    quota_storage_percentage = 100
    execute quota-warning {
      args = 100 %{user}
    }
  }
  quota_warning warn-95 {
    quota_storage_percentage = 95
    execute quota-warning {
      args = 95 %{user}
    }
  }
  quota_warning warn-85 {
    quota_storage_percentage = 85
    execute quota-warning {
      args = 85 %{user}
    }
  }
}
service quota-warning {
  executable = script ../../etc/scripts/quota-warning.sh
  user = vpopmail
  unix_listener quota-warning {
    group = vchkpw
    mode = 0660
    user = dovenull
  }
}
sieve_script personal {
  active_path = ~/.sieve/dovecot.sieve
  driver = file
  path = ~/.sieve
}
mysql localhost {
  dbname = vpopmail
  password = # hidden, use -P to show it
  user = vpopmail
}
ssl_server {
  cert_file = /etc/pki/tls/certs/domain.tld.pem
  key_file = /etc/pki/tls/private/domain.tld.key
}
_______________________________________________
dovecot mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to