Re: several misc questions, public folders and sharing, quota, ssl

2017-04-15 Thread Robert Moskowitz



On 04/14/2017 05:11 PM, Aki Tuomi wrote:

Can you try turning mail_debug=yes and posting logs?

Also if possible, can you try telnetting to the server and issuing


If you only allow secure connections, you may need instead of telnet:


openssl s_client -connect your_host_tld:993

or

openssl s_client -connect your_host_tld:143 -starttls imap




a LOGIN username password
a SELECT public/TestFolder1

with debug turned on?

ACL plugin is needed *iff* you want to *restrict* access.


Aki


On April 14, 2017 at 11:53 PM David Mehler  wrote:


Hi Aki,

Thanks for your reply. Sorry, hit the reply to and not the reply to all option.

So, even when a folder is a public folder I'm still needing to use the
acl plugin?


The public/TestFolder is showing up, the public/TestFolder1 is not.

Thanks.
Dave.


On 4/14/17, Aki Tuomi  wrote:

Please keep responses on the list. Thank you. =)

Without ACL plugin there is no way to restrict access, it's free for all.

my site is a very tiny few user site, but ...

auth_mechanisms = login plain
mail_attribute_dict = file:%h/Mail/dovecot-attributes
mail_location = sdbox:~/Mail
mail_plugins = stats quota fts fts_lucene
namespace inbox {
   inbox = yes
   list = yes
   location =
   mailbox Drafts {
 special_use = \Drafts
   }
   mailbox Sent {
 special_use = \Sent
   }
   mailbox "Sent Messages" {
 special_use = \Sent
   }
   mailbox Spam {
 auto = subscribe
 special_use = \Junk
   }
   mailbox Trash {
 special_use = \Trash
   }
   prefix =
   separator = .
   subscriptions = yes
   type = private
}
passdb {
   args = /etc/dovecot/dovecot-sql.conf.ext
   driver = sql
}
plugin {
   fts = lucene
   fts_lucene = whitespace_chars=@.
   imapsieve_mailbox1_before = file:/usr/lib/dovecot/sieve/report-spam.sieve
   imapsieve_mailbox1_causes = COPY
   imapsieve_mailbox1_name = Spam
   imapsieve_mailbox2_before = file:/usr/lib/dovecot/sieve/report-ham.sieve
   imapsieve_mailbox2_causes = COPY
   imapsieve_mailbox2_from = Spam
   imapsieve_mailbox2_name = *
   quota = count:User quota
   quota_vsizes = yes
   recipient_delimiter = +
   sieve = ~/.dovecot.sieve
   sieve_dir = ~/sieve
   sieve_extensions = +notify +imapflags
   sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.execute
   sieve_pipe_bin_dir = /usr/lib/dovecot/sieve
   sieve_plugins = sieve_imapsieve sieve_extprograms
   stats_refresh = 30
}
protocols = imap lmtp
service auth {
   unix_listener /var/spool/postfix/private/auth {
 mode = 0666
   }
   user = $default_internal_user
}
service doveadm {
   inet_listener http {
 address = 127.0.0.1
 port = 38080
   }
}
service imap-login {
   inet_listener imap {
 port = 143
   }
   inet_listener imaps {
 port = 993
 ssl = yes
   }
}
service lmtp {
   inet_listener lmtp {
 address = 127.0.0.1
 port = 8025
   }
}
service stats {
   fifo_listener stats-mail {
 mode = 0666
   }
}
ssl = required
ssl_cert = #
ssl_cipher_list =
ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES256-SHA256:AES256-SHA:AES128-SHA
ssl_dh_parameters_length = 4096
ssl_key =  #
ssl_prefer_server_ciphers = yes
ssl_protocols = !SSLv2 !SSLv3
submission_host = 127.0.0.1:25
userdb {
   args = /etc/dovecot/dovecot-sql.conf.ext
   driver = sql
}
protocol imap {
   mail_plugins = stats quota fts fts_lucene imap_stats imap_sieve
}
protocol lmtp {
   mail_plugins = stats quota fts fts_lucene sieve
}
protocol lda {
   mail_plugins = stats quota fts fts_lucene sieve
}

Aki


