Hi!
quota-status is not supported in proxy configuration. You should use quota_warning and quota_over_flag scripts instead.
Aki
On 08.10.2016 03:51, Michael Kliewe wrote:
Hello, any news on this topic? I tried it again with Dovecot 2.2.25, but it's still not possible to run the quota-status services on the directors. They try to access the mailbox of the user, which they obviously cannot. I'm not sure why Dovecot tries to open the mailbox, I would have expected just a dict-query (SQL) to check the quota. If the mailbox has to be opened, it has to be done on the correct backend Dovecot of the user. Is there any chance to fix this problem? Or am I doing something wrong here? Kind regards Michael
Am 23.02.2015 um 03:09 schrieb Michael Kliewe:
Hello,
I'm trying to configure the quota-status service, but it seems I'm not successful with my director setup (2.2.9). I activate the quota-status service like this on my director server:
$ cat 91-quota-status.conf ## ## Quota-Status configuration. ## # Load Module quota-status and listen on TCP/IP Port for connections. service quota-status { executable = quota-status -p postfix inet_listener { address = 10.0.1.44 port = 12340 } client_limit = 1 } # Plugin configuration. # Return messages for requests by quota status: success, nouser and overquota. plugin { quota_status_success = DUNNO quota_status_nouser = DUNNO quota_status_overquota = "552 5.2.2 Mailbox is over quota" }
After restarting the director service I try to query the quota status service:
printf "recipient=user@domain.de\nsize=100000\n\n" | nc 10.0.1.44 12340
The output is:
action=DEFER_IF_PERMIT Invalid user settings. Refer to server log for more information.
In the debug log of the director I see this:
Feb 23 03:03:09 director01 dovecot: auth: Debug: userdb out: USER
1 user@domain.de mail=mdbox:/mnt/data01/domain.de/user/maildir
home=/mnt/data01/domain.de/user proxy=Y master=<hidden>
pass=<hidden> uid=5000 gid=1
quota_rule=*:storage=60593 quota_rule2=*:messages=100000 Feb 23 03:03:09 director01 dovecot: quota-status(user@domain.de): Error: user user@domain.de: Initialization failed: Namespace '': mkdir(/mnt/data01/domain.de/user/maildir/mailboxes) failed: Permission denied (euid=5000(vmail) egid=1(daemon) missing +w perm: /mnt, dir owned by 0:0 mode=0755)So the quota status service tries to access the mailbox of the user ON THE DIRECTOR. But the director has not mounted the mailboxes of the users, that's what the backend dovecots are for (proxy=Y). So the quota-status query is not proxied to the dovecot backend server I would assume.
Does that mean I have to start the quota-status service on the dovecot backend servers and access it from the Postfix server directly? Currently the Postfixes can only reach the directors, not the backend servers.
Is it possible to use the quota-status service on the director?
Thanks for any hints and help Michael