dovecot-example.conf revision 9e89f1d9d0ef06a4ae086a13270b57d76074cfe6
f79d43bbe70a01454049b77d6f15f6369744959eStéphane Graber## Dovecot 1.0 configuration file
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# '#' character and everything after it is treated as comments. Extra spaces
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# and tabs are ignored. If you want to use either of these explicitly, put the
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# value inside quotes, eg.: key = "# char and trailing whitespace "
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# Default values are shown after each value, it's not required to uncomment
9afe19d634946d50eab30e3b90cb5cebcde39eeaDaniel Lezcano# any of the lines. Exception to this are paths, they're just examples
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# with real defaults being based on configure options. The paths listed here
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# are for configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# --with-ssldir=/etc/ssl
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# Base directory where to store runtime data.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#base_dir = /var/run/dovecot/
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# Protocols we want to be serving:
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# imap imaps pop3 pop3s
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#protocols = imap imaps
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# IP or host address where to listen in for connections. It's not currently
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# possible to specify multiple addresses. "*" listens in all IPv4 interfaces.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# "[::]" listens in all IPv6 interfaces, but may also listen in all IPv4
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# interfaces depending on the operating system. You can specify ports with
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# "host:port", although with multiple protocols you probably want to move this
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# setting inside protocol imap/pop3 { ... } section, so you can specify
7f95145833bb24f54e037f73ecc37444d6635697Dwight Engen# different ports for IMAP/POP3.
99e4008cad9e959b683c6f48411fcf15a92be3b5Michel Normand# IP or host address where to listen in for SSL connections. Defaults
99e4008cad9e959b683c6f48411fcf15a92be3b5Michel Normand# to above if not specified.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#ssl_listen =
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# Disable SSL/TLS support.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#ssl_disable = no
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# PEM encoded X.509 SSL/TLS certificate and private key. They're opened before
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# dropping root privileges, so keep the key file unreadable by anyone but
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# root. Included doc/mkcert.sh can be used to easily generate self-signed
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# certificate, just make sure to update the domains in dovecot-openssl.cnf
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#ssl_cert_file = /etc/ssl/certs/dovecot.pem
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#ssl_key_file = /etc/ssl/private/dovecot.pem
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# File containing trusted SSL certificate authorities. Usually not needed.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#ssl_ca_file =
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# Request client to send a certificate.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#ssl_verify_client_cert = no
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# SSL parameter file. Master process generates this file for login processes.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# It contains Diffie Hellman and RSA parameters.
b4578c5b380130a41a69b5b49c970157acaf1dbbDwight Engen#ssl_parameters_file = /var/run/dovecot/ssl-parameters.dat
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# How often to regenerate the SSL parameters file. Generation is quite CPU
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# intensive operation. The value is in hours, 0 disables regeneration
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#ssl_parameters_regenerate = 24
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# SSL ciphers to use
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#ssl_cipher_list = all:!low
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# Disable LOGIN command and all other plaintext authentications unless
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# SSL/TLS is used (LOGINDISABLED capability). Note that 127.*.*.* and
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# IPv6 ::1 addresses are considered secure, this setting has no effect if
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# you connect from those addresses.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#disable_plaintext_auth = yes
10fba81b9d0221b8e47aa1e0b43236413b7d28dfMichel Normand# Use this logfile instead of syslog(). /dev/stderr can be used if you want to
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# use stderr for logging (ONLY /dev/stderr - otherwise it is closed).
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# For informational messages, use this logfile instead of the default
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#info_log_path =
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# Prefix for each line written to log file. % codes are in strftime(3)
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#log_timestamp = "%b %d %H:%M:%S "
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano## Login processes
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# Directory where authentication process places authentication UNIX sockets
f79d43bbe70a01454049b77d6f15f6369744959eStéphane Graber# which login needs to be able to connect to. The sockets are created when
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# running as root, so you don't have to worry about permissions. Note that
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# everything in this directory is deleted when Dovecot is started.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# chroot login process to the login_dir. Only reason not to do this is if you
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# wish to run the whole Dovecot without roots.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#login_chroot = yes
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# User to use for the login process. Create a completely new user for this,
f79d43bbe70a01454049b77d6f15f6369744959eStéphane Graber# and don't use it anywhere else. The user must also belong to a group where
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# only it has access, it's used to control access for authentication process.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#login_user = dovecot
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# Set max. process size in megabytes. If you don't use
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# login_process_per_connection you might need to grow this.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#login_process_size = 32
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# Should each login be processed in it's own process (yes), or should one
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# login process be allowed to process multiple connections (no)? Yes is more
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# secure, espcially with SSL/TLS enabled. No is faster since there's no need
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# to create processes all the time.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#login_process_per_connection = yes
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# Number of login processes to create. If login_process_per_user is
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# yes, this is the number of extra processes waiting for users to log in.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#login_processes_count = 3
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# Maximum number of extra login processes to create. The extra process count
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# usually stays at login_processes_count, but when multiple users start logging
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# in at the same time more extra processes are created. To prevent fork-bombing
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# we check only once in a second if new processes should be created - if all
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# of them are used at the time, we double their amount until limit set by this
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# setting is reached. This setting is used only if login_process_per_use is yes.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#login_max_processes_count = 128
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# Maximum number of connections allowed in login state. When this limit is
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# reached, the oldest connections are dropped. If login_process_per_user
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# is no, this is a per-process value, so the absolute maximum number of users
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano# logging in actually login_processes_count * max_logging_users.
d823d5b966f49d975a09a8512d084389d6d7ffc7dlezcano#login_max_logging_users = 256
# allow shell access for users. See doc/configuration.txt for more information.
# doc/mail-storages.txt. There's a few special variables you can use, eg.:
# See doc/variables.txt for full list. Some examples:
# MessagePart - FETCH BODY[1.2.3] (ie. body parts), RFC822.SIZE,
# SEARCH SMALLER, LARGER, also speeds up BODY/BODYSTRUCTURE
# Log prefix for mail processes. See doc/variables.txt for list of possible
#auth_executable = /usr/libexec/dovecot/dovecot-auth
# userdb = ldap /etc/dovecot-ldap.conf
# passdb = ldap /etc/dovecot-ldap.conf
# userdb = passwd-file /etc/passwd.imap
# passdb = passwd-file /etc/passwd.imap
# path = /var/run/dovecot/auth-master
# path = /var/run/dovecot-auth-client
# path = /var/run/dovecot/auth-master