This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
fuss:dovecot [2017/09/06 06:41] – office | fuss:dovecot [2020/03/28 19:43] – [Enable METADATA Capability] office | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Migrate Between Mailbox Formats ====== | ||
+ | As Dovecot supports multiple mailbox formats, it is useful to be able to convert or synchronise between them. | ||
+ | |||
+ | For example, to convert from '' | ||
+ | < | ||
+ | mail_location=maildir: | ||
+ | </ | ||
+ | |||
+ | in the Dovecot configuration (''/ | ||
+ | < | ||
+ | separator = / | ||
+ | </ | ||
+ | |||
+ | after which for every mailbox / user to migrate, you would run the command: | ||
+ | <code bash> | ||
+ | dsync -u username mirror mbox: | ||
+ | </ | ||
+ | |||
+ | where '' | ||
+ | |||
+ | Sometimes folders fail to sync with '' | ||
+ | <code bash> | ||
+ | dsync -u username mirror -m maps mbox: | ||
+ | </ | ||
+ | |||
+ | in order to just sync the '' | ||
+ | |||
+ | ====== Automatically Create Folders for Compatibility ====== | ||
+ | |||
+ | If you install RoundCube or SquirrelMail you may notice that some of the default folders have not been created in which case you can solve the issue by enabling the '' | ||
+ | |||
+ | Edit ''/ | ||
+ | < | ||
+ | mail_plugins = $mail_plugins autocreate | ||
+ | </ | ||
+ | |||
+ | then, at the end of the ''/ | ||
+ | < | ||
+ | # Automatically create folders for compatibility | ||
+ | plugin { | ||
+ | autocreate = Trash | ||
+ | autocreate2 = Junk | ||
+ | autocreate3 = Drafts | ||
+ | autocreate4 = Sent | ||
+ | autosubscribe = Trash | ||
+ | autosubscribe2 = Junk | ||
+ | autosubscribe3 = Drafts | ||
+ | autosubscribe4 = Sent | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ====== Increase DH Group for Logjam ====== | ||
+ | |||
+ | Edit ''/ | ||
+ | < | ||
+ | ssl_dh_parameters_length = 2048 | ||
+ | </ | ||
+ | |||
+ | followed by '' | ||
+ | |||
+ | ====== Enable IMAP Compress ====== | ||
+ | |||
+ | To enable [[http:// | ||
+ | < | ||
+ | mail_plugins = zlib | ||
+ | </ | ||
+ | |||
+ | This change is only required for Dovecot 2.1 and above. | ||
+ | |||
+ | After that, edit ''/ | ||
+ | < | ||
+ | protocol imap { | ||
+ | mail_plugins = $mail_plugins imap_zlib | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | and restart Dovecot. | ||
+ | |||
+ | ====== Disable POODLE, FREAK/ | ||
+ | |||
+ | Edit ''/ | ||
+ | < | ||
+ | ssl_protocols = !SSLv2 !SSLv3 !TLSv1 | ||
+ | </ | ||
+ | |||
+ | and specify secure strong ciphers: | ||
+ | < | ||
+ | ssl_cipher_list = ALL: | ||
+ | </ | ||
+ | |||
+ | as well as enabling the server-side cipher list only: | ||
+ | < | ||
+ | ssl_prefer_server_ciphers = yes | ||
+ | </ | ||
+ | |||
+ | ====== Enable Hardware Cryptography ====== | ||
+ | |||
+ | In case your machine contains a cryptographic module, you can run most of the cryptographic tasks through the module. To find out which hardware engines are available, issue: | ||
+ | <code bash> | ||
+ | openssl engine | ||
+ | </ | ||
+ | |||
+ | For instance, the output may be: | ||
+ | < | ||
+ | (rsax) RSAX engine support | ||
+ | (rdrand) Intel RDRAND engine | ||
+ | (dynamic) Dynamic engine loading support | ||
+ | </ | ||
+ | |||
+ | the '' | ||
+ | |||
+ | To use '' | ||
+ | < | ||
+ | ssl_crypto_device = rdrand | ||
+ | </ | ||
+ | |||
+ | and reload dovecot. | ||
+ | |||
+ | Usually, the configuration file that contains this directive already can be found at ''/ | ||
+ | |||
+ | ====== Enable NOTIFY ====== | ||
+ | |||
+ | To enable IMAP NOTIFY as per RFC5465, also required for the notify extension, edit ''/ | ||
+ | |||
+ | ====== Enable METADATA Capability ====== | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | For instance, one would specify: | ||
+ | < | ||
+ | mail_attribute_dict = file: | ||
+ | </ | ||
+ | in order to place a file named '' | ||
+ | |||
+ | Next, enable IMAP METADATA by editing ''/ | ||
+ | < | ||
+ | protocol imap { | ||
+ | # METADATA extension (RFC 5464)] | ||
+ | imap_metadata = yes | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ====== Create Public Broadcast Mailbox for All Users ====== | ||
+ | |||
+ | Sometimes it is useful to have a public mailbox that is accessible by all users where messages can be placed that are of public interest. For instance, company news, mail orders, server settings, or various notifications could be stored inside the mail server itself and conveniently accessed by all users. | ||
+ | |||
+ | The following example creates a public mailbox in '' | ||
+ | |||
+ | In effect, this " | ||
+ | |||
+ | Edit '' | ||
+ | < | ||
+ | # Public mailbox | ||
+ | namespace { | ||
+ | type = public | ||
+ | prefix = Support/ | ||
+ | location = mbox:/ | ||
+ | subscriptions = yes | ||
+ | list = children | ||
+ | |||
+ | mailbox " | ||
+ | auto = subscribe | ||
+ | } | ||
+ | |||
+ | mailbox "Mail Orders" | ||
+ | auto = subscribe | ||
+ | } | ||
+ | } | ||
+ | |||
+ | </ | ||
+ | where: | ||
+ | * '' | ||
+ | * all '' | ||
+ | |||
+ | Following the example above, for the mailboxes '' | ||
+ | <code bash> | ||
+ | touch / | ||
+ | </ | ||
+ | |||
+ | |||
+ | The standard mbox format is a concatenation of raw E-Mail data separated by a single line: | ||
+ | < | ||
+ | From address@host Sat Jan 01 12:00:00 2000 | ||
+ | </ | ||
+ | that describes when the mail was stored. All other standard E-Mail header fields (ie: '' | ||
+ | |||
+ | For example, the ''/ | ||
+ | < | ||
+ | From support@localhost Sat Jan 01 12:00:00 2000 | ||
+ | From: " | ||
+ | Subject: New Backup Server | ||
+ | To: support@server.tld | ||
+ | |||
+ | We have a new backup server! | ||
+ | |||
+ | Cheers, | ||
+ | admin | ||
+ | |||
+ | From support@localhost Sat Jan 01 12:00:00 2000 | ||
+ | From: " | ||
+ | Subject: The Server is Down! | ||
+ | To: support@server.tld | ||
+ | |||
+ | The backup server does not work anymore, please do not use it. | ||
+ | |||
+ | Cheers, | ||
+ | admin | ||
+ | </ | ||
+ | |||
+ | and will appear as two separate mails under the '' | ||
+ | |||
+ | The ''/ |