mirror of
https://github.com/pikami/mail-server.git
synced 2024-11-29 05:15:43 +00:00
128 lines
2.6 KiB
Plaintext
128 lines
2.6 KiB
Plaintext
# Enable ssl
|
|
ssl = required
|
|
ssl_cert = < /etc/ssl/{{ mx1_mail_domain }}.fullchain.pem
|
|
ssl_key = < /etc/ssl/private/{{ mx1_mail_domain }}.key
|
|
|
|
ssl_min_protocol = TLSv1.2
|
|
ssl_prefer_server_ciphers = yes
|
|
|
|
disable_plaintext_auth = yes
|
|
|
|
# Define used protocols
|
|
protocols = lmtp imap sieve
|
|
|
|
service lmtp {
|
|
unix_listener lmtp {
|
|
user = vmail
|
|
group = vmail
|
|
}
|
|
}
|
|
|
|
service imap-login {
|
|
inet_listener imap {
|
|
port = 143
|
|
}
|
|
inet_listener imaps {
|
|
port = 993
|
|
}
|
|
}
|
|
|
|
# Setup users
|
|
passdb {
|
|
driver = passwd-file
|
|
args = scheme=ARGON2ID-CRYPT username_format=%u /etc/dovecot/users
|
|
}
|
|
|
|
userdb {
|
|
driver = passwd-file
|
|
args = username_format=%u /etc/dovecot/users
|
|
override_fields = uid=vmail gid=vmail home=/var/mail/vmail/%d/%n
|
|
}
|
|
|
|
# Setup mail location
|
|
mail_location = maildir:~/Maildir
|
|
|
|
# setup auth listener
|
|
service auth {
|
|
unix_listener auth-userdb {
|
|
mode = 0660
|
|
user = vmail
|
|
group = vmail
|
|
}
|
|
}
|
|
|
|
# change the authworker to run as non-root
|
|
service auth-worker {
|
|
user = $default_internal_user
|
|
}
|
|
|
|
# setup local delivery options
|
|
quota_full_tempfail = yes
|
|
protocol lda {
|
|
mail_plugins = $mail_plugins sieve
|
|
}
|
|
# setup some common mailboxes that are used by different clients to consistent destinations
|
|
namespace inbox {
|
|
inbox = yes
|
|
mailbox Spam {
|
|
special_use = \Junk
|
|
}
|
|
mailbox "Deleted Items" {
|
|
special_use = \Trash
|
|
}
|
|
}
|
|
|
|
# setup local delivery protocol
|
|
protocol lmtp {
|
|
mail_plugins = $mail_plugins sieve
|
|
}
|
|
|
|
# disable verify quota befor replying rcpt to
|
|
lmtp_rcpt_check_quota = no
|
|
|
|
# setup stats service
|
|
service stats {
|
|
unix_listener stats-writer {
|
|
user =
|
|
group = $default_internal_group
|
|
mode = 0660
|
|
}
|
|
}
|
|
|
|
# enable mail plugins
|
|
mail_plugins = $mail_plugins notify
|
|
|
|
# setup metrics
|
|
metric auth_success {
|
|
filter = event=auth_request_finished AND success=yes
|
|
}
|
|
metric auth_failures {
|
|
filter = event=auth_request_finished AND NOT success=yes
|
|
}
|
|
metric imap_command {
|
|
filter = event=imap_command_finished
|
|
group_by = cmd_name tagged_reply_state
|
|
}
|
|
metric smtp_command {
|
|
filter = event=smtp_server_command_finished
|
|
group_by = cmd_name status_code duration:exponential:1:5:10
|
|
}
|
|
metric mail_delivery {
|
|
filter = event=mail_delivery_finsihed
|
|
group_by = duration:exponential:1:5:10
|
|
}
|
|
|
|
# enable IMAP protocol
|
|
protocol imap {
|
|
mail_plugins = $mail_plugins imap_sieve
|
|
}
|
|
|
|
# setup sieve plugin options
|
|
# enable if there needs to be default sieve processing
|
|
#plugin {
|
|
# sieve_pipe_bin_dir = /usr/local/lib/dovecot/sieve
|
|
# sieve_before = /etc/dovecot/sieve/default.sieve
|
|
# sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.environment
|
|
# sieve_plugins = sieve_imapsieve sieve_extprograms
|
|
#}
|