¿Es necesario parchear Postfix 2.11 con el parche VDA por usuario o dominio?Soporte de cuotas¿Cuándo se utiliza dovecot 2.2.x como servidor imap? Estoy usando ubuntu 14.04 LTS con postfixadmin 2.3. Agradezco cualquier guía de trabajo útil. gracias
palomar -n salida
maestro.cf
gato palomar-sql.conf.ext
controlador = mysql connect = host = 127.0.0.1 dbname = postfixadmin usuario = postfixadmin contraseña = XXXXXXXXX default_pass_scheme = MD5-CRYPT
contraseña_query = SELECCIONE el nombre de usuario como usuario, contraseña DEL buzón DONDE nombre de usuario = '%u'; user_query = SELECCIONE maildir COMO inicio, 5000 COMO uid, 5000 COMO gid, CONCAT("*:bytes=",quota) COMO cuota_rule DESDE el buzón DONDE nombre de usuario = '%n@%d' Y activo=1;
Respuesta1
Si postfix
no intenta realizar LDA y en su lugar invoca Dovecot deliver
, entonces postfix
no necesita saber nada sobre las cuotas.
Si lo ha utilizado postfixadmin
para la gestión de dominios virtuales, entonces ya tiene todo lo que necesita para las restricciones de cuota. Debe modificar dovecot
la consulta SQL de para recuperar las cuotas del usuario:
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;
(No copie y pegue ese ejemplo a ciegas, utilícelo como plantilla)
Luego debe configurar el complemento de cuota y el servicio de advertencia en eldovecot.conf
ACTUALIZADO:
. . . . . .
# 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
debería verse así:
#!/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
####
Cuando Dovecot deliver
intenta almacenar el mensaje en la bandeja de entrada, verifica si la cuota alcanzó los umbrales predefinidos del 80% y el 90% o no. Si es así, se invoca el servicio de advertencia de cuota y se inicia el script, que coloca un mensaje de advertencia en el buzón, sin necesidad de realizar más comprobaciones de cuota.