On April 14, 2017 at 7:21 PM David Mehler  wrote:


Hello Aki,

Thank you for your reply.

I've implemented your changes and thanks for the @STRENGTH reminder, I
had forgotten about that one.

I'll check out the acl plugin. Is it required when sharing a public
folder or are public folders usable by all? I know it is for shared
folders.

The TestFolder1 is still not showing up in public not sure why
everything looks good.

My configuration was migrated from 2.0 to 2.1 then 2.2, various ports
along the way.

I was wondering if I could take a look at your dovecot configuration
files and a doveconf -n output?

Thanks.
Dave.


On 4/14/17, Aki Tuomi  wrote:

On April 14, 2017 at 3:04 AM David Mehler 
wrote:


Hello,

I'm running dovecot 2.29 on a freebsd 10.3 system. I'm wanting to
optimize how the system is running and have a few misc questions.

First ssl, is my cipher list good? I'm trying for pfs and wanting to
ensure these cipherlist is appropriate:

ssl_cipher_list = EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH


I would add @STRENGTH to the end, so it'll get sorted by strengthness.


Next, a new feature that I'm trying for is virtual folders that store
All messages. My understanding of this is that it stores a version of
every received message in one place? I've got the virtual plugin

Re: several misc questions, public folders and sharing, quota, ssl

2017-04-15 Thread Olaf Hopp

On 04/14/2017 02:04 AM, David Mehler wrote:


First ssl, is my cipher list good? I'm trying for pfs and wanting to
ensure these cipherlist is appropriate:

ssl_cipher_list = EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH


You can check the quality of your SSL/TLS setup via
https://www.htbridge.com/ssl/

Regards, Olaf


--
Karlsruher Institut für Technologie (KIT)
ATIS - Abt. Technische Infrastruktur, Fakultät für Informatik

Dipl.-Geophys. Olaf Hopp
- Leitung IT-Dienste -

Am Fasanengarten 5, Gebäude 50.34, Raum 009
76131 Karlsruhe
Telefon: +49 721 608-43973
Fax: +49 721 608-46699
E-Mail: olaf.h...@kit.edu
www.atis.informatik.kit.edu

www.kit.edu

KIT - Die Forschungsuniversität in der Helmholtz-Gemeinschaft

Das KIT ist seit 2010 als familiengerechte Hochschule zertifiziert.



smime.p7s
Description: S/MIME Cryptographic Signature


Re: several misc questions, public folders and sharing, quota, ssl

2017-04-14 Thread Aki Tuomi
Can you try turning mail_debug=yes and posting logs?

Also if possible, can you try telnetting to the server and issuing

a LOGIN username password
a SELECT public/TestFolder1

with debug turned on?

ACL plugin is needed *iff* you want to *restrict* access. 


Aki

