Re: Emails not visible after renaming folders

2019-06-25 Thread Germán Herrera via dovecot
Are you copying/moving the emails with {cp|mv} or with "doveadm 
{copy|move}"?


On 2019-06-25 12:00, Aleksandr via dovecot wrote:

Hello,

I have strange problem with "losing" emails after rename mail
folder(s) (via imap client: thunderbird, roundcude, etc..)

How to reproduce:

1. Create some folder name, like TEST
2. Create sub-folder under TEST (like SUBTEST)

Structure:

TEST
  |--SUBTEST


# doveadm  mailbox list  -u postmaster@testmailbox
Spam
Trash
Sent
Drafts
INBOX
TEST
TEST/SUBTEST

3. Move (or copy) mails from INBOX to SUBTEST (all looks fine, and
mails visible under SUBTEST)
4. Rename TEST folder to any new name, NEWTEST

Let`s try to view mails in mail client in NEWTEST-SUBTEST, folder have
no emails :(


mailsrv# doveadm -f table mailbox status -u postmaster@testmailbox
"messages vsize" NEWTEST*
mailbox  messages vsize
NEWTEST 00
NEWTEST/SUBTEST 00

If doveadm force-resync postmaster@testmailbox, mails will be visible 
in INBOX


mailsrv# doveadm -f table mailbox status -u postmaster@testmailbox
"messages vsize" INBOX*
mailbox messages vsize
INBOX   228

Dovecot installation: CentOS x86_64 Linux 7.5.1804

Storage: HDD Local Partition - XFS filesystem  / multi-dbox (mdbox) as
mail_storage (this problem is not reproduced with the settings as
Maildir storage !)
somthing wrong with mapping indices.


 [start] 

# dovecot -n

# 2.2.36 (1f10bfa63): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.21 (92477967)
# OS: Linux 3.10.0-862.2.3.el7.x86_64 x86_64 CentOS Linux release
7.5.1804 (Core)
# Hostname: 
auth_mechanisms = plain login digest-md5 cram-md5
base_dir = /var/run/dovecot/
default_client_limit = 2
default_login_user = dovecot
default_process_limit = 1
dict {
  quota = redis:host=127.0.0.1:prefix=user/:timeout_msecs=1000
}
disable_plaintext_auth = no
first_valid_gid = 90
first_valid_uid = 90
imapc_features = rfc822.size fetch-headers
imapc_host = 
imapc_user = %u
lda_mailbox_autocreate = yes
lda_mailbox_autosubscribe = yes
login_greeting = .
login_log_format_elements = user=<%u> method=%m rip=%r lip=%l %c
login_trusted_networks = 10.0.1.0/24
mail_access_groups = mail
mail_debug = yes
mail_fsync = never
mail_gid = 97
mail_location =
mdbox:~/mail/mailboxes:FULLDIRNAME=mBoX-MeSsAgEs:INDEX=~/mail/index:CONTROL=~/mail/control:INBOX=~/mail/mailboxes/inbox
mail_log_prefix = "%{session} %Us(%u): "
mail_max_lock_timeout = 30 secs
mail_plugins = quota  zlib
mail_prefetch_count = 20
mail_privileged_group = mail
mail_uid = 97
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope
encoded-character vacation subaddress comparator-i;ascii-numeric
relational regex imap4flags copy include variables enotify environment
mailbox date index ihave duplicate mime foreverypart extracttext
vacation-seconds editheader
mbox_lock_timeout = 30 secs
mbox_very_dirty_syncs = yes
mbox_write_locks = fcntl
namespace inbox {
  inbox = yes
  list = yes
  location =
  mailbox Drafts {
auto = subscribe
special_use = \Drafts
  }
  mailbox Sent {
auto = subscribe
special_use = \Sent
  }
  mailbox Spam {
auto = subscribe
  }
  mailbox Trash {
auto = subscribe
special_use = \Trash
  }
  prefix =
  separator = /
  type = private
}
passdb {
  args = /etc/dovecot/dovecot-ldap.conf
  driver = ldap
}
plugin {
  cgroup_basedir = /usr/sys/cgroup
  hostingAccount = default
  quota = dict:User quota::proxy::quota
  quota_grace = 0%%
  quota_over_flag_value = TRUE
  quota_over_script = account-quota mismatch %u
  quota_rule = *:storage=4T
  quota_warning = storage=101%% account-quota block %u
  quota_warning1 = -storage=100%% account-quota unblock %u
  sieve = file:~/sieve;active=~/.dovecot.sieve
  sieve_before = /home/sieve/%d/
  sieve_extensions = +editheader +vacation-seconds -body
  sieve_max_redirects = 200
  sieve_vacation_min_period = 1s
  trash_folder = Trash
  zlib_save = lz4
  zlib_save_level = 6
}
pop3_delete_type = expunge
protocols = imap pop3 sieve
service account-quota {
  executable = script /usr/local/scripts/account-quota
  unix_listener account-quota {
mode = 0666
user = dovecot
  }
  user = dovecot
}
service anvil {
  chroot = /var/empty
  client_limit = 0
  drop_priv_before_exec = no
  executable = anvil
  extra_groups =
  group = $default_internal_user
  idle_kill = 4294967295 secs
  privileged_group =
  process_limit = 1
  process_min_avail = 1
  protocol =
  service_count = 0
  type = anvil
  unix_listener anvil-auth-penalty {
group = $default_internal_user
mode = 0660
user = dovecot
  }
  unix_listener anvil {
group = $default_internal_user
mode = 0660
user = dovecot
  }
  user = $default_internal_user
  vsz_limit = 18446744073709551615 B
}
service auth-worker {
  chroot = /var/empty
  user = $default_internal_user
}
service auth {
  chroot = /var/empty
  executable = /usr/libexec/dovecot/auth
  unix_listener auth-client {
mode = 0660
  }
  unix_listen

Re: LastLogin update

2019-06-25 Thread Júlio Covolato via dovecot


Em 24/06/2019 18:39, Jorge Bastos via dovecot escreveu:

Hi Julio,

Could you share with us your "acl" config for shared folder?
May be interesting for me,

Jorge,



Hi Jorge.

Currently I'm not using the shared folder.
Maybe you could be interested in this tutorial from iRedmail:

https://docs.iredmail.org/public.folder.html

--
_Engº Julio Cesar Covolato
   0v0   
  /(_)\  F: +55 11 99175-9260
   ^ ^   PSI INTERNET
--



---
Este email foi escaneado pelo Avast antivírus.
https://www.avast.com/antivirus


Emails not visible after renaming folders

2019-06-25 Thread Aleksandr via dovecot
Hello,

I have strange problem with "losing" emails after rename mail
folder(s) (via imap client: thunderbird, roundcude, etc..)

How to reproduce:

1. Create some folder name, like TEST
2. Create sub-folder under TEST (like SUBTEST)

Structure:

TEST
  |--SUBTEST


# doveadm  mailbox list  -u postmaster@testmailbox
Spam
Trash
Sent
Drafts
INBOX
TEST
TEST/SUBTEST

3. Move (or copy) mails from INBOX to SUBTEST (all looks fine, and
mails visible under SUBTEST)
4. Rename TEST folder to any new name, NEWTEST

Let`s try to view mails in mail client in NEWTEST-SUBTEST, folder have
no emails :(


mailsrv# doveadm -f table mailbox status -u postmaster@testmailbox
"messages vsize" NEWTEST*
mailbox  messages vsize
NEWTEST 00
NEWTEST/SUBTEST 00

If doveadm force-resync postmaster@testmailbox, mails will be visible in INBOX

mailsrv# doveadm -f table mailbox status -u postmaster@testmailbox
"messages vsize" INBOX*
mailbox messages vsize
INBOX   228

Dovecot installation: CentOS x86_64 Linux 7.5.1804

Storage: HDD Local Partition - XFS filesystem  / multi-dbox (mdbox) as
mail_storage (this problem is not reproduced with the settings as
Maildir storage !)
somthing wrong with mapping indices.


 [start] 

# dovecot -n

# 2.2.36 (1f10bfa63): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.21 (92477967)
# OS: Linux 3.10.0-862.2.3.el7.x86_64 x86_64 CentOS Linux release
7.5.1804 (Core)
# Hostname: 
auth_mechanisms = plain login digest-md5 cram-md5
base_dir = /var/run/dovecot/
default_client_limit = 2
default_login_user = dovecot
default_process_limit = 1
dict {
  quota = redis:host=127.0.0.1:prefix=user/:timeout_msecs=1000
}
disable_plaintext_auth = no
first_valid_gid = 90
first_valid_uid = 90
imapc_features = rfc822.size fetch-headers
imapc_host = 
imapc_user = %u
lda_mailbox_autocreate = yes
lda_mailbox_autosubscribe = yes
login_greeting = .
login_log_format_elements = user=<%u> method=%m rip=%r lip=%l %c
login_trusted_networks = 10.0.1.0/24
mail_access_groups = mail
mail_debug = yes
mail_fsync = never
mail_gid = 97
mail_location =
mdbox:~/mail/mailboxes:FULLDIRNAME=mBoX-MeSsAgEs:INDEX=~/mail/index:CONTROL=~/mail/control:INBOX=~/mail/mailboxes/inbox
mail_log_prefix = "%{session} %Us(%u): "
mail_max_lock_timeout = 30 secs
mail_plugins = quota  zlib
mail_prefetch_count = 20
mail_privileged_group = mail
mail_uid = 97
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope
encoded-character vacation subaddress comparator-i;ascii-numeric
relational regex imap4flags copy include variables enotify environment
mailbox date index ihave duplicate mime foreverypart extracttext
vacation-seconds editheader
mbox_lock_timeout = 30 secs
mbox_very_dirty_syncs = yes
mbox_write_locks = fcntl
namespace inbox {
  inbox = yes
  list = yes
  location =
  mailbox Drafts {
auto = subscribe
special_use = \Drafts
  }
  mailbox Sent {
auto = subscribe
special_use = \Sent
  }
  mailbox Spam {
auto = subscribe
  }
  mailbox Trash {
auto = subscribe
special_use = \Trash
  }
  prefix =
  separator = /
  type = private
}
passdb {
  args = /etc/dovecot/dovecot-ldap.conf
  driver = ldap
}
plugin {
  cgroup_basedir = /usr/sys/cgroup
  hostingAccount = default
  quota = dict:User quota::proxy::quota
  quota_grace = 0%%
  quota_over_flag_value = TRUE
  quota_over_script = account-quota mismatch %u
  quota_rule = *:storage=4T
  quota_warning = storage=101%% account-quota block %u
  quota_warning1 = -storage=100%% account-quota unblock %u
  sieve = file:~/sieve;active=~/.dovecot.sieve
  sieve_before = /home/sieve/%d/
  sieve_extensions = +editheader +vacation-seconds -body
  sieve_max_redirects = 200
  sieve_vacation_min_period = 1s
  trash_folder = Trash
  zlib_save = lz4
  zlib_save_level = 6
}
pop3_delete_type = expunge
protocols = imap pop3 sieve
service account-quota {
  executable = script /usr/local/scripts/account-quota
  unix_listener account-quota {
mode = 0666
user = dovecot
  }
  user = dovecot
}
service anvil {
  chroot = /var/empty
  client_limit = 0
  drop_priv_before_exec = no
  executable = anvil
  extra_groups =
  group = $default_internal_user
  idle_kill = 4294967295 secs
  privileged_group =
  process_limit = 1
  process_min_avail = 1
  protocol =
  service_count = 0
  type = anvil
  unix_listener anvil-auth-penalty {
group = $default_internal_user
mode = 0660
user = dovecot
  }
  unix_listener anvil {
group = $default_internal_user
mode = 0660
user = dovecot
  }
  user = $default_internal_user
  vsz_limit = 18446744073709551615 B
}
service auth-worker {
  chroot = /var/empty
  user = $default_internal_user
}
service auth {
  chroot = /var/empty
  executable = /usr/libexec/dovecot/auth
  unix_listener auth-client {
mode = 0660
  }
  unix_listener auth-master {
mode = 0666
  }
  unix_listener auth-userdb {
mode = 0777
  }
  user = $default_internal_user
}
service dict 

Exclude dovecot-uidlist files from a Maildir backup ?

2019-06-25 Thread David Pottage via dovecot

Hi,

I am using restic to backup my email (stored in dovecot Maildir format) 
to Amazon S3


As each message is a separate file on disk, and those files don't change 
after the email has been delivered and read by the user, the incremental 
backup each day is fairly efficient as it only stored new mails.


However, the dovecot-uidlist files change frequently, and are often 
quite large. The restic backup program detects the file has changed and 
uploads a new version, but is not smart enough to detect that only a few 
lines have changed, so it uploads a fresh copy of the entire file to 
remote storage.


I have done some test backups and have noticed, that if I exclude those 
files from the backup, it completes much faster and uploads far less. 
Would this be a reasonable policy?


My backup is mainly there against unlikely but severe events such as 
complete hard drive failure, so if I ever had to use it, I would not 
mind wating for my email client to re-download all my emails.


--
David Pottage


Re: Dovecot LDA error - Invalid -f parameter: Invalid character in path

2019-06-25 Thread Daniel Lange via dovecot

Hi Bruno,

Am 24.06.19 um 17:05 schrieb Bruno de Paula Larini via dovecot:

I'm using dovecot as postfix's LDA. The version is 2.3.6.
Last week some spammer set the envelope's FROM to "foo@b...@domain.com" 
(with two @). While trying to deliver (as this one didn't hit the 
spamassassin's score), dovecot said the following:


Jun 21 02:35:58 mymailserver postfix/pipe[29736]: ADA268195E: 
to=, relay=dovecot, delay=0.08, delays=0.03/0.02/0/0.04, 
dsn=5.3.0, status=bounced (command line usage error. Command output: 
lda: Fatal: Invalid -f parameter: Invalid character in path )


Which caused postfix to put it on the bounce list, but the spammer's 
destiny don't really exist.


I could successfully mimic the spammer using telnet and putting two @ in 
"mail from" address.
I don't think this should be an expected behaviour, right? Or is this 
some config based error?


No, this is a bug in Dovecot's logic tracked internally at Open-Xchange 
AG / Dovecot OY as DOP-1045.


Dovecot LDA and LMTP should just not care about remote address validity 
when delivering locally. It's not the LDA's business.


See <6386018f-22b2-9562-b5a2-36e81cbe2...@debian.org> (bounces on 
invalid UTF-8 in localpart) for my error report from March.

There have been multiple other users asking about this on the ML, too.

Kind regards,
Daniel