Unable to get virtual users set up with database auth

Cliff Hayes chayes at afo.net
Thu Oct 16 16:02:53 UTC 2014


I can't seem to get imap virtual users to work with database 
authentication on new Scientific Linux 6.5 server with Sendmail 8.14.4 & 
Dovecot 2.0.9
Apparently I have to also create system users because 
sendmail/procmail/dovecot want to check directory ownership.
So I created a database, made entry for the user, created the user 
chayes on the system.
But %u always contains just chayes instead of chayes at domain.tld even 
though I tried different select statements to put the entire username in 
the username field.
This causes the following errors:

Oct 16 00:10:26 avalon sendmail[2536]: s9G5APo9002535: forward 
/var/spool/mail/chayes at domain.tld/chayes/.forward.avalon: Group writable 
directory
Oct 16 00:10:26 avalon sendmail[2536]: s9G5APo9002535: forward 
/var/spool/mail/chayes at domain.tld/chayes/.forward: Group writable directory
Oct 16 00:10:26 avalon dovecot: lda(chayes): Debug: Effective uid=497, 
gid=497, home=/var/spool/mail/chayes at domain.tld/chayes
Oct 16 00:10:26 avalon dovecot: lda(chayes): Debug: Home dir not found: 
/var/spool/mail/chayes at domain.tld/chayes
Oct 16 00:10:26 avalon dovecot: lda(chayes): Debug: Namespace : 
type=private, prefix=, sep=., inbox=yes, hidden=no, list=yes, 
subscriptions=yes 
location=mbox:/var/spool/mail/chayes:INBOX=/var/spool/mail/chayes
Oct 16 00:10:26 avalon dovecot: lda(chayes): Debug: fs: 
root=/var/spool/mail/chayes, index=, control=, inbox=/var/spool/mail/chayes
Oct 16 00:10:26 avalon dovecot: lda(chayes): Error: user chayes: 
Initialization failed: Namespace '': mbox: mbox root directory can't be 
a file: /var/spool/mail/chayes (http://wiki.dovecot.org/MailLocation/Mbox)
Oct 16 00:10:26 avalon dovecot: lda(chayes): Fatal: Invalid user 
settings. Refer to server log for more information.

protocols = imap

mail_location = mbox:/var/spool/mail/%u:INBOX=/var/spool/mail/%u

password_query = SELECT uNameDomain as username, uDomain as domain, 
uPass as password FROM users WHERE uName = '%n' AND uDomain = '%d'
also tried
password_query = SELECT uName as username, uDomain as domain, uPass as 
password FROM users WHERE uName = '%n' AND uDomain = '%d'

# file: /etc/procmailrc
# system-wide settings for procmail
SHELL="/bin/bash"
SENDMAIL="/usr/sbin/sendmail -oi -t"
LOGFILE="/var/log/procmail.log"
DROPPRIVS=yes
DELIVER="/usr/libexec/dovecot/deliver"
#MAILDIR=$HOME/
#DEFAULT=$HOME/
:0 w
* ^X-Spam-Status: Yes
| $DELIVER -m spam
:0 w
| $DELIVER

Thanks in advance


More information about the dovecot mailing list