> On April 14, 2017 at 11:53 PM David Mehler  wrote:
> 
> 
> Hi Aki,
> 
> Thanks for your reply. Sorry, hit the reply to and not the reply to all 
> option.
> 
> So, even when a folder is a public folder I'm still needing to use the
> acl plugin?
> 
> 
> The public/TestFolder is showing up, the public/TestFolder1 is not.
> 
> Thanks.
> Dave.
> 
> 
> On 4/14/17, Aki Tuomi  wrote:
> > Please keep responses on the list. Thank you. =)
> >
> > Without ACL plugin there is no way to restrict access, it's free for all.
> >
> > my site is a very tiny few user site, but ...
> >
> > auth_mechanisms = login plain
> > mail_attribute_dict = file:%h/Mail/dovecot-attributes
> > mail_location = sdbox:~/Mail
> > mail_plugins = stats quota fts fts_lucene
> > namespace inbox {
> >   inbox = yes
> >   list = yes
> >   location =
> >   mailbox Drafts {
> > special_use = \Drafts
> >   }
> >   mailbox Sent {
> > special_use = \Sent
> >   }
> >   mailbox "Sent Messages" {
> > special_use = \Sent
> >   }
> >   mailbox Spam {
> > auto = subscribe
> > special_use = \Junk
> >   }
> >   mailbox Trash {
> > special_use = \Trash
> >   }
> >   prefix =
> >   separator = .
> >   subscriptions = yes
> >   type = private
> > }
> > passdb {
> >   args = /etc/dovecot/dovecot-sql.conf.ext
> >   driver = sql
> > }
> > plugin {
> >   fts = lucene
> >   fts_lucene = whitespace_chars=@.
> >   imapsieve_mailbox1_before = file:/usr/lib/dovecot/sieve/report-spam.sieve
> >   imapsieve_mailbox1_causes = COPY
> >   imapsieve_mailbox1_name = Spam
> >   imapsieve_mailbox2_before = file:/usr/lib/dovecot/sieve/report-ham.sieve
> >   imapsieve_mailbox2_causes = COPY
> >   imapsieve_mailbox2_from = Spam
> >   imapsieve_mailbox2_name = *
> >   quota = count:User quota
> >   quota_vsizes = yes
> >   recipient_delimiter = +
> >   sieve = ~/.dovecot.sieve
> >   sieve_dir = ~/sieve
> >   sieve_extensions = +notify +imapflags
> >   sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.execute
> >   sieve_pipe_bin_dir = /usr/lib/dovecot/sieve
> >   sieve_plugins = sieve_imapsieve sieve_extprograms
> >   stats_refresh = 30
> > }
> > protocols = imap lmtp
> > service auth {
> >   unix_listener /var/spool/postfix/private/auth {
> > mode = 0666
> >   }
> >   user = $default_internal_user
> > }
> > service doveadm {
> >   inet_listener http {
> > address = 127.0.0.1
> > port = 38080
> >   }
> > }
> > service imap-login {
> >   inet_listener imap {
> > port = 143
> >   }
> >   inet_listener imaps {
> > port = 993
> > ssl = yes
> >   }
> > }
> > service lmtp {
> >   inet_listener lmtp {
> > address = 127.0.0.1
> > port = 8025
> >   }
> > }
> > service stats {
> >   fifo_listener stats-mail {
> > mode = 0666
> >   }
> > }
> > ssl = required
> > ssl_cert = #
> > ssl_cipher_list =
> > ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES256-SHA256:AES256-SHA:AES128-SHA
> > ssl_dh_parameters_length = 4096
> > ssl_key =  #
> > ssl_prefer_server_ciphers = yes
> > ssl_protocols = !SSLv2 !SSLv3
> > submission_host = 127.0.0.1:25
> > userdb {
> >   args = /etc/dovecot/dovecot-sql.conf.ext
> >   driver = sql
> > }
> > protocol imap {
> >   mail_plugins = stats quota fts fts_lucene imap_stats imap_sieve
> > }
> > protocol lmtp {
> >   mail_plugins = stats quota fts fts_lucene sieve
> > }
> > protocol lda {
> >   mail_plugins = stats quota fts fts_lucene sieve
> > }
> >
> > Aki
> >
> >> On April 14, 2017 at 7:21 PM David Mehler  wrote:
> >>
> >>
> >> Hello Aki,
> >>
> >> Thank you for your reply.
> >>
> >> I've implemented your changes and thanks for the @STRENGTH reminder, I
> >> had forgotten about that one.
> >>
> >> I'll check out the acl plugin. Is it required when sharing a public
> >> folder or are public folders usable by all? I know it is for shared
> >> folders.
> >>
> >> The TestFolder1 is still not showing up in public not sure why
> >> everything looks good.
> >>
> >> My configuration was migrated from 2.0 to 2.1 then 2.2, various ports
> >> along the way.
> >>
> >> I was wondering if I could take a look at your dovecot configuration
> >> files and a doveconf -n output?
> >>
> >> Thanks.
> >> Dave.
> >>
> >>
> >> On 4/14/17, Aki Tuomi  wrote:
> >> >
> >> >> On April 14, 2017 at 3:04 AM David Mehler 
> >> >> wrote:
> >> >>
> >> >>
> >> >> Hello,
> >> >>
> >> >> I'm running dovecot 2.29 on a freebsd 10.3 system. I'm wanting to
> >> >> optimize how the system is running and have a few misc questions.
> >> >>
> >> >> First ssl, is my cipher list good? I'm try

