The latest HG commits seem to have fixed some underlying problems with the 
'quota-status' service. Now doing some quick tests I wonder if this can be used 
with aliases on the Postfix side. Appears the 'check_policy_service' used in 
the example below will query existing users via Dovecot's Auth Backend:

http://sys4.de/en/blog/2013/04/05/dovecot-quota-mit-postfix-abfragen/
http://www.postfix.org/SMTPD_POLICY_README.html

This works fine for Dovecot user 'philo' where the mail is rejected upfront 
before it enters the queue:

==> /var/log/mail.log <==
Jul 30 13:41:18 spectre postfix/smtpd[31072]: NOQUEUE: reject: RCPT from 
host.example.com[1.2.3.4]: 554 5.2.2 <ph...@trashheap.net>: Recipient address 
rejected: Quota exceeded (mailbox for use
r is full); from=<u...@example.com> to=<ph...@trashheap.net> proto=ESMTP 
helo=<host.example.com>

Now user 'gunge' is an alias for 'philo' in Postfix, thus the quota check will 
not recognize the user, will queue the message and reject it at the MDA stage:

==> /var/log/mail.log <==
Jul 30 14:41:02 spectre postfix/lmtp[31460]: 3c4HSD5ZkBzBP: 
to=<ph...@trashheap.net>, orig_to=<gu...@trashheap.net>, 
relay=spectre.leuxner.net[private/dovecot-lmtp], delay=1.2, 
delays=1.1/0.01/0/0.13, dsn=4.2.2, status=deferred (host 
spectre.leuxner.net[private/dovecot-lmtp] said: 452 4.2.2 <ph...@trashheap.net> 
Quota exceeded (mailbox for user is full) (in reply to end of DATA command))

This is probably intended behaviour, just want to make sure that I'm not 
missing a point here. For now the only fix that comes to my mind to create 
"quota aware" aliases - is creating 'dummy' users in Dovecot which point to the 
same mailbox rather than performing aliasing on the Postfix end. Open to 
suggestions...

Regards
Thomas

Attachment: signature.asc
Description: Digital signature

Reply via email to