Linux problema servidor de correo linux

Harima

Pegao al tarro
Se incorporó
15 Mayo 2008
Mensajes
3.962
Estimados, tengo un servidor de correo que yo no instale, y está como media enredada la cosa, y no hay documentación como es habitual.
el tema es que cuando los usuarios entran por roundcube a revisar los correos sale una cantidad, para la cuenta especifica normalmente hay como 2000 correos, peerrrooo cuando consulto por BD la vmail en used quota, sale otra cantidad totalmente distinta, para esa cuenta aprox 48000, el tema es que quiero saber de donde saca ese dato roundcube o como obtener los datos reales de los correos en cada casilla para poder llevar un monitoreo.

la consulta por mysql es
Código:
select username, messages, CONCAT(ROUND(bytes/1024/1024, 1)) as size, domain from used_quota order by messages desc
 

Miguelwill

I am online
Miembro del Equipo
MOD
Se incorporó
23 Febrero 2004
Mensajes
12.410
Consulta, que servicio utiliza para conectar y leer los correos vía IMAP ?
Normalmente es ese servicio el que le muestra la cuota al cliente IMAP , en este caso roubdcube webmail

La cuota también se va actualizando por el MDA , que en el caso de usar dovecot como servidor IMAP, también podría ser un subproceso de dovecot el usado para entregar los mensajes al mailbox


Enviado desde mi XT1058 mediante Tapatalk
 
Upvote 0

Miguelwill

I am online
Miembro del Equipo
MOD
Se incorporó
23 Febrero 2004
Mensajes
12.410
yep dovecot es el que está configurado

consulta, el valor en la cuota estas viendo la cantidad de correos o el peso del total de correos?
normalmente la cuota se mide en kb

te dejo la configuracion que viene en dovecot que maneja ispconfig (cuota por db, y el plugin "sieve" como MDA para la entrega de correos con chequeo de quota )


Código:
listen = *,[::]
protocols = imap pop3
auth_mechanisms = plain login
disable_plaintext_auth = no
log_timestamp = "%Y-%m-%d %H:%M:%S "
mail_privileged_group = vmail
ssl_cert = </etc/postfix/smtpd.cert
ssl_key = </etc/postfix/smtpd.key
ssl_protocols = !SSLv2 !SSLv3
passdb {
  args = /etc/dovecot/dovecot-sql.conf
  driver = sql
}
userdb {
  args = /etc/dovecot/dovecot-sql.conf
  driver = sql
}
plugin {
  quota = dict:user::file:/var/vmail/%d/%n/.quotausage
  sieve=/var/vmail/%d/%n/.sieve
}
service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = postfix
    mode = 0660
    user = postfix
  }
  unix_listener auth-userdb {
    group = vmail
    mode = 0600
    user = vmail
  }
  user = root
}
service imap-login {
  client_limit = 1000
  process_limit = 500
}
protocol imap {
  mail_plugins = quota imap_quota
}
protocol pop3 {
  pop3_uidl_format = %08Xu%08Xv
  mail_plugins = quota
}
protocol lda {
  mail_plugins = sieve quota
}

/etc/dovecot/dovecot-sql.conf

Código:
# http://wiki.dovecot.org/AuthDatabase/SQL
#
# CREATE TABLE users (
#     userid VARCHAR(128) NOT NULL,
#     password VARCHAR(64) NOT NULL,
#     home VARCHAR(255) NOT NULL,
#     uid INTEGER NOT NULL,
#     gid INTEGER NOT NULL,
#     active CHAR(1) DEFAULT 'Y' NOT NULL
# );

driver = mysql
connect = host=localhost dbname=dbispconfig user=ispconfig password=CLAVEDELUSUARIO
default_pass_scheme = CRYPT

password_query = SELECT password FROM mail_user WHERE (login = '%u' OR email = '%u') AND disable%Ls = 'n' AND server_id = '1'
user_query = SELECT email as user, maildir as home, CONCAT('maildir:', maildir, '/Maildir') as mail, uid, gid, CONCAT('*:storage=', quota, 'B') AS quota_rule, CONCAT(maildir, '/.sieve') as sieve FR
OM mail_user WHERE (login = '%u' OR email = '%u') AND `disable%Ls` = 'n' AND server_id = '1'

# The iterate_query is required for the doveadm command only and works only on dovecot 2 servers.
# Do not enable it on Dovecot 1.x servers
# iterate_query = SELECT email as user FROM mail_user
 
Upvote 0

Harima

Pegao al tarro
Se incorporó
15 Mayo 2008
Mensajes
3.962
sorry me pegue un ranaso en la explicación, no tengo problemas con las cuotas es con la cantidad de correos

me explico mejor (voy a tratar)

el problema es especificamente con cuentas que tiene alto trafico con las demás no hay problemas

por BD en el valor messages me trae por ejemplo 40000
por el sistema de archivos me dice que tiene 2000
por la interfaz del roundcube me dice 2000

entonces genero un reporte con la consulta

Código:
select username, messages, CONCAT(ROUND(bytes/1024/1024, 1)) as size, domain from used_quota order by messages desc

pero el campo messages que es la cantidad de correos , con algunas cuentas concuerda y con otras no, por eso la consulta es de donde demonios roundcube saca el total de correos si no es por la BD.
 
Upvote 0

Miguelwill

I am online
Miembro del Equipo
MOD
Se incorporó
23 Febrero 2004
Mensajes
12.410
mm normalmente roundcube funciona como un cliente Imap, consultandole al servicio IMAP por los mensajes presentes en las carpetas (por default utiliza INBOX, Sent y Trash, adicionales hay que ir agregando)

revisaste cuantos archivos de correos tiene en el Inbox?
algo como find /carpeta -type f |wc -l

saludos
 
Upvote 0
Subir