Re: several misc questions, public folders and sharing, quota, ssl

2017-04-14 Thread David Mehler
Hi Aki,

Thanks for your reply. Sorry, hit the reply to and not the reply to all option.

So, even when a folder is a public folder I'm still needing to use the
acl plugin?


The public/TestFolder is showing up, the public/TestFolder1 is not.

Thanks.
Dave.


On 4/14/17, Aki Tuomi  wrote:
> Please keep responses on the list. Thank you. =)
>
> Without ACL plugin there is no way to restrict access, it's free for all.
>
> my site is a very tiny few user site, but ...
>
> auth_mechanisms = login plain
> mail_attribute_dict = file:%h/Mail/dovecot-attributes
> mail_location = sdbox:~/Mail
> mail_plugins = stats quota fts fts_lucene
> namespace inbox {
>   inbox = yes
>   list = yes
>   location =
>   mailbox Drafts {
> special_use = \Drafts
>   }
>   mailbox Sent {
> special_use = \Sent
>   }
>   mailbox "Sent Messages" {
> special_use = \Sent
>   }
>   mailbox Spam {
> auto = subscribe
> special_use = \Junk
>   }
>   mailbox Trash {
> special_use = \Trash
>   }
>   prefix =
>   separator = .
>   subscriptions = yes
>   type = private
> }
> passdb {
>   args = /etc/dovecot/dovecot-sql.conf.ext
>   driver = sql
> }
> plugin {
>   fts = lucene
>   fts_lucene = whitespace_chars=@.
>   imapsieve_mailbox1_before = file:/usr/lib/dovecot/sieve/report-spam.sieve
>   imapsieve_mailbox1_causes = COPY
>   imapsieve_mailbox1_name = Spam
>   imapsieve_mailbox2_before = file:/usr/lib/dovecot/sieve/report-ham.sieve
>   imapsieve_mailbox2_causes = COPY
>   imapsieve_mailbox2_from = Spam
>   imapsieve_mailbox2_name = *
>   quota = count:User quota
>   quota_vsizes = yes
>   recipient_delimiter = +
>   sieve = ~/.dovecot.sieve
>   sieve_dir = ~/sieve
>   sieve_extensions = +notify +imapflags
>   sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.execute
>   sieve_pipe_bin_dir = /usr/lib/dovecot/sieve
>   sieve_plugins = sieve_imapsieve sieve_extprograms
>   stats_refresh = 30
> }
> protocols = imap lmtp
> service auth {
>   unix_listener /var/spool/postfix/private/auth {
> mode = 0666
>   }
>   user = $default_internal_user
> }
> service doveadm {
>   inet_listener http {
> address = 127.0.0.1
> port = 38080
>   }
> }
> service imap-login {
>   inet_listener imap {
> port = 143
>   }
>   inet_listener imaps {
> port = 993
> ssl = yes
>   }
> }
> service lmtp {
>   inet_listener lmtp {
> address = 127.0.0.1
> port = 8025
>   }
> }
> service stats {
>   fifo_listener stats-mail {
> mode = 0666
>   }
> }
> ssl = required
> ssl_cert = #
> ssl_cipher_list =
> ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES256-SHA256:AES256-SHA:AES128-SHA
> ssl_dh_parameters_length = 4096
> ssl_key =  #
> ssl_prefer_server_ciphers = yes
> ssl_protocols = !SSLv2 !SSLv3
> submission_host = 127.0.0.1:25
> userdb {
>   args = /etc/dovecot/dovecot-sql.conf.ext
>   driver = sql
> }
> protocol imap {
>   mail_plugins = stats quota fts fts_lucene imap_stats imap_sieve
> }
> protocol lmtp {
>   mail_plugins = stats quota fts fts_lucene sieve
> }
> protocol lda {
>   mail_plugins = stats quota fts fts_lucene sieve
> }
>
> Aki
>
>> On April 14, 2017 at 7:21 PM David Mehler  wrote:
>>
>>
>> Hello Aki,
>>
>> Thank you for your reply.
>>
>> I've implemented your changes and thanks for the @STRENGTH reminder, I
>> had forgotten about that one.
>>
>> I'll check out the acl plugin. Is it required when sharing a public
>> folder or are public folders usable by all? I know it is for shared
>> folders.
>>
>> The TestFolder1 is still not showing up in public not sure why
>> everything looks good.
>>
>> My configuration was migrated from 2.0 to 2.1 then 2.2, various ports
>> along the way.
>>
>> I was wondering if I could take a look at your dovecot configuration
>> files and a doveconf -n output?
>>
>> Thanks.
>> Dave.
>>
>>
>> On 4/14/17, Aki Tuomi  wrote:
>> >
>> >> On April 14, 2017 at 3:04 AM David Mehler 
>> >> wrote:
>> >>
>> >>
>> >> Hello,
>> >>
>> >> I'm running dovecot 2.29 on a freebsd 10.3 system. I'm wanting to
>> >> optimize how the system is running and have a few misc questions.
>> >>
>> >> First ssl, is my cipher list good? I'm trying for pfs and wanting to
>> >> ensure these cipherlist is appropriate:
>> >>
>> >> ssl_cipher_list = EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
>> >>
>> >
>> > I would add @STRENGTH to the end, so it'll get sorted by strengthness.
>> >
>> >> Next, a new feature that I'm trying for is virtual folders that store
>> >> All messages. My understanding of this is that it stores a version of
>> >> every received message in one place? I've got the virtual plugin
>> >> loaded and have:
>> >>
>> >>   mailbox virtual/All {
>> >> comment = All my messages
>> >> special_use = \All
>> >>   }
>> >>
>> >> I've got a directory /home/vmail/example.com/username/virtua

