o postfix 2.11 precisa ser corrigido com patch VDA para cada usuário ou domínioSuporte de cota, quando o dovecot 2.2.x é usado como servidor imap? Estou usando o Ubuntu 14.04 LTS com postfixadmin 2.3. agradeço qualquer guia de trabalho útil. obrigado
saída dovecot -n
mestre.cf
gato dovecot-sql.conf.ext
driver = mysql connect = host = 127.0.0.1 nome do banco de dados = postfixadmin usuário = postfixadmin senha = XXXXXXX default_pass_scheme = MD5-CRYPT
password_query = SELECIONE nome de usuário como usuário, senha FROM caixa de correio WHERE nome de usuário='%u'; user_query = SELECT maildir AS home,5000 AS uid,5000 AS gid, CONCAT("*:bytes=",quota) AS quota_rule FROM caixa de correio WHERE nomedeusuário = '%n@%d' AND ativo=1;
Responder1
Se postfix
não tentar executar o LDA em si e, deliver
em vez disso, invocar o dovecot, então postfix
não será necessário saber sobre cotas.
Se você já usou postfixadmin
o gerenciamento de domínios virtuais, já tem tudo o que precisa para restrições de cota. Você precisa modificar dovecot
a consulta SQL de para buscar as cotas do usuário:
user_query = SELECT maildir AS home, \
26 AS uid, \
26 AS gid, \
CONCAT("*:bytes=",quota) AS quota_rule \
FROM mailbox \
WHERE username = '%n@%d' \
AND active=1;
(não copie e cole cegamente esse exemplo, use-o como modelo)
Então você deve configurar o plugin de cota e o serviço de aviso nodovecot.conf
ATUALIZADA:
. . . . . .
# this line enable quota plugin!
mail_plugins = quota
# here is the plugin's configuration
plugin {
quota = maildir:User quota
quota_rule = Junk:ignore
quota_rule2 = Trash:storage=+100M
quota_warning = storage=90%% quota-warning 90 %u %d
quota_warning2 = storage=80%% quota-warning 80 %u %d
quota_exceeded_message = ERROR:422 - Mailbox full, sorry.
. . . . .
}
. . . . .
service quota-warning {
executable = script /path/to/the/overquota.sh
user = $mail_uid
group = $mail_gid
unix_listener quota-warning {
user = $mail_uid
group = $mail_gid
}
}
. . . . .
overquota.sh
deveria ficar assim:
#!/bin/sh
cat << EOT | /usr/local/libexec/dovecot/dovecot-lda -d $2 -o "plugin/quota=maildir:User quota:noenforcing"
From: postmaster@$3
To: $2
Subject: == Quota warning ==
Content-Type: text/plain; charset="UTF-8"
Your mailbox is $1% full, so clean up your mess, please!
EOT
exit 0
####
Quando o dovecot deliver
tenta armazenar a mensagem na caixa de entrada, ele verifica se a cota foi atingida nos limites predefinidos de 80% e 90% ou não. Nesse caso, o serviço de aviso de cota é invocado e o script é iniciado, colocando uma mensagem de aviso na caixa de correio - sem verificação adicional de cota.