Dovecot shared mailboxes (the correct way)

I’ve just implemented shared mailboxes in dovecot (which rocks, btw). It isn’t difficult, but I don’t think it’s very well documented

The preferred way to do this is with IMAP Namespaces. My natural approach would be to create something like a Maildir tree /srv/mail/shared, and make this the “public” namespace. Then set filesystem permissions on subtrees of that, to define who can see what. Unfortunately, dovecot uses strict Maildir++, and won’t let you create mailboxes inside each other (on the filesystem) /Foo/Bar is stored as a Maildir called .Foo.Bar, so subtrees don’t exist, so this isn’t an option. The up-comming dbox format should allow something like this, but it isn’t usable yet.

My solution was to create multiple namespaces. One for each shared mailbox. Users are given permission to use them via file-system permissions (i.e. group membership), example:

# Default namespace, needed if you add namespaces
namespace private {
    prefix =
    separator = /
    index = yes
}
# Office inbox, available to receptionists, office managers, and directors:
namespace public {
   prefix = office/
   separator = /
   location = maildir:/srv/mail/office/.Maildir:CONTROL=~/.Maildir/control/office:INDEX=~/.Maildir/index/office
   hidden = no
}
# Umask for shared folders
umask = 0007

Setting CONTROL and INDEX mean that dovecot’s metadata is stored in the user’s personal Maildir, so users who don’t have permission to see the shared mailbox don’t get errors.

The permissions of the mailbox should be done as follows:

# touch /srv/mail/office/dovecot-shared
# chown -R mail.office-mailbox /srv/mail/office
# find /srv/mail/office -type d -print0 | xargs -0 chmod 2770
# find /srv/mail/office -type f -print0 | xargs -0 chmod 660

If you want a common subscription list, you have to manually symlink:

# ln -s /srv/mail/office/subscriptions ~luser/.Maildir/control/office/

Seems to work well. (at least with thunderbird)

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Thank you! I made shared mailb

Thank you! I made shared mailbox :-D

Can you help me? Sorry for my

Can you help me? Sorry for my english, i'm russian ;-)
I have this situation:

I want migrate server to debian + dovecot

  • users info@... and test@... made
  • user test@... can use shared mailbox account info@...

But! How to make the user test@... to send a letter on behalf of the user info@...?

Thank you!

denvist: That's up to your e-m

denvist: That's up to your e-mail client. You can tell it you are sending from any address you want.

Mozilla Thunderbird supports multiple identities quite nicely, if that's what you are looking for.

can you tell me: what is bette

can you tell me: what is better for imap mbox or maildir?

About shared mailbox: "Public

About shared mailbox:

"Public Folders Concepts and Applications with MDaemon 6.0.
Group Inboxes
Customer service organizations often use group inboxes to receive email requests. Everyone in the customer service group has read and write access to the collective incoming mailbox. In this manner, anyone in the group can respond to each incoming email."

Can i made this in dovecot?

denvist: Yes. maildir is prob

denvist: Yes.

maildir is probably better, unless you are likely to run short of inodes.

sorry, but maybe you can help

sorry, but maybe you can help me?
i can made shared mailbox, everything work perfect! But how create group inbox? I can't understand =(

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.