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
On 28.06.2017 12:25, Evgeniy Korneechev wrote:> 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 > }Turn on auth_debug and auth_verbose and see what it says. Aki
On 28.06.2017 12:36, Aki Tuomi wrote:> On 28.06.2017 12:25, Evgeniy Korneechev wrote: >> 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'... >> >> >> Turn on auth_debug and auth_verbose and see what it says. >> >> AkiAlso you can set auth_username_format = %Ln to force usernames into lowercase without domain. Aki