HEX
Server: Apache
System: Linux vps-cdc32557.vps.ovh.ca 5.15.0-156-generic #166-Ubuntu SMP Sat Aug 9 00:02:46 UTC 2025 x86_64
User: hanode (1017)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //usr/share/doc/dovecot-core/wiki/AuthDatabase.Passwd.txt
Passwd
======

User is looked up using 'getpwnam()' call, which usually looks into
'/etc/passwd' file, but depending on NSS
[http://en.wikipedia.org/wiki/Name_Service_Switch] configuration it may also
look up the user from eg. LDAP database.

Most commonly used as a user database.

The lookup is by default done in the auth worker processes. If you have only a
small local passwd file, you can avoid having extra auth worker processes by
disabling it:

---%<-------------------------------------------------------------------------
userdb {
  driver = passwd
  args = blocking=no
}
---%<-------------------------------------------------------------------------

Field overriding and extra fields (obsolete in v2.1+)
-----------------------------------------------------

It's possible to override fields from passwd and add <extra fields>
[UserDatabase.ExtraFields.txt] with templates, but in v2.1+ it's done in a
better way by using override_fields. For example:

---%<-------------------------------------------------------------------------
userdb {
  driver = passwd
  # Pre-v2.1:
  #args = home=/var/mail/%u mail=maildir:/var/mail/%u/Maildir
  # v2.1+:
  override_fields = home=/var/mail/%u mail=maildir:/var/mail/%u/Maildir
}
---%<-------------------------------------------------------------------------

This uses the UID and GID fields from passwd, but home directory is overridden.
Also the default <mail_location> [MailLocation.txt] setting is overridden.

Passwd as a password database
-----------------------------

Many systems use shadow passwords nowadays so passwd doesn't usually work as a
password database. BSDs are an exception to this, they still set the password
field even with shadow passwords.

With FreeBSD, passwd doesn't work as a password database because the password
field is replaced by a '*'. But you can use <Passwd-file>
[AuthDatabase.PasswdFile.txt].

(This file was created from the wiki on 2019-06-19 12:42)