Re: several misc questions, public folders and sharing, quota, ssl

2017-04-14 Thread Aki Tuomi
Please keep responses on the list. Thank you. =)

Without ACL plugin there is no way to restrict access, it's free for all.

my site is a very tiny few user site, but ...

auth_mechanisms = login plain
mail_attribute_dict = file:%h/Mail/dovecot-attributes
mail_location = sdbox:~/Mail
mail_plugins = stats quota fts fts_lucene
namespace inbox {
  inbox = yes
  list = yes
  location =
  mailbox Drafts {
special_use = \Drafts
  }
  mailbox Sent {
special_use = \Sent
  }
  mailbox "Sent Messages" {
special_use = \Sent
  }
  mailbox Spam {
auto = subscribe
special_use = \Junk
  }
  mailbox Trash {
special_use = \Trash
  }
  prefix =
  separator = .
  subscriptions = yes
  type = private
}
passdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
plugin {
  fts = lucene
  fts_lucene = whitespace_chars=@.
  imapsieve_mailbox1_before = file:/usr/lib/dovecot/sieve/report-spam.sieve
  imapsieve_mailbox1_causes = COPY
  imapsieve_mailbox1_name = Spam
  imapsieve_mailbox2_before = file:/usr/lib/dovecot/sieve/report-ham.sieve
  imapsieve_mailbox2_causes = COPY
  imapsieve_mailbox2_from = Spam
  imapsieve_mailbox2_name = *
  quota = count:User quota
  quota_vsizes = yes
  recipient_delimiter = +
  sieve = ~/.dovecot.sieve
  sieve_dir = ~/sieve
  sieve_extensions = +notify +imapflags
  sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.execute
  sieve_pipe_bin_dir = /usr/lib/dovecot/sieve
  sieve_plugins = sieve_imapsieve sieve_extprograms
  stats_refresh = 30
}
protocols = imap lmtp
service auth {
  unix_listener /var/spool/postfix/private/auth {
mode = 0666
  }
  user = $default_internal_user
}
service doveadm {
  inet_listener http {
address = 127.0.0.1
port = 38080
  }
}
service imap-login {
  inet_listener imap {
port = 143
  }
  inet_listener imaps {
port = 993
ssl = yes
  }
}
service lmtp {
  inet_listener lmtp {
address = 127.0.0.1
port = 8025
  }
}
service stats {
  fifo_listener stats-mail {
mode = 0666
  }
}
ssl = required
ssl_cert = # 
ssl_cipher_list = 
ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES256-SHA256:AES256-SHA:AES128-SHA
ssl_dh_parameters_length = 4096
ssl_key =  # 
ssl_prefer_server_ciphers = yes
ssl_protocols = !SSLv2 !SSLv3
submission_host = 127.0.0.1:25
userdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
protocol imap {
  mail_plugins = stats quota fts fts_lucene imap_stats imap_sieve
}
protocol lmtp {
  mail_plugins = stats quota fts fts_lucene sieve
}
protocol lda {
  mail_plugins = stats quota fts fts_lucene sieve
}

