DOVEADM-AUTH(1)
π DOVEADM-AUTH π
okay bestie, welcome to doveadm-auth from the Dovecot manual, section 1 π«Ά this is the part of doveadm(1) that handles β¨authenticationβ¨ stuff β flushing it, looking it up, testing it. iconic behaviour honestly.
πΈ NAME πΈ
doveadm-auth β flush/lookup/test authentication data π
π SYNOPSIS π
doveadm [GLOBAL OPTIONS] auth command [OPTIONS] [ARGUMENTS]
like. that's the whole shape of it. you got your global options, you say auth, you pick a command, and then the command gets its own options and arguments. slay.
π¦ DESCRIPTION π¦
the doveadm auth COMMANDS are literally here so you can do all kinds of authentication-related actions. that's it. that's the vibe. no cap.
β¨ GLOBAL OPTIONS β¨
these are the global doveadm(1) options, so they apply across the board, not just to auth:
-Dβ turns on verbosity and debug messages. messy but informative, we love her.-Oβ do not read any config file at all, just use the defaults. heads up tho: thedovecot_storage_versionsetting defaults to the latest version, but you can override it with-o.-kβ preserve the entire environment fordoveadm, not just theimport_environmentsetting. full send, no filter.-vβ enables verbosity, including a progress counter. so you can watch the little numbers go up π-iinstance-name β if you're running multiple Dovecot instances, this picks which config file to use based on the instance name. check theinstance_namesetting for the deets.-cconfig-file β read configuration from the given config-file. by default it reads the config socket first, and then falls back to/etc/dovecot/dovecot.conf. you can also point this at the config socket of some instance running a compatible version. versatile queen.-osetting=value β overrides the configuration setting from/etc/dovecot/dovecot.confand from the userdb with the given value. wanna override multiple settings? just pass-omultiple times. periodt.-fformatter β specifies the formatter for formatting the output. the supported formatters are:flowβ prints each line withkey=valuepairs.jsonβ prints a JSON array of JSON objects.pagerβ prints eachkey: valuepair on its own line and separates records with the form feed character (^L).tabβ prints a table header followed by tab separated value lines.tableβ prints a table header followed by adjusted value lines.
π OPTIONS π
-xauth_info β auth_info specifies additional conditions for theusercommand. the auth_info option string has to be given as aname = valuepair. for multiple conditions, the-xoption could be supplied multiple times. stack 'em.
the possible names for the auth_info are:
serviceβ the service for which the userdb lookup should be tested. the value may be the name of a service, commonly used with Dovecot. for example:imap,pop3orsmtp.sessionβ session identifier.lipβ the local IP address (server) for the test.ripβ the remote IP address (client) for the test.lportβ the local port, e.g.143rportβ the remote port, e.g.24567real_lipβ the local IP to which the client connected on this host.real_ripβ the remote IP where client connected from to this host.real_lportβ the local port to which client connected to to this host.real_rportβ the remote port from where the client connected from to this host.forward_<field>β field to forward as%{forward:field}to auth process.
π ARGUMENTS π
- user β the user's login name. depending on the configuration, the login name may be for example
janeorjohn@example.com. iykyk. - password β optionally the user's password.
doveadm(1)will prompt for the password, if none was given. so don't stress, she'll ask π«Ά
π COMMANDS π
π§Ό auth cache flush
doveadm [GLOBAL OPTIONS] auth cache flush [-a master_socket_path] [user-mask ...]
Bestie, this one flushes the authentication cache. By default the cache is flushed for all the users β which, fun fact, you can also pull off by sending SIGHUP to the auth process. And if you only wanna nuke one or a few users, just hand over a user-mask that matches their usernames. β¨
-amaster_socket_path β this option lets you point at an absolute path to an alternative UNIX domain socket. By defaultdoveadm(1)will use the socket/rundir/auth-master. That socket might be living somewhere else entirely if the defaultbase_dirsetting got overridden in/etc/dovecot/dovecot.conf. π-xauth_info βauth_infois where you drop additional conditions for the user command. It has to be given as aname = valuepair. Need more than one condition? Just supply the-xoption multiple times, no big deal. πββοΈ
Possible names for the auth_info are:
serviceβ the service for which the userdb lookup should be tested. The value may be the name of a service, commonly used with Dovecot. For example:imap,pop3orsmtp.sessionβ session identifier.lipβ the local IP address (server) for the test.ripβ the remote IP address (client) for the test.lportβ the local port, e.g.143rportβ the remote port, e.g.24567real_lipβ the local IP to which the client connected on this host.real_ripβ the remote IP where client connected from to this host.real_lportβ the local port to which client connected to to this host.real_rportβ the remote port from where the client connected from to this host.forward_<field>β field to forward as%{forward:field}to auth process.
π auth lookup
doveadm [GLOBAL OPTIONS] auth lookup [-a userdb_socket_path] [-x auth_info] [-f field] user [...]
Super similar to the doveadm-user(1) command, except it performs a passdb lookup (without authentication) instead of a userdb lookup. Sneaky little switch-up, honestly iconic. π
-auserdb_socket_path β this option specifies an absolute path to an alternative UNIX domain socket. By defaultdoveadm(1)will use the socket/rundir/auth-userdb. That socket may sit in another directory when the defaultbase_dirsetting was overridden in/etc/dovecot/dovecot.conf. πΈ-ffield β when this option and the name of a userdb field are given,doveadm(1)will show only the value of the specified field. Just the value, nothing else, periodt. π―-xauth_info βauth_infospecifies additional conditions for the user command. Theauth_infooption string has to be given as aname = valuepair. For multiple conditions the-xoption could be supplied multiple times. π«
Possible names for the auth_info are:
serviceβ the service for which the userdb lookup should be tested. The value may be the name of a service, commonly used with Dovecot. For example:imap,pop3orsmtp.sessionβ session identifier.lipβ the local IP address (server) for the test.ripβ the remote IP address (client) for the test.lportβ the local port, e.g.143rportβ the remote port, e.g.24567real_lipβ the local IP to which the client connected on this host.real_ripβ the remote IP where client connected from to this host.real_lportβ the local port to which client connected to to this host.real_rportβ the remote port from where the client connected from to this host.forward_<field>β field to forward as%{forward:field}to auth process.
π§ͺ auth test
doveadm [GLOBAL OPTIONS] auth test [-a auth_socket_path] [-A sasl_mech] [-x auth_info] user [password]
Tests authentication for the given user. Vibe check on the credentials, basically. π
-aauth_socket_path β this option specifies an absolute path to an alternative UNIX domain socket. By defaultdoveadm(1)will use the socket/rundir/auth-client. The socket may be located in another directory when the defaultbase_dirsetting was overridden in/etc/dovecot/dovecot.conf. π‘-Asasl_mech β the SASL mechanism used for the authentication. By defaultPLAINis used. No cap. π-xauth_info βauth_infospecifies additional conditions for the user command. Theauth_infooption string has to be given as aname = valuepair. For multiple conditions the-xoption could be supplied multiple times. π«Ά
Possible names for the auth_info are:
serviceβ the service for which the userdb lookup should be tested. The value may be the name of a service, commonly used with Dovecot. For example:imap,pop3orsmtp.sessionβ session identifier.lipβ the local IP address (server) for the test.ripβ the remote IP address (client) for the test.lportβ the local port, e.g.143rportβ the remote port, e.g.24567real_lipβ the local IP to which the client connected on this host.real_ripβ the remote IP where client connected from to this host.real_lportβ the local port to which client connected to to this host.real_rportβ the remote port from where the client connected from to this host.forward_<field>β field to forward as%{forward:field}to auth process.
πͺ auth login
doveadm [GLOBAL OPTIONS] auth login [-a auth_socket_path] [-m auth_master_socket_path] [-A sasl_mech] [-x auth_info] user [password]
Tests a full login for the given user β meaning it does both the passdb lookup (authentication) and the userdb lookup (login). The whole glow-up, start to finish. π
-aauth_socket_path β this option specifies an absolute path to an alternative UNIX domain socket. By defaultdoveadm(1)will use the socket/rundir/auth-client. The socket may be located in another directory when the defaultbase_dirsetting was overridden in/etc/dovecot/dovecot.conf. π·-mauth_master_socket_path β this option specifies an absolute path to an alternative UNIX domain socket for the master socket. By defaultdoveadm(1)will use the socket/rundir/auth-master. The socket may be located in another directory when the defaultbase_dirsetting was overridden in/etc/dovecot/dovecot.conf. ποΈ-Asasl_mech β the SASL mechanism used for the authentication. By defaultPLAINis used. β-xauth_info βauth_infospecifies additional conditions for the user command. Theauth_infooption string has to be given as aname = valuepair. For multiple conditions the-xoption could be supplied multiple times. π
Possible names for the auth_info are:
serviceβ the service for which the userdb lookup should be tested. The value may be the name of a service, commonly used with Dovecot. For example:imap,pop3orsmtp.sessionβ session identifier.lipβ the local IP address (server) for the test.ripβ the remote IP address (client) for the test.lportβ the local port, e.g.143rportβ the remote port, e.g.24567real_lipβ the local IP to which the client connected on this host.real_ripβ the remote IP where client connected from to this host.real_lportβ the local port to which client connected to to this host.real_rportβ the remote port from where the client connected from to this host.forward_<field>β field to forward as%{forward:field}to auth process.
π EXAMPLE π
This example demonstrates an imap authentication test for user john, assuming the user is connected from the host with the IP address 192.0.2.143.
doveadm auth test -x service=imap -x rip=192.0.2.143 john
Password:
passdb: john auth succeeded
extra fields:
user=john
She ate and left no crumbs. π
π REPORTING BUGS π
Found a bug? π Report bugs, including doveconf -n output, to the Dovecot Mailing List β¨dovecot@dovecot.orgβ©. Info about reporting bugs lives at: β¨https://dovecot.org/bugreport.htmlβ©
Don't forget the doveconf -n output bestie, they need the receipts. π§Ύ
π SEE ALSO π
That's the whole page, babe β brought to you from source version f979264, dated April 2026. Go forth and authenticate responsibly. π
β¨π
π¦ where this page comes from
- alpine 3.23: dovecot-doc 2.4.5-r0 Β· MIT AND LGPL-2.1-or-later
- alpine 3.24: dovecot-doc 2.4.5-r0 Β· MIT AND LGPL-2.1-or-later
- arch rolling: dovecot 2.4.5-1 Β· MIT AND LGPL-2.1-only
- fedora 43: dovecot 1:2.4.5-1.fc43 Β· MIT AND LGPL-2.1-only
- fedora 44: dovecot 1:2.4.5-1.fc44 Β· MIT AND LGPL-2.1-only
- nixos 26.05: dovecot 2.4.5
- nixpkgs unstable: dovecot 2.4.5
- opensuse-leap 16.0: dovecot24 2.4.5-160000.1.1 Β· BSD-3-Clause AND LGPL-2.1-or-later AND MIT
- opensuse-leap 16.0: dovecot24 2.4.5-160000.1.1 Β· BSD-3-Clause AND LGPL-2.1-or-later AND MIT
- opensuse-leap 16.0: dovecot24 2.4.5-160000.1.1 Β· BSD-3-Clause AND LGPL-2.1-or-later AND MIT
- opensuse-leap 16.0: dovecot24 2.4.5-160000.1.1 Β· BSD-3-Clause AND LGPL-2.1-or-later AND MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms