Antonello Cioffi
2015-Dec-01 15:10 UTC
Dovecot doesn't sent rejection message user overquota
Hi
I'm using postfix+dovecot (2.2.18).
The problem is that dovecot silently discard message when user has its
own mailbox full without sending rejection message to the sender.
Here a sample log:
Dec 1 14:54:23 posta2 postfix/smtp[21478]: B315111C00B:
to=<antonen at uniparthenope.it>,
relay=192.168.241.110[192.168.241.110]:25, delay=0.4,
delays=0.2/0/0/0.2, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as
C27BF1244DD)
Dec 1 14:54:23 posta2 dovecot: lda(antonen): Error: sieve:
msgid=<565DA68E.8060308 at uniparthenope.it>: failed to store into mailbox
'INBOX': Quota exceeded (mailbox for user is full)
Dec 1 14:54:23 posta2 dovecot: lda(antonen): sieve: Execution of script
/usr/local/etc/dovecot/sieve/default.sieve failed with unsuccessful
implicit keep
Dec 1 14:54:23 posta2 dovecot: lda(antonen):
msgid=<565DA68E.8060308 at uniparthenope.it>: rejected: Quota exceeded
(mailbox for user is full)
Dec 1 14:54:23 posta2 postfix/pipe[21020]: 111FB11C00B:
to=<antonen at uniparthenope.it>, relay=dovecot, delay=0.14,
delays=0.05/0.01/0/0.09, dsn=2.0.0, status=sent (delivered via dovecot
service)
This is dovecot configuration:
posta2:/usr/local/etc/dovecot # doveconf -n
# 2.2.18: /usr/local/etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.8 (0c4ae064f307+)
# OS: Linux 3.0.101-0.46-default x86_64 SUSE Linux Enterprise Server 11
(x86_64)
auth_mechanisms = plain login
auth_username_format = %Ln
auth_verbose = yes
default_internal_user = vmail
default_login_user = nobody
disable_plaintext_auth = no
first_valid_uid = 100
lda_mailbox_autocreate = yes
lda_mailbox_autosubscribe = yes
mail_gid = 100
mail_location = maildir:%h
mail_plugins = " quota"
mail_uid = 1002
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope
encoded-character vacation subaddress comparator-i;ascii-numeric
relational regex imap4flags copy include variables body enotify
environment mailbox date index ihave duplicate spamtest spamtestplus
passdb {
args = /usr/local/etc/dovecot/dovecot-people-ldap.conf.ext
driver = ldap
}
plugin {
last_login_dict = redis:host=127.0.0.1:port=6379
mail_log_events = delete undelete expunge copy mailbox_delete
mailbox_rename
mail_log_fields = uid box msgid size
quota = maildir:User quota
quota_warning = storage=95%% quota-warning 95 %u
quota_warning2 = storage=80%% quota-warning 80 %u
sieve = file:~/sieve;active=~/.dovecot.sieve
sieve_before = /usr/local/etc/dovecot/sieve/
sieve_dir = ~/.sieve
sieve_extensions = +spamtest +spamtestplus +relational
+comparator-i;ascii-numeric
}
postmaster_address = postmaster at uniparthenope.it
protocols = imap pop3 sieve
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0666
user = postfix
}
}
service imap-login {
inet_listener imap {
port = 143
}
inet_listener imaps {
port = 993
ssl = yes
}
service_count = 0
vsz_limit = 256 M
}
service managesieve-login {
inet_listener sieve {
port = 4190
}
service_count = 1
vsz_limit = 64 M
}
service pop3-login {
inet_listener pop3 {
port = 110
}
inet_listener pop3s {
port = 995
ssl = yes
}
service_count = 0
vsz_limit = 256 M
}
service quota-status {
client_limit = 1
executable = quota-status -p postfix
inet_listener {
port = 12340
}
}
service quota-warning {
executable = script /usr/local/bin/quota-warning.sh
unix_listener quota-warning {
user = vmail
}
user = vmail
}
ssl_ca = <file.pem
ssl_cert = <file.pem
ssl_key = <file.pem
userdb {
args = /usr/local/etc/dovecot/dovecot-people-ldap.conf.ext
driver = ldap
}
protocol lda {
mail_plugins = " quota quota sieve"
}
protocol imap {
imap_client_workarounds = delay-newmail tb-extra-mailbox-sep
tb-lsub-flags
mail_max_userip_connections = 100
mail_plugins = " quota imap_quota last_login"
}
protocol pop3 {
mail_max_userip_connections = 100
mail_plugins = " quota last_login"
pop3_logout_format = top=%t/%p, retr=%r/%b, del=%d/%m, size=%s, %u
pop3_save_uidl = no
pop3_uidl_format = %08Xu%08Xv
}
while in master.cf
dovecot unix - n n - - pipe
flags=DRhu user=vmail argv=/usr/local/libexec/dovecot/dovecot-lda -f
${sender} -d ${recipient}
Is there someone who could help me?
Regards
--
Dott. Antonello Cioffi
Ufficio Servizi Informatici
Universit? degli Studi di Napoli Parthenope
Tel. 081/5475292 - Fax. 081/5475180
On 01 Dec 2015, at 17:10, Antonello Cioffi <antonello.cioffi at uniparthenope.it> wrote:> > Hi > > I'm using postfix+dovecot (2.2.18). > > The problem is that dovecot silently discard message when user has its own mailbox full without sending rejection message to the sender. > > Here a sample log: > > Dec 1 14:54:23 posta2 postfix/smtp[21478]: B315111C00B: to=<antonen at uniparthenope.it>, relay=192.168.241.110[192.168.241.110]:25, delay=0.4, delays=0.2/0/0/0.2, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as C27BF1244DD) > Dec 1 14:54:23 posta2 dovecot: lda(antonen): Error: sieve: msgid=<565DA68E.8060308 at uniparthenope.it>: failed to store into mailbox 'INBOX': Quota exceeded (mailbox for user is full) > Dec 1 14:54:23 posta2 dovecot: lda(antonen): sieve: Execution of script /usr/local/etc/dovecot/sieve/default.sieve failed with unsuccessful implicit keep > Dec 1 14:54:23 posta2 dovecot: lda(antonen): msgid=<565DA68E.8060308 at uniparthenope.it>: rejected: Quota exceeded (mailbox for user is full) > Dec 1 14:54:23 posta2 postfix/pipe[21020]: 111FB11C00B: to=<antonen at uniparthenope.it>, relay=dovecot, delay=0.14, delays=0.05/0.01/0/0.09, dsn=2.0.0, status=sent (delivered via dovecot service)Dovecot should have sent a bounce message at that time. I guess that doesn't work for some reason. By default Dovecot uses: sendmail_path = /usr/sbin/sendmail Also you can instead have it send it via SMTP by setting submission_host setting. And finally if you give -e parameter to dovecot-lda, it won't send a bounce itself but instead will exit with 77 causing Postfix to send the bounce.
Antonello Cioffi
2015-Dec-02 08:13 UTC
Dovecot doesn't sent rejection message user overquota
Il 01/12/2015 16:19, Timo Sirainen ha scritto:> On 01 Dec 2015, at 17:10, Antonello Cioffi <antonello.cioffi at uniparthenope.it> wrote: >> Hi >> >> I'm using postfix+dovecot (2.2.18). >> >> The problem is that dovecot silently discard message when user has its own mailbox full without sending rejection message to the sender. >> >> Here a sample log: >> >> Dec 1 14:54:23 posta2 postfix/smtp[21478]: B315111C00B: to=<antonen at uniparthenope.it>, relay=192.168.241.110[192.168.241.110]:25, delay=0.4, delays=0.2/0/0/0.2, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as C27BF1244DD) >> Dec 1 14:54:23 posta2 dovecot: lda(antonen): Error: sieve: msgid=<565DA68E.8060308 at uniparthenope.it>: failed to store into mailbox 'INBOX': Quota exceeded (mailbox for user is full) >> Dec 1 14:54:23 posta2 dovecot: lda(antonen): sieve: Execution of script /usr/local/etc/dovecot/sieve/default.sieve failed with unsuccessful implicit keep >> Dec 1 14:54:23 posta2 dovecot: lda(antonen): msgid=<565DA68E.8060308 at uniparthenope.it>: rejected: Quota exceeded (mailbox for user is full) >> Dec 1 14:54:23 posta2 postfix/pipe[21020]: 111FB11C00B: to=<antonen at uniparthenope.it>, relay=dovecot, delay=0.14, delays=0.05/0.01/0/0.09, dsn=2.0.0, status=sent (delivered via dovecot service) > Dovecot should have sent a bounce message at that time. I guess that doesn't work for some reason. By default Dovecot uses: > > sendmail_path = /usr/sbin/sendmail > > Also you can instead have it send it via SMTP by setting submission_host setting. And finally if you give -e parameter to dovecot-lda, it won't send a bounce itself but instead will exit with 77 causing Postfix to send the bounce. >Hi I don't set -e parameter. Now I set "submission_host = mail.uniparthenope.it" to use smtp instead of sendmail_path and the result is now: Dec 2 08:58:49 posta2 dovecot: lda(antonen): msgid=<565EA4B9.1020009 at uniparthenope.it>: Permanently failed to send rejection: smtp(mail.uniparthenope.it): DATA failed: 550 5.7.1 no third-party DSNs Regards -- Dott. Antonello Cioffi Ufficio Servizi Informatici Universit? degli Studi di Napoli Parthenope Tel. 081/5475292 - Fax. 081/5475180