Aki

> On April 14, 2017 at 7:21 PM David Mehler  wrote:
> 
> 
> Hello Aki,
> 
> Thank you for your reply.
> 
> I've implemented your changes and thanks for the @STRENGTH reminder, I
> had forgotten about that one.
> 
> I'll check out the acl plugin. Is it required when sharing a public
> folder or are public folders usable by all? I know it is for shared
> folders.
> 
> The TestFolder1 is still not showing up in public not sure why
> everything looks good.
> 
> My configuration was migrated from 2.0 to 2.1 then 2.2, various ports
> along the way.
> 
> I was wondering if I could take a look at your dovecot configuration
> files and a doveconf -n output?
> 
> Thanks.
> Dave.
> 
> 
> On 4/14/17, Aki Tuomi  wrote:
> >
> >> On April 14, 2017 at 3:04 AM David Mehler  wrote:
> >>
> >>
> >> Hello,
> >>
> >> I'm running dovecot 2.29 on a freebsd 10.3 system. I'm wanting to
> >> optimize how the system is running and have a few misc questions.
> >>
> >> First ssl, is my cipher list good? I'm trying for pfs and wanting to
> >> ensure these cipherlist is appropriate:
> >>
> >> ssl_cipher_list = EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
> >>
> >
> > I would add @STRENGTH to the end, so it'll get sorted by strengthness.
> >
> >> Next, a new feature that I'm trying for is virtual folders that store
> >> All messages. My understanding of this is that it stores a version of
> >> every received message in one place? I've got the virtual plugin
> >> loaded and have:
> >>
> >>   mailbox virtual/All {
> >> comment = All my messages
> >> special_use = \All
> >>   }
> >>
> >> I've got a directory /home/vmail/example.com/username/virtual under
> >> which is an ALL folder both directories are accessible to the vmail
> >> user, yet there's no contents in this folder and it's showing up
> >> nowhere.
> >>
> >
> > Configuring virtual all folder:
> >
> > namespace {
> >   prefix = virtual
> >   location = virtual:/etc/dovecot/virtual:INDEX=%h/virtual
> >   comment = All my messages
> >   special_use = \All
> >   mailbox All {
> > auto = subscribe
> >   }
> > }
> >
> >  /etc/dovecot/virtual/All/dovecot-virtual 
> > *
> >   all
> >  EOF ===
> >
> >> Next, quota warnings, are not being 

Re: several misc questions, public folders and sharing, quota, ssl

2017-04-14 Thread Aki Tuomi

> On April 14, 2017 at 3:04 AM David Mehler  wrote:
> 
> 
> Hello,
> 
> I'm running dovecot 2.29 on a freebsd 10.3 system. I'm wanting to
> optimize how the system is running and have a few misc questions.
> 
> First ssl, is my cipher list good? I'm trying for pfs and wanting to
> ensure these cipherlist is appropriate:
> 
> ssl_cipher_list = EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
> 

I would add @STRENGTH to the end, so it'll get sorted by strengthness.

> Next, a new feature that I'm trying for is virtual folders that store
> All messages. My understanding of this is that it stores a version of
> every received message in one place? I've got the virtual plugin
> loaded and have:
> 
>   mailbox virtual/All {
> comment = All my messages
> special_use = \All
>   }
> 
> I've got a directory /home/vmail/example.com/username/virtual under
> which is an ALL folder both directories are accessible to the vmail
> user, yet there's no contents in this folder and it's showing up
> nowhere.
> 

Configuring virtual all folder:

namespace {
  prefix = virtual
  location = virtual:/etc/dovecot/virtual:INDEX=%h/virtual
  comment = All my messages
  special_use = \All
  mailbox All {
auto = subscribe
  }
}

 /etc/dovecot/virtual/All/dovecot-virtual 
