service-specific userdb affecting lmtp, quota-service
Steffen Kaiser
skdovecot at smail.inf.fh-brs.de
Wed Aug 3 05:10:38 UTC 2016
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Wed, 3 Aug 2016, Steffen Kaiser wrote:
>> Update:
>>
>> I was able to eliminate the /var/log/mail.err error messages (shown below)
>> by creating a userdb.quota-status and userdb.lmtp passwd-file. However,
>> since userdb.pop3 and userdb.imap will have different extra-fields values
>> for namespace (different namespace/xxx/inbox=yes values) I can't simply
>> create userdb.quota-status and userdb.lmtp as the union of userdb.pop3 and
>> userdb.imap. At a minimum, the extra-fields namespace info has to be left
>> out.
>
> do LMTP and Quota-status fail, if you symlink them to the imap version?
BTW: your posted conf does not contain the virtual plugin and its
namespace.
>> So this creates the question: For each service, which fields does the
>> userdb need to contain? I can't find that documented anywhere.
>>
>> For example, for the quota-status service, I presume the following are
>> needed:
>> -- username
>> -- home directory (since mail_location = maildir:~/Maildir)
>> -- any "quota=" overrides in the extra-fields
>> -- nothing else
>>
>> Is that right?
>>
>>
>> And I presume userdb.lmtp needs to return:
>> -- username
>> -- home directory (since mail_location = maildir:~/Maildir)
>> -- nothing else
>>
>> Is that right?
>>
>> Thanks,
>> Michael
>>
>>
>>> -----Original Message-----
>>>
>>> The service specific passwd-file userdb is causing quota-status and lmtp
>>> to
>>> fail.
>>>
>>> Using:
>>> userdb {
>>> args = ... /etc/dovecot/auth.d/%d/userdb.%s
>>> }
>>>
>>> I'm getting the following in /var/log/mail.err when I try to send/receive
>>> mail:
>>>
>>> Aug 1 15:46:57 n6mef-gw dovecot: auth: Error:
>>> passwd-file(mefpop at email.n6mef.org):
>>> stat(/etc/dovecot/auth.d/email.n6mef.org/userdb.quota-status) failed:
>>> Address family not supported by protocol
>>> Aug 1 15:47:08 n6mef-gw dovecot: auth: Error:
>>> passwd-file(mefpop at email.n6mef.org):
>>> stat(/etc/dovecot/auth.d/email.n6mef.org/userdb.lmtp) failed: Address
>>> family
>>> not supported by protocol
>>>
>>> I don't have a userdb.quota-status or userdb.lmtp.
>>>
>>> Is there something else that needs to be in the configuration to prevent
>>> these services from needing their own userdb?
>>>
>>> Thanks,
>>> Michael
>>>
>>>
>>> $ doveconf -n
>>> # 2.2.9: /etc/dovecot/dovecot.conf
>>> # OS: Linux 3.16.0-76-generic x86_64 Ubuntu 14.04.4 LTS
>>> auth_mechanisms = cram-md5
>>> auth_verbose = yes
>>> mail_gid = vmail
>>> mail_location = maildir:~/Maildir
>>> mail_plugins = " quota"
>>> mail_uid = vmail
>>> namespace inbox {
>>> inbox = yes
>>> location =
>>> mailbox Drafts {
>>> special_use = \Drafts
>>> }
>>> mailbox Junk {
>>> special_use = \Junk
>>> }
>>> mailbox Sent {
>>> special_use = \Sent
>>> }
>>> mailbox "Sent Messages" {
>>> special_use = \Sent
>>> }
>>> mailbox Trash {
>>> special_use = \Trash
>>> }
>>> prefix =
>>> }
>>> passdb {
>>> args = /etc/dovecot/deny-users
>>> deny = yes
>>> driver = passwd-file
>>> }
>>> passdb {
>>> args = scheme=cram-md5 username_format=%n /etc/dovecot/auth.d/%d/passdb
>>> driver = passwd-file
>>> }
>>> plugin {
>>> quota = maildir:User quota
>>> quota_grace = 10%%
>>> quota_rule = *:storage=50MB
>>> quota_rule2 = Trash:storage=+10%%
>>> quota_status_nouser = DUNNO
>>> quota_status_overquota = 552 5.2.2 Mailbox is full
>>> quota_status_success = DUNNO
>>> quota_status_toolarge = 552 5.2.3 Message is too large
>>> quota_warning = storage=90%% quota-warning 90 %n %d
>>> quota_warning2 = storage=75%% quota-warning 75 %n %d
>>> }
>>> pop3_lock_session = yes
>>> protocols = pop3 imap lmtp
>>> service auth {
>>> unix_listener /var/spool/postfix/private/dovecot-auth {
>>> group = postfix
>>> mode = 0660
>>> user = postfix
>>> }
>>> unix_listener auth-userdb {
>>> group = vmail
>>> mode = 0600
>>> user = vmail
>>> }
>>> }
>>> service lmtp {
>>> unix_listener /var/spool/postfix/private/dovecot-lmtp {
>>> group = postfix
>>> mode = 0600
>>> user = postfix
>>> }
>>> }
>>> service pop3 {
>>> executable = pop3 postlogin
>>> process_limit = 25
>>> }
>>> service postlogin {
>>> executable = script-login /etc/dovecot/postlogin.sh
>>> group = vmail
>>> user = vmail
>>> }
>>> service quota-status {
>>> client_limit = 1
>>> executable = quota-status -p postfix
>>> inet_listener {
>>> port = 12340
>>> }
>>> }
>>> service quota-warning {
>>> executable = /etc/dovecot/quota-warning.sh
>>> user = vmail
>>> }
>>> ssl = required
>>> ssl_cert = </opt/xsc/ssl/certs/n6mef-gw.crt
>>> ssl_key = </opt/xsc/ssl/private/n6mef-gw.key
>>> ssl_protocols = !SSLv2 !SSLv3
>>> userdb {
>>> args = username_format=%n /etc/dovecot/auth.d/%d/userdb.%s
>>> default_fields = home=/var/vmail/%d/%n
>>> driver = passwd-file
>>> }
>>> verbose_ssl = yes
>>> protocol lmtp {
>>> postmaster_address = xxxxxxxxxxxxxxxxx
>>> }
>>> protocol imap {
>>> mail_max_userip_connections = 10
>>> }
>>> protocol pop3 {
>>> mail_max_userip_connections = 1
>>> }
>>> remote 192.168.7.0/24/24 {
>>> ssl = yes
>>> }
>>> remote 192.168.7.0/27/27 {
>>> ssl = no
>>> }
>>> $
>>
- --
Steffen Kaiser
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQEVAwUBV6F8znz1H7kL/d9rAQKltAf/bl5r175/Iokd+XxoBnsbT8LUfsCM20/p
0tPsnfz9E75nnFgOTTYYKPhc7zJvA61ZMz+yZ9SIYxce7mfA86AGvg7cpD8/KIfO
RnhDuLEmFZbaRqnmrDuJvtbLzg2VargYj65Y0hykeRisdNE/3nh//iPxs/5BQs2z
ZRTeJer3UkYae4AxI8E3P+S5fKWbirIJ5mapM28IVw3+uabRED/2TGO5rEuCToLU
UMgI3tQKDIp04dqPfZGbsYefzv6azUtQQ/JL7BeSd/YdiJibGxI/yb7Z6zNPwUvJ
sn7i6FBKdwT0sirEBfHIk4E+gAZZ0fQMkWq1z8q9C7ImoEgtqsObBg==
=0g6C
-----END PGP SIGNATURE-----
More information about the dovecot
mailing list