[Dovecot-de] Report Quota

Hanns Mattes hanns at hannsmattes.de
Mi Okt 29 15:10:13 CET 2014


Hei, liebe Liste,

demnächst wird der Hauptserver von Dovecot 1.irgendwas auf 2.2
umgestellt. Deswegen habe ich eine Testmaschine aufgebaut, bei der
postfix als Relay per lmtp die Mails an Dovecot durchreicht. Das ging
alles wunderbar klaglos und schnell, inklusive sieve - alles bestens,
macht Spaß.

An einer Stelle hänge ich beim Quota: Thunderbird und Kmail zeigen die
aktuelle Nutzung nicht an. doveadm quota zeigt korrekte Werte, auch wenn
nutzerspezifisch überschrieben wird - die User sind in LDAP hinterlegt -
wird das übernommen. quota ist als mail-plugin aufgeführt, dito in der
20-imap.conf imap_quota.

linux:/etc/dovecot # doveconf -n
# 2.2.15: /etc/dovecot/dovecot.conf
# OS: Linux 3.7.10-1.40-desktop x86_64 openSUSE 12.3 (x86_64)
auth_master_user_separator = *
auth_mechanisms = plain login digest-md5 cram-md5 apop
auth_verbose = yes
mail_debug = yes
mail_location = maildir:~/Maildir
mail_plugins = " quota zlib fts fts_lucene trash"
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 ihave duplicate
namespace inbox {
  inbox = yes
  location =
  mailbox Drafts {
    auto = subscribe
    special_use = \Drafts
  }
  mailbox Sent {
    auto = subscribe
    special_use = \Sent
  }
  mailbox "Sent Messages" {
    special_use = \Sent
  }
  mailbox Trash {
    auto = subscribe
    special_use = \Trash
  }
  prefix =
}
passdb {
  args = /etc/dovecot/master-users
  driver = passwd-file
  master = yes
  pass = yes
}
passdb {
  args = /etc/dovecot/dovecot-ldap.conf.ext
  driver = ldap
}
plugin {
  fts_autoindex = yes
  fts_lucene = whitespace_chars=@.
  quota = maildir:User quota
  quota_exceeded_message = Storage quota for this account has been
exceeded, please try again later.
  quota_grace = 100M
  quota_rule = *:storage=1000M
  quota_rule2 = Trash:storage=+10%%
  quota_warning = storage=95%% quota-warning 95 %u
  quota_warning2 = storage=80%% quota-warning 80 %u
  quota_warning3 = storage=75%% quota-warning 75 %u
  sieve = ~/.dovecot.sieve
  sieve_dir = ~/sieve
  sieve_max_redirects = 32
  trash = /etc/dovecot/dovecot-trash.conf.ext
  zlib_save = gz
  zlib_save_level = 6
}
postmaster_address = admin at 93er.net
protocols = imap pop3 lmtp sieve
service auth {
  unix_listener /var/spool/postfix/private/auth {
    mode = 0666
  }
}
service imap-login {
  inet_listener imap {
    port = 143
  }
  inet_listener imaps {
    port = 993
    ssl = yes
  }
}
service lmtp {
  inet_listener lmtp {
    address = 127.0.0.1
    port = 24
  }
  user = vmail
}
service managesieve-login {
  inet_listener sieve {
    port = 4190
  }
  inet_listener sieve_deprecated {
    port = 2000
  }
}
service pop3-login {
  inet_listener pop3 {
    port = 110
  }
  inet_listener pop3s {
    port = 995
    ssl = yes
  }
}
service quota-warning {
  executable = script /usr/local/bin/quota-warning.sh
  user = vmail
}
ssl_cert = </etc/dovecot/brueckokomplett2014.crt
ssl_key = </etc/dovecot/brueckofrei2014.key
userdb {
  driver = prefetch
}
userdb {
  args = /etc/dovecot/dovecot-ldap.conf.ext
  driver = ldap
}
verbose_proctitle = yes
protocol lmtp {
  mail_plugins = " quota zlib fts fts_lucene trash quota sieve"
}
protocol lda {
  mail_plugins = " quota zlib fts fts_lucene trash"
}
protocol imap {
  mail_plugins = " quota zlib fts fts_lucene trash quota imap_quota
imap_zlib"
}


und die dovecot-ldap.conf.ext:

hosts = 127.0.0.1 192.168.0.1
dn = cn=Manager,dc=dies,dc=jenes
dnpass = ganzgeheim
auth_bind = no
base = ou=virtualmail,dc=dies,dc=jenes
scope = subtree
user_attrs =
homeDirectory=home,uidNumber=uid,gidNumber=gid,quota=quota_rule=*:\
storage=%$M
user_filter = (&(objectClass=CourierMailAccount)(uid=%u))
pass_attrs =
uid=user,userPassword=password,homeDirectory=userdb_home,uidNumber\
=userdb_uid,gidNumber=userdb_gid,quota=userdb_quota_rule=*:storage=%M
pass_filter = (&(disableimap=FALSE)(objectClass=CourierMailAccount)(uid=%u))
iterate_attrs = uid=user
iterate_filter = (objectClass=CourierMailAccount)
default_pass_scheme = PLAIN

Was hab' ich übersehen?

Dank im Voraus und beste Grüße

Hanns


Mehr Informationen über die Mailingliste Dovecot