* 
  all
 EOF ===

> Next, quota warnings, are not being sent at all. I set up a testuser
> with a quota of 2 mb, then sent a message to that user getting the box
> to 95% full, and no message. Took the user overquota with the next
> message, still nothing, and a third message did trigger my custom
> quota exceeded message and the message was bounced.
>

I would recommend you using

mail_plugins = $mail_plugins quota quota_clone

plugin {
  quota = count:User quota
  quota_clone_dict = proxy::sqlquota
  quota_vsizes = true
}

Also,

"Note that the warning is ONLY executed at the exact time when the limit is 
being crossed, so when you're testing it you have to do it by crossing the 
limit by saving a new mail. If something else besides Dovecot updates quota so 
that the limit is crossed, the warning is never executed."

>  I'm wanting to implement public folders. My mailboxes are all
> virtual, and they are stored under /home/vmail/example.com/username
> and /home/vmail/example.org/username in the maildir format. I've got
> one user uid and gid of 999 name of vmail who owns all the mailboxes.
> I've separated out public folders storing them under
> /home/vmail/public. I've created one mailbox called TestFolder and
> new, cur, and tmp directories under it. This is what it looks like:


 
> The public/TestFolder is showing up fine and I can switch to it. The
> public/TestFolder1 is not showing up at all so I'm not seeing it and
> can't switch to it. Any ideas?
> 

Not sure why it's not showing up, *but*, you could add :INDEXPVT=%h/public to 
the folder, to keep per-user indexes separate.

> My second question involves public folders and domain sharing. Are
> public folders accessible to all users and all domains? I've got two
> domains example.com and example.org i'd like to create a folder that
> some users in example.com can share with some users in example.org,
> not necessarily all users in those domains should be able to see the
> folders.
> 

Dovecot does not, as per such, care about your domains. It cares about user 
names. If you want to do this kind of thing, please consult ACL plugin. 
https://wiki2.dovecot.org/ACL

> Ideas welcome.
> 
> Thanks.
> Dave.
> 

Some other comments, if you are using SSL, you can drop cram-md5 as auth mech, 
it's not storage-safe.

you should use mail_location = maildir:~/maildir:LAYOUT=fs

to avoid your other things in user's home being interprepted as mail 
directories.

why are you setting these?
maildir_broken_filename_sizes = yes
maildir_empty_new = yes
maildir_very_dirty_syncs = yes

and in general I see lots of overconfiguring, dovecot defaults are usually 
right, and setting various things just for the fun of it, can cause problems.

Aki


several misc questions, public folders and sharing, quota, ssl

2017-04-13 Thread David Mehler
Hello,

I'm running dovecot 2.29 on a freebsd 10.3 system. I'm wanting to
optimize how the system is running and have a few misc questions.

First ssl, is my cipher list good? I'm trying for pfs and wanting to
ensure these cipherlist is appropriate:

ssl_cipher_list = EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH

Next, a new feature that I'm trying for is virtual folders that store
All messages. My understanding of this is that it stores a version of
every received message in one place? I've got the virtual plugin
loaded and have:

  mailbox virtual/All {
comment = All my messages
special_use = \All
  }

I've got a directory /home/vmail/example.com/username/virtual under
which is an ALL folder both directories are accessible to the vmail
user, yet there's no contents in this folder and it's showing up
nowhere.

Next, quota warnings, are not being sent at all. I set up a testuser
with a quota of 2 mb, then sent a message to that user getting the box
to 95% full, and no message. Took the user overquota with the next
message, still nothing, and a third message did trigger my custom
quota exceeded message and the message was bounced.

 I'm wanting to implement public folders. My mailboxes are all
virtual, and they are stored under /home/vmail/example.com/username
and /home/vmail/example.org/username in the maildir format. I've got
one user uid and gid of 999 name of vmail who owns all the mailboxes.
I've separated out public folders storing them under
/home/vmail/public. I've created one mailbox called TestFolder and
new, cur, and tmp directories under it. This is what it looks like:

