[Dovecot] problems with Debian Sarge
Hi folks,
I've updated my dovecot 0.99.14 with the last package (0.99.14-1sarge0), but it doesn't work. I've found that problem:
http://comments.gmane.org/gmane.linux.debian.devel.bugs.general/80872
then I've removed that, and reinstalled first package (from /var/cache/apt/archives), and NOW it doesnt' work too :(
When I start the daemon, I see in my logs:
dovecot: May 31 12:40:28 Info: Dovecot starting up dovecot-auth: May 31 12:40:29 Fatal: Unknown userdb type 'vpopmail' dovecot: May 31 12:40:29 Error: Auth process died too early - shutting down dovecot: May 31 12:40:29 Error: child 15798 (auth) returned error 89 imap-login: May 31 12:40:29 Fatal: fd_send(-1) failed: No such file or directory imap-login: May 31 12:40:29 Fatal: fd_send(-1) failed: No such file or directory
I don't understand. Any advice will be appreciated Best Regards Andrea
my dovecot.conf is like that:
Dovecot 1.0 configuration file
<...>
Protocols we want to be serving:
imap imaps pop3 pop3s
protocols = imaps
<...>
IP or host address where to listen in for SSL connections. Defaults
to above non-SSL equilevants if not specified.
imaps_listen = 192.168.17.10:993 #pop3s_listen =
Disable SSL/TLS support.
ssl_disable = no
PEM encoded X.509 SSL/TLS certificate and private key. They're opened before
dropping root privileges, so keep the key file unreadable by anyone but
root.
#ssl_cert_file = /etc/ssl/certs/dovecot.pem #ssl_key_file = /etc/ssl/private/dovecot.pem ssl_cert_file = /var/qmail/control/servercert.pem ssl_key_file = /var/qmail/control/servercert.pem
<...>
Use this logfile instead of syslog(). /dev/stderr can be used if you want to
use stderr for logging (ONLY /dev/stderr - otherwise it is closed).
log_path = /var/log/dovecot.log
For informational messages, use this logfile instead of the default
info_log_path = /var/log/dovecot.log
<...>
IMAP login process
login = imap
Executable location.
#login_executable = /usr/lib/dovecot/imap-login
User to use for the login process. Create a completely new user for this,
and don't use it anywhere else. The user must also belong to a group where
only it has access, it's used to control access for authentication process.
Note that this user is NOT used to access mails.
http://wiki.dovecot.org/UserIds
login_user = dovecot
<...>
Mail processes
Maximum number of running mail processes. When this limit is reached,
new users aren't allowed to log in.
#max_mail_processes = 1024
Show more verbose process titles (in ps). Currently shows user name and
IP address. Useful for seeing who are actually using the IMAP processes
(eg. shared mailboxes or if same uid is used for multiple accounts).
verbose_proctitle = no
Show protocol level SSL errors.
#verbose_ssl = no
Valid UID range for users, defaults to 500 and above. This is mostly
to make sure that users can't log in as daemons or other system users.
Note that denying root logins is hardcoded to dovecot binary and can't
be done even if first_valid_uid is set to 0.
first_valid_uid = 89 last_valid_uid = 89
Valid GID range for users, defaults to non-root/wheel. Users having
non-valid GID as primary group ID aren't allowed to log in. If user
belongs to supplementary groups with non-valid GIDs, those groups are
not set.
first_valid_gid = 0 #last_valid_gid = 0
<...>
Default MAIL environment to use when it's not set. By leaving this empty
dovecot tries to do some automatic detection as described in
/usr/share/doc/dovecot-common/mail-storages.txt. There's a few special
variables you can use:
%u - username
%n - user part in user@domain, same as %u if there's no domain
%d - domain part in user@domain, empty if user there's no domain
%h - home directory
You can also limit a width of string by giving the number of max. characters
after the '%' character. For example %1u gives the first character of
username. Some examples:
default_mail_env = maildir:/var/mail/%1u/%u/Maildir
default_mail_env = mbox:~/mail/:INBOX=/var/mail/%u
default_mail_env = mbox:/var/mail/%d/%n/:INDEX=/var/indexes/%d/%n
default_mail_env = maildir:~/Maildir
<...>
Workarounds for various client bugs:
oe6-fetch-no-newmail:
Never send EXISTS/RECENT when replying to FETCH command. Outlook Express
seems to think they are FETCH replies and gives user "Message no longer
in server" error. Note that OE6 still breaks even with this workaround
if synchronization is set to "Headers Only".
outlook-idle:
Outlook and Outlook Express never abort IDLE command, so if no mail
arrives in half a hour, Dovecot closes the connection. This is still
fine, except Outlook doesn't connect back so you don't see if new mail
arrives.
outlook-pop3-no-nuls:
Outlook and Outlook Express hang if mails contain NUL characters.
This setting replaces them with 0x80 character.
client_workarounds = oe6-fetch-no-newmail outlook-idle outlook-pop3-no-nuls
<...>
Copy mail to another folders using hard links. This is much faster than
actually copying the file. This is problematic only if something modifies
the mail in one folder but doesn't want it modified in the others. I don't
know any MUA which would modify mail files directly. IMAP protocol also
requires that the mails don't change, so it would be problematic in any case.
If you care about performance, enable it.
maildir_copy_with_hardlinks = yes
<...>
Authentication processes
An Authentication process is a child process used by Dovecot that
handles the authentication steps. The steps cover an authentication
mechanism (auth_mechanisms, how the client authenticates in the IMAP or
POP3 protocol), which password database should be queried (auth_passdb),
and which user database should be queried (auth_userdb, to obtain
UID, GID, and location of the user's mailbox/home directory).
You can have multiple processes, though a typical configuration will
have only one. Each time "auth = xx" is seen, a new process
definition is started. The point of multiple processes is to be able
to set stricter permissions. (See auth_user below.)
Just remember that only one Authentication process is asked for the
password, so you can't have different passwords accessible through
different process definitions (unless they have different
auth_mechanisms, and you're ok with having different password for
each mechanisms).
Authentication process name.
auth = default
Specifies how the client authenticates in the IMAP protocol.
Space separated list of permitted authentication mechanisms:
anonymous plain digest-md5 cram-md5
anonymous - No authentication required.
plain - The password is sent as plain text. All IMAP/POP3 clients
support this, and the password can be encrypted by Dovecot to match
any of the encryption schemes used in password databases.
digest-md5 and cram-md5 - both encrypt the password so it is more
secure in transit, but are not well supported by clients, and
require that the password database use a matching encryption
scheme (or be in plaintext).
See auth.txt for more details.
If you are using SSL there is less benefit to digest-md5 and
cram-md5 as the communication is already encrypted.
auth_mechanisms = plain
Space separated list of realms for SASL authentication mechanisms that need
them. You can leave it empty if you don't want to support multiple realms.
Many clients simply use the first one listed here, so keep the default realm
first.
#auth_realms =
Default realm/domain to use if none was specified. This is used for both
SASL realms and appending @domain to username in plaintext logins.
#auth_default_realm =
User database specifies where mails are located and what user/group IDs
own them. For single-UID configuration use "static".
http://wiki.dovecot.org/Authentication
http://wiki.dovecot.org/VirtualUsers
passwd: /etc/passwd or similiar, using getpwnam()
passwd-file <path>: passwd-like file with specified location
static uid=<uid> gid=<gid> home=<dir template>: static settings
vpopmail: vpopmail library
ldap <config path>: LDAP, see /etc/dovecot/dovecot-ldap.conf
mysql <config path>: a MySQL database, see /etc/dovecot/dovecot-mysql.conf
pgsql <config path>: a PostgreSQL database, see
/etc/dovecot/dovecot-pgsql.conf
auth_userdb = vpopmail
Password database specifies only the passwords for users.
http://wiki.dovecot.org/Authentication
passwd: /etc/passwd or similiar, using getpwnam()
shadow: /etc/shadow or similiar, using getspnam()
pam [<service> | *]: PAM authentication
passwd-file <path>: passwd-like file with specified location
vpopmail: vpopmail authentication
ldap <config path>: LDAP, see /etc/dovecot/dovecot-ldap.conf
mysql <config path>: a MySQL database, see /etc/dovecot/dovecot-mysql.conf
pgsql <config path>: a PostgreSQL database, see
/etc/dovecot/dovecot-pgsql.conf
auth_passdb = vpopmail
#auth_executable = /usr/lib/dovecot/dovecot-auth
Set max. process size in megabytes.
#auth_process_size = 256
User to use for the process. This user needs access to only user and
password databases, nothing else. Only shadow and pam authentication
requires roots, so use something else if possible. Note that passwd
authentication with BSDs internally accesses shadow files, which also
requires roots. Note that this user is NOT used to access mails.
That user is specified by auth_userdb above.
auth_user = root
<...>
Hi,
El Miércoles, 31 de Mayo de 2006 12:52, Andrea Riela escribió:
When I start the daemon, I see in my logs:
dovecot: May 31 12:40:28 Info: Dovecot starting up dovecot-auth: May 31 12:40:29 Fatal: Unknown userdb type 'vpopmail'
Are you using vpopmail? Try changing the next 2 lines in your dovecot.conf
auth_userdb = vpopmail auth_passdb = vpopmail
to
auth_userdb = passwd auth_passdb = pam
And try starting dovecot again.
Aaaaaaaaaagur.
Trying to make bits uncopyable is like trying to make water not wet. The sooner people accept this, and build business models that take this into account, the sooner people will start making money again. - Bruce Schneier
On Wed, 31 May 2006, Andrea Riela wrote:
Hi folks,
I've updated my dovecot 0.99.14 with the last package (0.99.14-1sarge0), but it doesn't work. I've found that problem:
http://comments.gmane.org/gmane.linux.debian.devel.bugs.general/80872
then I've removed that, and reinstalled first package (from /var/cache/apt/archives), and NOW it doesnt' work too :(
That wasn't the problem.
When I start the daemon, I see in my logs:
dovecot: May 31 12:40:28 Info: Dovecot starting up dovecot-auth: May 31 12:40:29 Fatal: Unknown userdb type 'vpopmail' dovecot: May 31 12:40:29 Error: Auth process died too early - shutting down dovecot: May 31 12:40:29 Error: child 15798 (auth) returned error 89 imap-login: May 31 12:40:29 Fatal: fd_send(-1) failed: No such file or directory imap-login: May 31 12:40:29 Fatal: fd_send(-1) failed: No such file or directory
I don't understand. Any advice will be appreciated
The Debian package is not built with vpopmail support. Use another type of userdb.
-- Jaldhar H. Vyas <jaldhar@debian.org> La Salle Debain - http://www.braincells.com/debian/
participants (3)
-
Andrea Riela
-
Jaldhar H. Vyas
-
Joseba Torre