Per-user quota (passwd)
Evgeniy Korneechev
ekorneechev at altlinux.org
Wed Jun 28 12:25:29 EEST 2017
Hello!
We have passwd=pam, userdb=passwd.
passdb {
driver = pam #server was entered domain Active Directory
}
userdb {
driver = passwd
override_fields = home=/var/vmail/glu_vrem/%u
}
How can i use per-user quota? Only passwd-file?
I tried:
userdb {
args = /etc/imap.passwd
driver = passwd-file
override_fields = home=/var/vmail/glu_vrem/%u
}
/etc/imap.passwd:
administrator:*:95400500:95400513:Administrator:/home/DOM/administrator:/bin/bash::userdb_quota_rule=*:bytes=10G
Authentication and quota - now OK. But doesn't work sending and receiving mail...
postfix say 'Unknown user'...
Is there "extra_field" in passwd-file for email?
What generally will be advice on quotas in our case?
dovecot -n:
# 2.2.27 (c0f36b0): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.16 (fed8554)
# OS: Linux 4.4.39-std-def-alt0.M80P.1 x86_64 ALT 8.1 Server
auth_debug = yes
auth_debug_passwords = yes
auth_mechanisms = plain login cram-md5
auth_socket_path = /var/run/dovecot/auth-userdb
auth_username_chars =
auth_verbose = yes
auth_verbose_passwords = plain
base_dir = /var/run/dovecot/
debug_log_path = /var/log/dovecot
disable_plaintext_auth = no
first_valid_gid = 502
first_valid_uid = 502
last_valid_gid = 268999999
last_valid_uid = 268999999
log_path = /var/log/dovecot
login_log_format_elements = user=<%u> method=%m rip=%r lip=%l mpid=%e %c
mail_access_groups = vmail
mail_debug = yes
mail_gid = 502
mail_location = maildir:/%Lh/Maildir/:INDEX=/%Lh/Maildir/
mail_plugins = " quota autocreate"
mail_privileged_group = vmail
mail_uid = 502
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 mime foreverypart extracttext imapflags notify
mbox_write_locks = fcntl
namespace {
list = children
location = maildir:%%h/Maildir:INDEX=~/Maildir/shared/%%u
prefix = shared/%%u/
separator = /
subscriptions = yes
type = shared
}
namespace inbox {
inbox = yes
location =
prefix =
separator = /
type = private
}
passdb {
driver = pam
}
passdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
plugin {
quota_rule = *:storage=5G
recipient_delimiter = +
sieve = /etc/dovecot/sieves/default.sieve
sieve_default = /etc/dovecot/sieves/default.sieve
sieve_dir = ~/sieve
sieve_extensions = +notify +imapflags
sieve_max_redirects = 8
}
protocols = imap pop3 lmtp sieve
service auth-worker {
user = root
}
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0666
user = postfix
}
unix_listener auth-userdb {
group = vmail
mode = 0666
user = vmail
}
}
service dict {
unix_listener dict {
group = vmail
mode = 0600
user = vmail
}
}
service imap-login {
inet_listener imap {
port = 143
}
}
service imap {
process_limit = 1024
vsz_limit = 256 M
}
service lmtp {
unix_listener lmtp {
mode = 0666
}
}
service managesieve-login {
inet_listener sieve {
port = 4190
}
vsz_limit = 64 M
}
service pop3-login {
inet_listener pop3 {
port = 110
}
}
service pop3 {
process_limit = 1024
}
ssl_ca = </usr/share/ca-certificates/ca-bundle.crt
ssl_cert = </etc/dovecot/server.crt
ssl_key = # hidden, use -P to show it
userdb {
driver = passwd
override_fields = home=/var/vmail/glu_vrem/%u
}
userdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
protocol lmtp {
mail_plugins = " quota autocreate sieve"
}
protocol lda {
mail_plugins = " quota autocreate sieve quota"
plugin {
quota = dict:user::file:/var/vmail/glu_vrem/%n/.quotausage
}
}
protocol imap {
mail_plugins = " quota autocreate autocreate imap_quota"
plugin {
autocreate = INBOX
autocreate2 = Sent
autocreate3 = Trash
autocreate4 = Drafts
autocreate5 = Junk
autosubscribe = INBOX
autosubscribe2 = Sent
autosubscribe3 = Trash
autosubscribe4 = Drafts
autosubscribe5 = Junk
quota = dict:user::file:/var/vmail/glu_vrem/%n/.quotausage
}
}
protocol sieve {
mail_max_userip_connections = 10
managesieve_implementation_string = Dovecot Pigeonhole
managesieve_logout_format = bytes=%i/%o
managesieve_max_compile_errors = 5
managesieve_max_line_length = 65536
}
protocol pop3 {
pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
pop3_uidl_format = %08Xu%08Xv
}
--
WBR, Korneechev Evgeniy
BaseALT/ALTLinux Team
More information about the dovecot
mailing list