ls -la /home/vmail/public
total 24
drwx--  4 vmail  vmail  512 Apr 13 18:23 ./
drwx--  8 vmail  vmail  512 Mar 15 10:34 ../
drwxr-xr-x  5 vmail  vmail  512 Apr 13 18:16 TestFolder/
drwxr-xr-x  5 vmail  vmail  512 Apr 13 18:25 TestFolder1/
-rw---  1 vmail  vmail8 Apr 13 18:15 dovecot-uidvalidity
-r--r--r--  1 vmail  vmail0 Apr 13 18:15 dovecot-uidvalidity.58eff89a
-rw---  1 vmail  vmail  688 Apr 13 18:24 dovecot.list.index.log

ls -la /home/vmail/public/TestFolder
total 28
drwxr-xr-x  5 vmail  vmail  512 Apr 13 18:16 ./
drwx--  4 vmail  vmail  512 Apr 13 18:23 ../
drwxr-xr-x  2 vmail  vmail  512 Apr 13 18:13 cur/
-rw-r--r--  1 vmail  vmail   51 Apr 13 18:16 dovecot-uidlist
-rw-r--r--  1 vmail  vmail  304 Apr 13 18:16 dovecot.index.log
drwxr-xr-x  2 vmail  vmail  512 Apr 13 18:13 new/
drwxr-xr-x  2 vmail  vmail  512 Apr 13 18:13 tmp/

ls -la /home/vmail/public/TestFolder1
total 20
drwxr-xr-x  5 vmail  vmail  512 Apr 13 18:25 ./
drwx--  4 vmail  vmail  512 Apr 13 18:23 ../
drwxr-xr-x  2 vmail  vmail  512 Apr 13 18:25 cur/
drwxr-xr-x  2 vmail  vmail  512 Apr 13 18:25 new/
drwxr-xr-x  2 vmail  vmail  512 Apr 13 18:25 tmp/

The public/TestFolder is showing up fine and I can switch to it. The
public/TestFolder1 is not showing up at all so I'm not seeing it and
can't switch to it. Any ideas?

My second question involves public folders and domain sharing. Are
public folders accessible to all users and all domains? I've got two
domains example.com and example.org i'd like to create a folder that
some users in example.com can share with some users in example.org,
not necessarily all users in those domains should be able to see the
folders.

Ideas welcome.

Thanks.
Dave.

doveconf -n
# 2.2.29 (13ebc01): /usr/local/etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.18 (29cc74d)
# OS: FreeBSD 10.3-RELEASE-p11 amd64  ufs
auth_cache_size = 8 k
auth_default_realm = example.com
auth_mechanisms = plain login cram-md5
auth_realms = example.com example.org
auth_socket_path = /var/run/dovecot/auth-userdb
dict {
  sqlquota = mysql:/usr/local/etc/dovecot/dovecot-dict-sql.conf.ext
}
disable_plaintext_auth = no
first_valid_gid = 999
first_valid_uid = 999
hostname = mail.example.com
imap_client_workarounds = delay-newmail tb-extra-mailbox-sep tb-lsub-flags
last_valid_gid = 999
last_valid_uid = 999
lda_mailbox_autocreate = yes
lda_mailbox_autosubscribe = yes
listen = 127.0.0.1 xxx.xxx.xxx.xxx
mail_fsync = never
mail_gid = vmail
mail_home = /home/vmail/%d/%n/home
mail_location = maildir:/home/vmail/%d/%n:LAYOUT=fs
mail_plugins = acl mail_log notify quota trash virtual welcome zlib
mail_server_admin = mailto:postmas...@example.com
mail_uid = vmail
mailbox_list_index = yes
maildir_broken_filename_sizes = yes
maildir_empty_new = yes
maildir_very_dirty_syncs = yes
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope
encoded-character vacation subaddress comparator-i;ascii-numeric
relational regex imap4flags copy include variables body enotify
environment mailbox date index ihave duplicate mime foreverypart
extracttext imapflags notify imapsieve vnd.dovecot.imapsieve
namespace {
  hidden = no
  list = yes
  location = 
maildir:/home/vmail/public/:LAYOUT=fs:CONTROL=/home/vmail/public/:INDEX=/home/vmail/public/
  prefix = public/
  separator = /
  subscriptions = yes
  type = public