[Dovecot] Strange behaviour with multiple auth channels
Søren P. Skou
sps at t-rex.dk
Sat Jan 15 11:03:34 EET 2005
Hey all
Just upgraded to Test-61 and at first everything looked like it worked
without a hitch, I could log in and check mail (yay! ;-) ).
Since I could log in, I never suspected anything would be amiss. Later
one of my users told me he could no longer log in, regardless what he
tried. Password error I thought and told him to go change his password,
but then he explained he had not changed anything, and that his pop3
client just started complaining.
Ok, time to go looking - I compared the dovecot.conf to the example from
the tarball, nothing seemed as if it had changed. Then I started
fiddling around to see if I could get any pattern.
At that point I had two auth channels:
auth default {
mechanisms = plain
userdb = sql /usr/local/etc/dovecot/sql.conf
passdb = sql /usr/local/etc/dovecot/sql.conf
user = mail
}
auth localuser {
mechanisms = plain
userdb = passwd home=/home/%u/Mail
passdb = passwd home=/home/%u/Mail
}
Strangely enough I could see it connecting to the SQL database, I would
have expected to see at least some queries when it checked for the user.
But no.
So I changed the configuration to:
auth default {
mechanisms = plain
userdb = passwd home=/home/%u/Mail
passdb = passwd home=/home/%u/Mail
}
auth virtualuser {
mechanisms = plain
userdb = sql /usr/local/etc/dovecot/sql.conf
passdb = sql /usr/local/etc/dovecot/sql.conf
user = mail
}
Lo and behold, my virtual users could log in - but now localusers could
no longer. I've since then tried changing the auth default to auth
localuser, but little does it do - I'm sort of out of my bounds here,
everything works, but only if it is the second auth.
The first channel seems to be ignored. So I tried adding more channels
seeing what would happen. My current configuration looks like this:
auth default {
mechanisms = plain
userdb = sql /usr/local/etc/dovecot/sql.conf
passdb = sql /usr/local/etc/dovecot/sql.conf
user = mail
}
auth localuser {
mechanisms = plain
userdb = passwd home=/home/%u/Mail
passdb = passwd home=/home/%u/Mail
}
auth virtualuser {
mechanisms = plain
userdb = sql /usr/local/etc/dovecot/sql.conf
passdb = sql /usr/local/etc/dovecot/sql.conf
user = mail
}
As I suspected it grabs hold of localuser and uses that one.
Any suggestions or "Well d'uh! you're missing...." would be welcome ;-)
Friendly greetings
S. P. Skou
--
GPG Key: 8E58ACB3
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 209 bytes
Desc: not available
URL: <http://dovecot.org/pipermail/dovecot/attachments/20050115/8db6729c/attachment-0001.bin>
More information about the dovecot
mailing list