IRedMail/FAQ/Share.IMAP.Folder

From iRedMail

(Difference between revisions)
Jump to: navigation, search
(Test shared folder)
(Test shared folder)
Line 56: Line 56:
. OK [... ACL ..] Logged in
. OK [... ACL ..] Logged in
-
. SETACL Sent testing@domain.ltd rli           # <- Type this. Share folder 'Sent' to user testing@domain.ltd, with permissions: read (r), lookup (l) and insert (i).
+
. SETACL Sent testing@domain.ltd rli     # <- Type this. Share folder 'Sent' to user testing@domain.ltd, with permissions: read (r), lookup (l) and insert (i).
. OK Setacl complete.
. OK Setacl complete.
^]                                      # <- Press 'Ctrl + ]' to exit telnet.
^]                                      # <- Press 'Ctrl + ]' to exit telnet.
Line 76: Line 76:
| from_user    | to_user      | dummy |
| from_user    | to_user      | dummy |
+--------------+--------------+-------+
+--------------+--------------+-------+
-
| www@a.cn     | testing@a.cn | 1    |
+
| from@domain.ltd     | testing@domain.ltd | 1    |
+--------------+--------------+-------+
+--------------+--------------+-------+
</pre>}}
</pre>}}

Revision as of 06:28, 29 March 2011

Contents


Note:

  • Mailbox sharing related settings are configured by default in iRedMail-0.7.0, you just need to enable acl plugins in dovecot.conf, section "protocols lda {}" and "protocol imap {}".
  • Not all companies will allow user to share mailboxes, it may leak confidential information, so this feature is disabled by default.

Summary

With Dovecot-1.2, it's possible to share your IMAP folders to other users. This article describes:

  • How to enable mailbox sharing in Dovecot
  • How to enable mailbox sharing in Roundcube webmail.
  • How to test mailbox sharing with telnet


Note:

  • For Roundcube user, there's a plugin available for roundcube-0.5, it's easy to let user manage their mailbox sharing.
  • For Thunderbird user, there's a add-on available too.

You can find links in Reference section.

Requirements

  • iRedMail-0.7.0 or later versions.

Some explainations:

  • iRedMail-0.7.0 ships dovecot-1.2, with all share folder related settings configured. But share folder is disabled by default.
  • Roundcube webmail in iRedMail-0.7.0 works with share folder by default. There's no addition change required.

Configure Dovecot

With iRedMail-0.7.0 or later versions, what we need to do is just enable ACL plugins to provide folder sharing.

  • Edit /etc/dovecot.conf (RHEL/CentOS) or /etc/dovecot/dovecot.conf (Debian/Ubuntu/openSUSE) or /usr/local/etc/dovecot.conf (FreeBSD), add ACL plugins in section "protocol lda {}" and "protocol imap {}":
File: dovecot.conf
protocol lda {
    mail_plugins = ... acl
}

protocol imap {
    mail_plugins = ... acl imap_acl
}

Test shared folder

Please restart dovecot after you modified its config file.

To test shared folder, I will share my (from@domain.ltd) 'Sent' folder to my colleague 'testing@domain.ltd'.

Steps:

  • Set a share folder with telnet.
Terminal:
# telnet localhost 143                   # <- Type this.
* OK [...] Dovecot ready.

. login from@domain.ltd passwd           # <- Type this. Login with my email address and plain password.
. OK [... ACL ..] Logged in

. SETACL Sent testing@domain.ltd rli      # <- Type this. Share folder 'Sent' to user testing@domain.ltd, with permissions: read (r), lookup (l) and insert (i).
. OK Setacl complete.
^]                                       # <- Press 'Ctrl + ]' to exit telnet.
telnet> quit
  • Log into roundcube webmail with account testing@domain.ltd. And you can see the shared folder. See screenshot here


Some more details:

  • After you shared folder with 'SETACL' command, dovecot will insert a record in MySQL database.
    • With OpenLDAP backend, it's stored in iredadmin.share_folder.
    • With MySQL backend, it's stored in vmail.share_folder.
Terminal:
# mysql -uroot -p
mysql> USE vmail;
mysql> SELECT * FROM share_folder;
+--------------+--------------+-------+
| from_user    | to_user      | dummy |
+--------------+--------------+-------+
| from@domain.ltd     | testing@domain.ltd | 1     |
+--------------+--------------+-------+

References

Personal tools