DOVECONF(1) Dovecot DOVECONF(1)
NAME
doveconf - Dovecot's configuration dumping utility
SYNOPSIS
doveconf [-aCdFInPNUwx] [-c config-file] [-f filter]
doveconf [-n] [-c config-file] section_name ...
doveconf [-h] [-c config-file] [-f filter] setting_name ...
DESCRIPTION
doveconf reads and parses Dovecot's configuration files and converts
them into a simpler format used by the rest of Dovecot.
All standalone programs, such as dovecot(1), will first get their set-
tings by executing doveconf, unless they can get the settings by con-
necting to the config UNIX socket.
For system administrators, doveconf is mainly useful for inspecting the
current configuration in an easy human readable format, checking indi-
vidual settings, and comparing configured values against their
defaults.
It can also be used to inspect configuration @groups by querying them
directly.
OPTIONS
-a
Show all settings with their currently configured values.
-C
TODO (check full config).
-c config-file
Read configuration from the given config-file. By default
/etc/dovecot/dovecot.conf will be used.
-d
Show the setting's default value instead of the one currently con-
figured.
This can also be used to show the contents of default setting
groups by querying the group name directly, for example:
doveconf -d @mailbox_defaults/english
-F
Show the configuration in a filter-based format, which is how Dove-
cot internally accesses it. This can be useful for debugging why
configuration is not working as expected.
The settings are grouped into different "structs", which are all
accessed independently. A new struct is started in the output as #
struct_name.
Next is the list of filters, which begin with :FILTER followed by
the filter in the event filter syntax. An empty filter matches
everything. The filters are processed from end to beginning. The
settings are taken from the first matching filter (i.e. the last in
the output). Since not all filters have all settings defined, the
processing continues until all settings have been found.
Named list filter such as protocols = imap pop3 are shown as proto-
col/imap=yes and protocol/pop3=yes # stop list. The "stop list"
means that the value is not modified by any following filters that
match. If the setting was defined as protocols { imap=yes, pop3=yes
}, the "stop list" would be missing, because this setting is only
adding the protocols, not replacing the list.
Settings groups are included in :INCLUDE lines. The includes are
processed last, after all filters have been applied, so all set-
tings inside the groups can be overridden.
-f filter
Show the matching configuration for the specified filter condition.
The filter option string has to be given as name = value pair. For
multiple filter conditions the -f option can be supplied multiple
times.
Possible names for the filter are:
protocol : The protocol, e.g. imap or pop3
local_name : The local hostname for TLS SNI matching, e.g.
mail.example.com.
This matches filters which were configured like:
local_name mail.example.com { # special settings }
local : The local hostname or IP address.
This matches filters which were configured like:
local 1.2.3.0/24 { # special settings }
remote : The client's hostname or IP address.
This matches filters which were configured like:
remote 1.2.3.0/24 { # special settings }
-h
Hide the setting's name, show only the setting's value.
-I
TODO (dump config import).
-n
Show only settings with non-default values. This is the default
behavior when no other parameters are given.
-N
Show settings with non-default values and explicitly set default
values.
-s
Show also hidden settings. The hidden settings should not be
changed normally.
-P
Show passwords and other sensitive values.
-U
Ignore all unknown settings in config file.
-w
TODO (hide obsolete warnings).
-x
Expand configuration variables (e.g. $ENV:foo) and show file con-
tents (from e.g. ssl_server_key_password = </etc/ssl/password.txt).
-X
Reverse of -x. This option takes precedence if present.
section_name
Show only the current configuration of one or more specified sec-
tions.
setting_name
Show only the setting of one or more setting_name(s) with the cur-
rently configured value. You can show a setting inside a section
using / as the section separator, e.g. service/imap/executable.
EXAMPLE
Show only settings with non-default values (default behavior):
doveconf -n
Show all settings with their default values:
doveconf -ad
Show the contents of a default settings group:
doveconf -d @mailbox_defaults/english
When Dovecot was configured to use different settings for some net-
works/subnets it is possible to show which settings will be applied for
a specific connection.
doveconf -f local=10.0.0.110 -f remote=10.11.1.2 -f protocol=pop3 -n
Ask doveconf for a global setting:
doveconf mail_plugins
mail_plugins = quota
Ask doveconf for a protocol specific setting. Uses the -h option, in
order to hide the setting's name:
doveconf -h -f protocol=imap login_greeting
Dovecot ready.
Dump a whole configuration section:
doveconf service
service imap {
...
}
service pop3 {
...
}
Or dump only the imap service:
doveconf service/imap
service imap {
...
}
REPORTING BUGS
Report bugs, including doveconf -n output, to the Dovecot Mailing List
<dovecot AT dovecot.org>. Information about reporting bugs is available
at: <https://dovecot.org/bugreport.html>
SEE ALSO
doveadm(1)
e5ac02a May 2026 DOVECONF(1)