Hi All,
I'm new to the list and have a quota question. I am building a new server
with dovecot/qmail/vpopmail/mysql and
emails are sending and recieving fine when the quota is set to NOQUOTA, but
when the quota is changed qmail
doesn't deliver any messages. I have read the docs and still need some help
understanding the process for dovecot
quotas relating to the vpopmail mysql database they are stored in. Thanks
for your help.
Marty
# 1.2.8: /usr/local/etc/dovecot.conf
# OS: Linux 2.6.18-164.6.1.el5 i686 CentOS release 5.4 (Final)
protocols: imap pop3
ssl: no
disable_plaintext_auth: no
login_dir: /usr/local/var/run/dovecot/login
login_executable(default): /usr/local/libexec/dovecot/imap-login
login_executable(imap): /usr/local/libexec/dovecot/imap-login
login_executable(pop3): /usr/local/libexec/dovecot/pop3-login
first_valid_uid: 508
last_valid_uid: 508
first_valid_gid: 503
last_valid_gid: 503
mail_uid: 508
mail_gid: 503
mail_executable(default): /usr/local/libexec/dovecot/imap
mail_executable(imap): /usr/local/libexec/dovecot/imap
mail_executable(pop3): /usr/local/libexec/dovecot/pop3
mail_plugin_dir(default): /usr/local/lib/dovecot/imap
mail_plugin_dir(imap): /usr/local/lib/dovecot/imap
mail_plugin_dir(pop3): /usr/local/lib/dovecot/pop3
lda:
postmaster_address: postmaster at teknickel.net
auth default:
default_realm: teknickel.net
verbose: yes
debug: yes
debug_passwords: yes
passdb:
driver: sql
args: /home/vpopmail/dovecotsql.conf
passdb:
driver: vpopmail
args: webmail=127.0.0.1
userdb:
driver: sql
args: /home/vpopmail/dovecotsql.conf
userdb:
driver: vpopmaildriver = mysql
#
connect = host=/var/lib/mysql/mysql.sock user=vpopuser password=xxxxxxxx
dbname=vpopmail
#
default_pass_scheme = PLAIN
# NOTE: '\' line splitting works only with v1.1+
password_query = SELECT pw_clear_passwd AS password, CONCAT(pw_name,
'@',
pw_domain) AS user FROM vpopmail WHERE pw_name = '%n' AND pw_domain =
'%d'
user_query = SELECT CONCAT(pw_name, '@', pw_domain) AS user, pw_dir as
home,
508 AS uid, 503 AS gid, concat('maildir:backend=%q', pw_shell) AS
quota_rule
FROM vpopmail WHERE pw_name = '%n' AND pw_domain = '%d'
args: quota_template=quota_rule=*:backend=%q
plugin:
quota: maildir
----------------------------------------------------------------------------------------
dovecotsql.conf
On Mon, 2009-12-14 at 08:11 -0600, Marty Diesburg wrote:> I'm new to the list and have a quota question. I am building a new server > with dovecot/qmail/vpopmail/mysql and > emails are sending and recieving fine when the quota is set to NOQUOTA, but > when the quota is changed qmail > doesn't deliver any messages.Logs probably would have told you why it failed.> passdb: > driver: sql > args: /home/vpopmail/dovecotsql.conf > passdb: > driver: vpopmail > args: webmail=127.0.0.1 > userdb: > driver: sql > args: /home/vpopmail/dovecotsql.conf > userdb: > driver: vpopmaildriver = mysql > args: quota_template=quota_rule=*:backend=%qSomething's weird above. You probably should have only passdb sql and userdb sql, nothing else.> user_query = SELECT CONCAT(pw_name, '@', pw_domain) AS user, pw_dir as home, > 508 AS uid, 503 AS gid, concat('maildir:backend=%q', pw_shell) AS quota_ruleThe %q is for userdb vpopmail, not for userdb sql. Just remove it and it should work (assuming pw_shell contains the quota). -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 197 bytes Desc: This is a digitally signed message part URL: <http://dovecot.org/pipermail/dovecot/attachments/20091215/eea29f3a/attachment-0002.bin>
Yes, you're right, I was testing the other auth method. I took out all but
the two sql entries for passdb and userdb, then
re-tested with the same result. It authenticates fine, yet qmail holds
delivery. I posted the log entry for the
last client attempt after restarting dovecot.
Thanks,
Marty
Dec 15 14:58:19 teknickel dovecot: Dovecot v1.2.8 starting up (core dumps
disabled)
Dec 15 14:58:19 teknickel dovecot: auth-worker(default): mysql: Connected to
/var/lib/mysql/mysql.sock (vpopmail)
Dec 15 14:58:20 teknickel dovecot: auth(default): new auth connection:
pid=9961
Dec 15 14:58:20 teknickel dovecot: auth(default): new auth connection:
pid=9963
Dec 15 14:58:20 teknickel dovecot: auth(default): new auth connection:
pid=9964
Dec 15 14:58:20 teknickel dovecot: auth(default): new auth connection:
pid=9965
Dec 15 14:58:20 teknickel dovecot: auth(default): new auth connection:
pid=9966
Dec 15 14:58:20 teknickel dovecot: auth(default): new auth connection:
pid=9962
=110 rport=2896 resp=AG1nZABhbGw0MG5lNw=', pw_domain) AS user
FROM vpopmail WHERE pw_name = 'mgd' AND pw_domain = '
teknickel.net'
Dec 15 14:58:42 teknickel dovecot: auth(default): client out: OK 1
user=mgd at teknickel.net
Dec 15 14:58:42 teknickel dovecot: auth(default): master in: REQUEST 1
9962 1
e, 508 AS uid, 503 AS gid, concat('maildir:backend=', pw_shell) AS
quota_rule FROM vpopmail WHERE pw_name = 'mgd' AND pw_domain = '
teknickel.net'
08 gid=503 quota_rule=maildir:backend=52428800S
Dec 15 14:58:42 teknickel dovecot: pop3-login: Login: user=<
mgd at teknickel.net>, method=PLAIN, rip=192.168.77.119, lip=192.168.77.254
Dec 15 14:58:42 teknickel dovecot: POP3(mgd at teknickel.net): Disconnected:
Logged out top=0/0, retr=0/0, del=0/0, size=0
Dec 15 14:58:43 teknickel dovecot: auth(default): new auth connection:
pid=10252
On Tue, Dec 15, 2009 at 1:18 PM, Timo Sirainen <tss at iki.fi> wrote:
> On Mon, 2009-12-14 at 08:11 -0600, Marty Diesburg wrote:
> > I'm new to the list and have a quota question. I am building a
new
> server
> > with dovecot/qmail/vpopmail/mysql and
> > emails are sending and recieving fine when the quota is set to
NOQUOTA,
> but
> > when the quota is changed qmail
> > doesn't deliver any messages.
>
> Logs probably would have told you why it failed.
>
> > passdb:
> > driver: sql
> > args: /home/vpopmail/dovecotsql.conf
> > passdb:
> > driver: vpopmail
> > args: webmail=127.0.0.1
> > userdb:
> > driver: sql
> > args: /home/vpopmail/dovecotsql.conf
> > userdb:
> > driver: vpopmaildriver = mysql
> > args: quota_template=quota_rule=*:backend=%q
>
> Something's weird above. You probably should have only passdb sql and
> userdb sql, nothing else.
>
> > user_query = SELECT CONCAT(pw_name, '@', pw_domain) AS user,
pw_dir as
> home,
> > 508 AS uid, 503 AS gid, concat('maildir:backend=%q', pw_shell)
AS
> quota_rule
>
> The %q is for userdb vpopmail, not for userdb sql. Just remove it and it
> should work (assuming pw_shell contains the quota).
>